Bob216
07-13-2005, 04:00 AM
Hi there all, it's me Bob again. I have this problem. For those of you know shockwave rules, basically what I am tring to do is constrain my character's eyes to its head. Like I have seen in other posts and tutorials, I see you're suppose to use the point constraints in Maya. However, I notice that I can not use any of the Maya constraints at all because shockwave will just ignore them. I have also tried parenting the eye mesh to the head joint but this doesn't work either. However at least I found out why parenting a mesh to a joint doesn't work in shockwave and I will explain down below before I ask my question.
First off, to make sure we are in the same path, normally when you create a polygon surface in maya, there are 2 nodes that are created. The first node is a transform node, and the second node is a shape node which I belive the transform node holds the transformation info, and the shape node holds the mesh info as well as the shader info.
Now if I was to just export this one poly surface with no bones skinned to it, Maya will export both the transformation node and shader node as one node in shockwave (that is if shockwave even calls these things nodes). For example lets say I create a poly sphere for an eye ball, and I name the transform node rightEyeBallTransform. I then name the shape node rightEyeBallShape. When I export this eyeball, and import it to Director, the eyeball shows up as rightEyeBallTransform but the properties of the rightEyeballShape node gets added to the rightEyeBallTransform and the shape node is then deleted. So in other words, when you look at all of the eyeball's properties in Director, the shader, the mesh, who is it parent to, and it's coordinates properties are all in one big node called eyeBallTransform.
However, lets say this time I also create a sphere to be the character's head. I name the transform node headTransform, and I name the shape node headShape. I then create 2 joints called headJoint, and rightEyeBallJoint. I then skin only the head mesh to the root joint called headJoint. Then I parent the rightEyeball mesh to the rightEyeBallJoint, and then export it to shockwave. Now here comes to the reason why this doesn't work. What happesn is first both the headTransform node and the headShape node are moved to a new node called headJoint-skeleton. This node has everything. And I mean everything, the bones, the mesh, the shaders, who is it parent to, the bones transformation properties, the mesh transformation properties, and the count of how many bones in total there are connected to this node. In addition, while in Maya you can't re-parent the eyeball mesh to this headJoint-skeleton node because Maya doesn't create this node but yet shockwave does. So in other words, in shockwave, both the rightEyeBallJoint and the rightEyeBallTransform nodes are parented together but these nodes are now useless because evething is on the headJoint-skeleton node. So if I can't use constraints and I can't parent the eye mesh to the eye joint in Maya, then how am I suppose to constrain these stupid eyes to the head? I know it can be done because I seen it done here (http://www.sticky3d.com/demos/%20gromit/Gromit_001.htm) (http://www.sticky3d.com/demos/%20gromit/Gromit_001.htm)as well as what about all those Shoot-em up chararter games that allows you to pick up new weapons etc.
First off, to make sure we are in the same path, normally when you create a polygon surface in maya, there are 2 nodes that are created. The first node is a transform node, and the second node is a shape node which I belive the transform node holds the transformation info, and the shape node holds the mesh info as well as the shader info.
Now if I was to just export this one poly surface with no bones skinned to it, Maya will export both the transformation node and shader node as one node in shockwave (that is if shockwave even calls these things nodes). For example lets say I create a poly sphere for an eye ball, and I name the transform node rightEyeBallTransform. I then name the shape node rightEyeBallShape. When I export this eyeball, and import it to Director, the eyeball shows up as rightEyeBallTransform but the properties of the rightEyeballShape node gets added to the rightEyeBallTransform and the shape node is then deleted. So in other words, when you look at all of the eyeball's properties in Director, the shader, the mesh, who is it parent to, and it's coordinates properties are all in one big node called eyeBallTransform.
However, lets say this time I also create a sphere to be the character's head. I name the transform node headTransform, and I name the shape node headShape. I then create 2 joints called headJoint, and rightEyeBallJoint. I then skin only the head mesh to the root joint called headJoint. Then I parent the rightEyeball mesh to the rightEyeBallJoint, and then export it to shockwave. Now here comes to the reason why this doesn't work. What happesn is first both the headTransform node and the headShape node are moved to a new node called headJoint-skeleton. This node has everything. And I mean everything, the bones, the mesh, the shaders, who is it parent to, the bones transformation properties, the mesh transformation properties, and the count of how many bones in total there are connected to this node. In addition, while in Maya you can't re-parent the eyeball mesh to this headJoint-skeleton node because Maya doesn't create this node but yet shockwave does. So in other words, in shockwave, both the rightEyeBallJoint and the rightEyeBallTransform nodes are parented together but these nodes are now useless because evething is on the headJoint-skeleton node. So if I can't use constraints and I can't parent the eye mesh to the eye joint in Maya, then how am I suppose to constrain these stupid eyes to the head? I know it can be done because I seen it done here (http://www.sticky3d.com/demos/%20gromit/Gromit_001.htm) (http://www.sticky3d.com/demos/%20gromit/Gromit_001.htm)as well as what about all those Shoot-em up chararter games that allows you to pick up new weapons etc.
