Old-school trick for 3D effect
Posted: Fri Dec 23, 2005 12:12 am
Since this topic comes up quite a lot, I'd like to share a simple old school game technique for making psuedo-3D characters.
The basic idea
1. Separate your character into small component parts (e.g. head, iris, pupil, etc.)
2. Build each part in a separate vector layer
3. Move each layer's depth (Z translation) so that the center of the layer is where it would be if your character was actually 3D.
4. Use "Rotate to face camera" and "sort by depth" on each vector layer.
This effect is not for everything, there are a lot of little caveats and bones are right out (in general), but there is the definate advantage of only having to do the animation from one angle. And since there is no point animation, it should be fairly Flash friendly.
There is the additional problem of Moho's "rotate to face camera" option is calculated (Sorry LM...) completely wrong IMO. So if you are using Moho's renderer (We're not here, so it's not so much a problem for us.) you will see the most problems as either the layer or camera rotates about the x axis.
To give you the idea visually:
Character built with separate layers in their proper depths
http://crashcore.com/public/moho/exampl ... facing.swf
http://crashcore.com/public/moho/exampl ... acing.moho
Character with vector layers set to face camera
http://crashcore.com/public/moho/exampl ... facing.swf
http://crashcore.com/public/moho/exampl ... acing.moho
Here's hoping this helps someone!
NOTE: These files are provided for informational purposes only.
The basic idea
1. Separate your character into small component parts (e.g. head, iris, pupil, etc.)
2. Build each part in a separate vector layer
3. Move each layer's depth (Z translation) so that the center of the layer is where it would be if your character was actually 3D.
4. Use "Rotate to face camera" and "sort by depth" on each vector layer.
This effect is not for everything, there are a lot of little caveats and bones are right out (in general), but there is the definate advantage of only having to do the animation from one angle. And since there is no point animation, it should be fairly Flash friendly.
There is the additional problem of Moho's "rotate to face camera" option is calculated (Sorry LM...) completely wrong IMO. So if you are using Moho's renderer (We're not here, so it's not so much a problem for us.) you will see the most problems as either the layer or camera rotates about the x axis.
To give you the idea visually:
Character built with separate layers in their proper depths
http://crashcore.com/public/moho/exampl ... facing.swf
http://crashcore.com/public/moho/exampl ... acing.moho
Character with vector layers set to face camera
http://crashcore.com/public/moho/exampl ... facing.swf
http://crashcore.com/public/moho/exampl ... acing.moho
Here's hoping this helps someone!
NOTE: These files are provided for informational purposes only.