redmotion: 2009

07 November 2009

Kill It Kid

I don't care - this has nothing to do with CGI, Softimage or my stuff but I'm going to plug 'em anyway. I love their music and I've seen them live 3 times at various places in London (and wished them luck in person on the day they got signed to One Little Indian records). Their music is beautiful and I think they're getting some momentum this year with the release of their debut album and I hope they make it big. They deserve to, their song writing is amazing.

Buy their album here  or here or here or somewhere else!

31 October 2009

Unity is now FREE

I've been looking into Unity recently and was seriously considering purchasing the Indie version, primarily because of its ability to run in a browser, but also because projects can be deployed easily to PC, Mac, Wii and even i-phone. And now with the release of version 2.6, it's been announced that the Indie version is now FREE to use. (The indie version was a cheaper stripped down version with a commercial license.)

Unity also features an excellent asset pipeline integration. While many engines make getting art assets into them a real pain, Unity works well. Assets are exported to project folders and unity converts them for you. Updating everything so you can focus on scripting, art and level design. It even has a well integrated physics engine and level/terrain editor. Even the documentation is pretty good.

With this announcement, its certainly the best low budget 3d game engine on the market and definitely worth a look.

24 October 2009

Alternative to bevel

I say don't use the bevel. At all. Instead:

1. Press plus (numpad "+") to work in subdivision mode from the get go. (Times 2 if your computer can cope with it).

2. For the working viewport, go to the Camera Visibility (shift + S) > Attributes tab and turn on Polymesh hulls

3. Goto shaded mode.

4. Use split edge to create tighter edges on the subdivided mesh.

5. What defines the sharpness of the sub-d models edge is the distance the second edge or "inner" edge is to outer edge. So in the image above you can see that in the lower viewport, the left side has a second/inner edge causing a tighter curve while the right side is much softer.

6. With this technique using inset on an single polygon can have a similar result as using bevel. However, I recommend just using split edge and subdivide edges evenly.

Softimage 2010 SP1: dxfimporter and sunposition updated

Get the v2010 SP1 compiles of the:

DXFimporter plugins here

Sunposition plugins here

10 October 2009

RTCompound: Architectural Framebuffers Compound

This is a rendertree compound that splits up the Architectural Shader over ALL the framebuffer channels. Something similar has been done but I thought I'd try it myself anyway.

What I've also done is created a couple of simple scripts that set up ALL the required channels so that all you need to do is plug in the RM_Architectural Splitter and hook it up like a normal mia_architecture node and your ready to render out a pass on floating point or non-floating point channels.

Lastly, I've left the names of the mia parameters as they are so its easier to cross reference with the param names in Mental Images Architectural Shaders manual.

Download here.

04 October 2009

Convex collision mesh creation with Stanhull/Softimage

I use a number of scripts for speeding up the creation of collision boxes for Valves SMD exporter in Softimage. The process I follow is laid out below:

First you will need to download this file. Its called Stanhull. It's a simple program that spits out an obj file containing a convex mesh based on an input mesh (inside an .obj file). Extract and place in a folder of your choice. If you don't want to edit the script below use the path: C:\3d\Stanhull\ 

1. Create your physbox model components. I do this by breaking up the original model into roughly convex forms. You are limited to the number of these by default (to 16 I think) but you can overide the limit with a line in your .qc file. The $maxconvexpieces QC command can increase this.

2. Select the new convex model pieces and run the convex script:
    'Objdir = the directory you want the exported Obj to go to (change if you wish)
        Objdir = "C:\3d\Stanhull\"
        'StanhullDir = the directory you have put stanhull.exe in (change if you wish)
        StanhullDir = "C:\3d\Stanhull\"
        'NOTE: file is always created in the Softimage\version xx\Application\bin dir and always called hull.obj
        fileOutLoc = Application.InstallationPath( siFactoryPath ) & "\Application\bin\hull.obj"
        set list = GetValue( "SelectionList" )
        if list.count = 0 then
               MsgBox "Please select at least one polymesh object first!!"
               for each item in list
                  name =
                  if item.type = "polymsh" then
                      'select objects one by one and export
                     SelectObj name, , True
                     getObjname = Objdir & "convert.obj"
                     ObjExport getObjname, , , , , , , , , , 0, False, , , False
                     'set up s.ystem command to run Stanhull.exe
                     cmd = StanhullDir & "StanHull " & getObjname & " -t"   
                     cmdResult = s.ystem( cmd )
                     set inObj = ObjImport( fileOutLoc, 1, 0, True, True, False, True )
                     'select new object and set up geometry approximation as needed for .phy SMDs
                     SelectObj inObj, , True
                     MakeLocal inObj & ".geomapprox", siDefaultPropagation
                     SetValue inObj & ".geomapprox.gapproxmoad", False
                     CreateProjection , siTxtCubic, siTxtDefaultCubic, , "Texture_Projection"
                     end if
            end if

3. Now with the new convex imported back in, select them and remove automatic discontinuity from them all with the following script:
dim name
set list = GetValue( "SelectionList" )
if list.count = 0 then
   MsgBox "Please select at least one polymesh object first!!"
'start rendermap make routine - depending on scene size and object complexity this could take a while... :)
   for each item in list
      name =
      if item.type = "polymsh" then
         SelectObj name, , True
         MakeLocal ".geomapprox", siDefaultPropagation
         SetValue ".geomapprox.gapproxmoad", False
         end if
end if

4. Lastly, I apply cubic UVs to all of the physics box objects by selecting them and running this script (below). Once frozen, they are ready for exporting as SMD files for compiling.
dim name
set list = GetValue( "SelectionList" )
if list.count = 0 then
   MsgBox "Please select at least one polymesh object first!!"
'start rendermap make routine - depending on scene size and object complexity this could take a while... :)
   for each item in list
      name =
      if item.type = "polymsh" then
         SelectObj name, , True
         CreateProjection , siTxtCubic, siTxtDefaultCubic, , "Texture_Projection"
         end if
end if

freeze ALL. (You may need to add an image to the material).

03 October 2009

New Ultimapper Options in Softimage 2010

Softimage 2010 has new Ultimapper options: now supporting the creation of bent normal maps, plus the full arrange of Ambient Occlusion shader options.

I did a quick test to see the differences between the available settings. The above image shows the resultant maps from the 4 combinations of options and on the image below how they look applied to the low resolution object in Open GL preview.


In this case, bent normals seem a lot smoother while the binormals map seems to result in a closer approximation from hi to low res sources in this case. The drawback with bent normals is they render twice as slow. However, I'm pretty sure that there is a case for each of these solutions out there.

24 September 2009

23 September 2009

Colorspace/Physically correct colours in Softimage

I've noticed two blogs recently post tips on how to get physically correct texture colours when rendering indirect illumination (and using physical sky/sun shaders)

Further discussion, etc about here:

Isolating individual scene objects per pass

This is a pass setup I came up with to address a question posted here.

Basically, the query was how to remove individual elements from a pass but still have their reflection appear on other objects. So, in the image above the blue sphere is rendered in the reflections of the grey sphere, but is invisible in the pass.

Basic Setup: All the materials in scene should have a raytype switch plugging into the material node and the rest of the material tree plugging into all ports of the raytype node.

Then in your new pass partition you add an overide property and add the material-Ray_Type-eye parameter to it.

Press 7 with the overide selected and plug a constant shader with 0 for everything including Alpha into the overide node.

You can then drag and drop any objects you like into the "hide" partition and have them not rendered in primary but still appearing in reflections without having to tweak all their rendertrees seperately.


Of course, this still leaves the guy who asked the question with 70 individual passes, so a setup using renderchannels must be preferable:

For every single material you can add a Store Color in channel node between the material node and the material tree and create a new render channel with a name like "blue". Then in the render region pick the channel.

In render manager > pass > Output - add all the new channels to the Render Channels Output list. The advantage is, of course that each individual renderchannel image gets rendered during a single pass.

With a combination of both methods you can break down the scene into its seperate parts by rendering a single multi-channel pass and then create passes as needed to isolate and re-render material changes as required.

18 September 2009

dxf importer 2010

I've recompiled the dxfimporter 23 & 3d for Softimage 2010.
Get them from the usual place, here.

06 September 2009

Bot Walk 2

Slightly different take on the bot walk. From scratch again, this time I tried to match the rig motion with foot motion, so it travels forwards and the feet sit on the ground. Again, only 29 frames...

05 September 2009

Bot Walk 1

My second go at creating a walk cycle using a premade, free to use character rig from (formerly known as

29 August 2009

Architectural modeling tools

Archtools for Softimage demostration from Jason Wells on Vimeo.

V2 released

Fixed Polygon Cam (new) - create a view perpendicular to an arbitary polygon

Draw and size Cube, Box, Cylinder, Sphere, Cone, etc standard primitives in viewport

-transform tools-
4 point rotate
2 point transform
3 point scale
mirror about 2 points (new)
align objects by 2 polygons (new)
align object - polygon to edge (new)
aligh object to polygon (new)

Limitations: these do not work correctly on enveloped meshes unfortunately.

-measuring property-
Apply to scene root and measure distances - automatically converted to scales like mm, cm.

Download from here

02 August 2009

New Archviz Website

Just set up a new Archviz website. I've tried to keep it simple.

You can find it here.

09 June 2009

New IES Light plugin

wombat778 is currently letting people test his new IES light plugin for Softimage at xsibase here.

I've not tried it yet but it looks promising.

New Softimage Community Forum

Since Autodesk's "The Area" took over from the SI community website, it seems that people are pretty unhappy about using the site - it is, afterall, pretty horrible to look at and a nightmare to navigate.

Anyway, while I think it was initially established as a backlash to "The Area", a new Softimage Community forum is now thriving. It's simple and easy to use (like the old one) and it can be found here:

It seems to be thriving already. Sign up! It needs the support!

I've posted my dxf importer plug-in here for download in the Download > Plugins area:

07 June 2009

dxf importer plugin now at The Area

Due to the sad assimilation of community.softimage into the Autodesk discussion boards, I've re- uploaded the dxf importer addons to their downloads section here.

24 May 2009

Environment Art Portfolio site now up!

I've got my game art portfolio up online now - check it out here: link

I have extensive experience using Valve's source engine and some experience using the cryengine2 and unreal3 engines  (the image above is taken from the cryengine2 sandbox editor).

(If you can't view the portfolio site for any reason, please let me know. Thanks.)

12 May 2009

Cloudwright plug-in Open Alpha

This great new plug-in has arrived as an open alpha from You can download the installer from here:

What's really cool is the realtime preview from the standalone app is available in the XSI viewport by choosing the Cloudwright_directx 9 option from viewport "realtime shaders" menu. This makes previewing the overal look of the final effect amazingly fast, allowing instant feedback on most of the cloud generation parameters.

18 March 2009

dxf importer and sun position plugins updated for Softimage v7.5

Yep, to celebrate the release of Autodesk Softimage 7.5 (I still can't believe I'm writing those words :( ) I've recompiled the famous dxf import and sunpath plugins for AD's newly acquired 3d package. (Eggh!) I will continue to update this plugin until AD add these features to the program or make Softimage to expensive to upgrade - I'll release the source code in that case.

You can get the dxf importer (plus most other versions) here.

You can currently get the new sunpath plugin here. At time of writing, nothing has changed except compatability with v7.5.