realbasic-games
[Top] [All Lists]

Re: Animation and memory issue

To: REALbasic Games <realbasic-games at lists dot realsoftware dot com>
Subject: Re: Animation and memory issue
From: Frank Condello <developer at chaoticbox dot com>
Date: Sun, 24 Jul 2005 15:55:16 -0400
Delivered-to: realbasic-games at lists dot realsoftware dot com
References: <FF3D4383-F5B1-4405-A67F-BDF52954811A at miensoftware dot com> <D52AC133-DDD0-4558-8725-9508D39F6E79 at chaoticbox dot com> <0A72BE38-C202-4ED1-B09D-92236A98CD91 at miensoftware dot com>
On 24-Jul-05, at 10:16 AM, Lo Saeteurn wrote:

With declares, you should be able to do both of these in one shot by grabbing each trimesh's data with Q3TriMesh_GetData and putting a copy into a new (empty) trimesh with Q3TriMesh_SetData...

How would you create an empty trimesh and insert it into an empty Object3D?

It's a bit much to explain in an email, but if you grab my Quesa Wrappers (use the version in 3DMF Workshop if possible) it'll go something like this:

    myObject.AddShapeFromGeometry New Trimesh3D

You'd usually want to create a DisplayGroup3D first though, add trimesh(es) to that, then add the display group to the Object3D. The above code only works for models with one mesh/texture.

You can of course share one set of keyframes between all clones

You mean per animation sequence?

Not sure what you mean by "per sequence" - I view sequences as useful boundaries you place on a set of keyframes for the sake of organization, but I prefer to treat the entire set of frames as one block of data.

Currently an entire animation sequence (run, walk, jump, egc.) for a given model is shared between one shape. What I'm trying to do is share that across multiple copies of that model.

So Shape(1) might have a dozen "run" frames for example? That should be easy to share - after adding a true copy of the base model as shape 0 you can just do this for each remaining shape/sequence:

    cloneObj.AddShapeFromHandle = originalObj.GetShapeHandle(n)

To be honest, I wouldn't keep keyframes inside an Object3D or even inside Quesa - it just complicates things for no good reason and uses more memory than is needed - but if you already got it working...

Frank.
–––––––––––––––––––––––––––––––––
Open Source RB Goodies and Shareware
<http://developer.chaoticbox.com/>
<http://www.chaoticbox.com/>
–––––––––––––––––––––––––––––––––

_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>

Search the archives of this list here:
<http://support.realsoftware.com/listarchives/lists.html>

<Prev in Thread] Current Thread [Next in Thread>