Tue, Nov 26, 1:58 PM CST

Renderosity Forums / Carrara



Welcome to the Carrara Forum

Forum Coordinators: Kalypso

Carrara F.A.Q (Last Updated: 2024 Nov 21 9:55 pm)

 

Visit the Carrara Gallery here.

Carrara Free Stuff here.

 
Visit the Renderosity MarketPlace - Your source for digital art content!
 

 



Subject: Poser animation to Carrara tutorial


Krewz ( ) posted Tue, 25 November 2008 at 9:00 PM · edited Tue, 26 November 2024 at 10:58 AM

Here is a tutorial on how to get Poser animated scenes in Carrara (like the subject says). 

Every time I bring up this subject someone asks "Why not just do your scene in Carrara?"    Carrara does handle .cr2 content very well (especially with the new C7 beta) but there are still some reasons that you may want to use Poser to animate.

Poser has the walk designer, talk designer and dynamic cloth built in, no need for plugins, and it has a fast preview mode (box mode) which is handy for animating hi-poly figures with lots of morph targets (i.e. Mil figures).  I've noticed Mil figures really slow down the playback speed in Carrara.

You can keyframe walk cycles and lip syncs by hand, and some people don't mind the slow playback speed, but one thing you can't do at all in Carrara is dynamic cloth.

There is a script (http://www.daz3d.com/sections/tutorial/files/1543/Dyn_to_Morphs.zip) that can change Poser dynamic cloth into morphs which can be imported into Carrara, however Carrara cannot handle Poser IK.  Also Carrara interpolates keyframes differently than Poser does, which can mean pokethrough and other positioning oddities after scene import.

Luckily there are solutions to these things.  While Carrara can't read poser IK or interpolated keyframes, it does read keyframed Poser figures with FK very accurately.  This means that you need to keyframe every property on every bodypart on every animated figure in your scene for every frame for the entire length of your animation, turn IK off for your figures, then import the scene into Carrara.

You can do this by hand, which would be very tedious, but it is much easier to use this Python script:

#begin KeyAllFigure.py
import poser
scene = poser.Scene()

frames = scene.NumFrames()
frame = 0

while frame < frames:
    scene.SetFrame(frame)
    for eachActor in scene.CurrentFigure().Actors():
        for eachParm in eachActor.Parameters():
            returnTest = eachParm.Hidden()
            if returnTest != 1:
                eachParm.AddKeyFrame()
    frame = frame + 1
#end KeyAllFigure.py

Also this script will key everything on an actor (usefull for animated cameras, props, individual body parts, etc...):

#Begin KeyAllActor.py
import poser
scene = poser.Scene()

frames = scene.NumFrames()
frame = 0

while frame < frames:
    scene.SetFrame(frame)
    for eachParm in scene.CurrentActor().Parameters():
            returnTest = eachParm.Hidden()
            if returnTest != 1:
                eachParm.AddKeyFrame()
    frame = frame + 1
#End KeyAllActor.py

Thanks go to PhilC, as the idea for these scripts were based off of his original code posted in the Rosity PoserPython forum many months ago.

It should go without saying that you should have your poser scene exactly how you want it before keying everything, as you will have to wade through a ton of keyframes to make any adjustments.

Save (a copy of) your Poser scene, import it into Carrara, if the "pose outside limits" dialogue pops up click "leave limits on" then turn constraints off.

Lastly, after importing the scene convert the camera focal length, I eyeball it but I believe multiplying the Poser focal by 1.71 or so converts it to Carrara.  35mm in Poser translates to just about 60mm in Carrara.

I've done a few tests and this produces animations that are accurate within a few pixels between the Poser and Carrara renders, and I have a hard time telling the difference in object/figure positioning even when the two renders are laid on top of each other in a compositor.

To sum up:

  1. Get your poser scene exactly how you want it.
  2. Run the scripts to keyframe anything that is animated in your scene.  Turn all IK chains off on your figures after running the keyframe scripts.  Also, run dyn_to_morphs if you have dynamic cloth.
  3. Save (a copy of) the scene and import it into Carrara.
  4. Select leave limits on in the "limits" pop-up.
  5. Once the scene is loaded turn constraints off.
  6. Convert the camera focal from Poser to Carrara.
  7. Render using Carrara's super-fast engine.

That should take care of a lot of problems you may have trying to accurately import Poser scenes into Carrara.  I hope someone finds this useful.


GKDantas ( ) posted Wed, 26 November 2008 at 4:28 AM

Good post, I will try it after get my Poser 7 this week for half of the price.

Follow me at euQfiz Digital




Miss Nancy ( ) posted Wed, 26 November 2008 at 5:26 PM

o.k., thx Krewz for the tutorial.  very valuable info IMVHO.
poser users can also save anims as bvh to keyframe all frames, but of course
the bvh file lacks most of the pz3 file info.



Krewz ( ) posted Wed, 26 November 2008 at 8:58 PM

Quote - o.k., thx Krewz for the tutorial.  very valuable info IMVHO.
poser users can also save anims as bvh to keyframe all frames, but of course
the bvh file lacks most of the pz3 file info.

You're right that bvh's don't store things like morphs, but also whenever I try applying bvh's in poser my figure will do things like leap 30 feet into the air or get broken fingers, even when I export then import the bvh from and to the exact same figure.  Using the method above gives much more predictable results.


madriver ( ) posted Thu, 27 November 2008 at 6:40 PM

Thanks for the nice tut, Krewz. But wouldn't it be easier to just drop the animation into DS then use the Poser Export function, or if you have C7 Beta, drop the DS file into Carrara? This is assuming you don't have dynamic clothing of course...


Krewz ( ) posted Fri, 28 November 2008 at 1:50 AM

Quote - Thanks for the nice tut, Krewz. But wouldn't it be easier to just drop the animation into DS then use the Poser Export function, or if you have C7 Beta, drop the DS file into Carrara? This is assuming you don't have dynamic clothing of course...

I don't use DS very often, but like Carrara, DS can't handle poser IK. DS makes a mess of my figures' limbs when importing a scene from Poser and IK is on.


holyforest ( ) posted Wed, 03 December 2008 at 3:07 PM

Thank you for sharing, Krewz - HF

 
---------------------------------------
Holyforest,
Hundreds of shaders for Carrara


visionastral ( ) posted Fri, 26 December 2008 at 7:53 PM · edited Fri, 26 December 2008 at 7:59 PM

Thank you very much Krewz, you are saving us a LOT of time making import/export experiments :P

By the way, why not modifying the python script to automatically turn off IK, use Dyn to Morph if needed and save the whole scene to a temporary file with a common name like "POSER_EXPORT"?
This would make things much faster for everyday work.


Krewz ( ) posted Sat, 27 December 2008 at 4:37 PM

Quote - By the way, why not modifying the python script to automatically turn off IK, use Dyn to Morph if needed and save the whole scene to a temporary file with a common name like "POSER_EXPORT"?
This would make things much faster for everyday work.

Perhaps, but what you see there is the extent of my python knowledge. It took me a long time going over the poserpython manual and studying other code I found on the web -scratching my head the entire time- just to come up with those two little scripts.  I've done tiny amounts of programming before, but the python syntax gets me totally flumoxed.

I thought about a few ways to make those scripts more functional and interactive, but again I'm not really a programmer. Adding a feature to automatically turn IK off wouldn't be too hard (I don't think) but much beyond that and I'd be lost.

The keyall scripts are very bare bones but it gets the job done. If you or anyone else want to use that code for your own projects or expand up on it, please feel free to do so.


imagination304 ( ) posted Tue, 10 July 2012 at 9:30 PM

(bookmarked)


Privacy Notice

This site uses cookies to deliver the best experience. Our own cookies make user accounts and other features possible. Third-party cookies are used to display relevant ads and to analyze how Renderosity is used. By using our site, you acknowledge that you have read and understood our Terms of Service, including our Cookie Policy and our Privacy Policy.