3dsmax and b3d animation

Blitz3D Forums/Blitz3D Programming/3dsmax and b3d animation

vivaigiochi(Posted 2007) [#1]
Please refer to the scheme for this topic:


hello, i have this problem. How you can see in image i have created a simple "human" model with 4 separated mesh.
i describe they:

mesh 1: it is the body and is parented with dummy1 (pivot of model).

mesh2: it is the head it is parented with dummy1

mesh3: it is skinned with bone1 e bone2 that are parented with dummy2

mesh4: it is feet and is parented with dummy1.

Now the problem! in 3dsmax i create an animation for example a walk cycle, or a punch. well, when i see it in b3d viewer all works fine but when i export it into b3d format only mesh not skinned works fine.
can you help me? I suppose that is because mesh 3 isn't parented with mesh1 or other element but i have tried many types of link and i haven't obtained nothing of useful.


REJLA(Posted 2007) [#2]
See the following topic

http://www.blitzbasic.com/Community/posts.php?topic=68489


Beaker(Posted 2007) [#3]
If it works in b3d viewer (I presume you are using b3dpipeline?) then it should be possible to make it work in Blitz3D.

You don't describe exactly what doesn't work.

Have you tried clicking the option to 'Export: Scene Root'?

Have you tried animating the skinned part (using FindChild() or similar)?

Alternatively, you might need to export the skinned mesh part on its own, or collapse all the meshes into one.


vivaigiochi(Posted 2007) [#4]
problem is that the mesh3 that is skinned with bone is not animated. i clicking the option scene root!
i tried to animate it with findchild ( on dummy, on bones and on mesh3 itself)
please help me.


REJLA(Posted 2007) [#5]
Try exporting it without the bones and repeating the steps again.

In the case you described above, I think that you would need to animate all of the meshes individually

player=LoadAnimMesh("player.b3d")
mesh1anim=FindChild(player,"mesh1")
mesh2anim=FindChild(player,"mesh2")
mesh3anim=FindChild(player,"mesh3")
mesh4anim=FindChild(player,"mesh4")
Animate mesh1anim
Animate mesh2anim
Animate mesh3anim
Animate mesh4anim


this is assuming that the name of the meshes in max are (mesh1 through mesh4)

PS:
Have you considered merging all of the meshes into a single mesh in Max, before exporting it?


Pudding(Posted 2007) [#6]
The B3d Viewer finds all animated children under the Scene Root and animates them manually (in a similar manner to REJLA's example). The best way to export a skinned mesh, is to hide everything but a single skinned mesh, uncheck Scene Root and uncheck B3d Extensions. Then you won't have to use FindChild, and loading animation sequences etc. will work as expected.

-Pudding


Naughty Alien(Posted 2007) [#7]
Yay! Pudding, you are a livee..hehehehe..coolll...:)


vivaigiochi(Posted 2007) [#8]
ok i will try. i thing your answer are good.


IPete2(Posted 2007) [#9]
Pudding,

this helped us a lot today, many thanks. We were able to export a t - pose and then an animation sequence.

The t-pose is loaded into B3d and then each animation in turn separately loaded using loadanimseq.

This hopefully will save us a lot of time when adding same animations to differing characters (with same bones)

Thanks,

IPete2.