About Store Forum Documentation Contact
Donations:
327$/mo



Post Reply 
Art Pipeline
Author Message
ronalmb Offline
Member

Post: #16
RE: Art Pipeline
I am in the process of examining the joint and bone exporting issues in an attempt to gain a better understanding of how it works and what problems/pitfalls exist for maya teams. I would encourage other teams to share their experience and insight as well. I believe that improving the Maya-Esenthel pipeline can only help everyone.

I took test guy and added a few bones to him in Maya. Initially, I kept the joint orientation as default Y up, X to the right, and Z forward. Like so:

[Image: bones001.jpg]

Importing him into Esenthel through the OpenCollada pipeline produced a few issues -- notably I could not get the mesh of the model to appear. Putting that issue aside for the moment, I took a look at how the skeleton arrived in Esenthel:

[Image: bones002.jpg]

The bones maintain their orientation as it is in Maya. It seems the small line at the base of the bone denotes the Y-Axis, while the bone "points" in the direction of the X-Axis. This creates the illusion that they are not connected, but the parenting seems to have remained intact.

I returned to Maya and adjusted the joint orientations so that the X-Axis pointed down to the next child in the link, like so:

[Image: bones003.jpg]

The result of the export was as follows:

[Image: bones004.jpg]

Most of the bones now seem to look as I would expect them to. However, the left shoulder continues to display as if it is not connected to the main body. Also odd, the right hand doesnt point in a consistant way that the other joint orientations point. Although its XYZ match the bones of the rest of the arms, it points upward. I'm not clear as to why this is.

I also did not understand how or if this would impact things in the engine until I attempted to automatic skin/Vertex Paint Mode.

I am able to consistantly duplicate the following:

[Image: bones005.jpg]

This is with a simple bone set up, no constraints.
08-08-2011 04:27 PM
Find all posts by this user Quote this message in a reply
Esenthel Offline
Administrator

Post: #17
RE: Art Pipeline
Hi,

For the missing mesh issue - please use Autoupdate (I've uploaded fix for that, but for the moment it's only on Autoupdate, not on 7z SDK archive)

For shoulder bone in incorrect location issue - please attach source maya file, and opencollada dae file.

For crash when setting vertex skinning, please provide EE mesh+skel files, and step-by-step instructions how to reproduce the issue.
08-08-2011 05:01 PM
Find all posts by this user Quote this message in a reply
Esenthel Offline
Administrator

Post: #18
RE: Art Pipeline
I've reproduced the crash (it happens only in DX10+ editor), I will fix it in few minutes.
08-08-2011 05:16 PM
Find all posts by this user Quote this message in a reply
Esenthel Offline
Administrator

Post: #19
RE: Art Pipeline
Fix for crash is now also uploaded on Autoupdate.

After you'll send me the maya+dae files for the shoulder issue I will be able to investigate it.
08-08-2011 05:31 PM
Find all posts by this user Quote this message in a reply
ronalmb Offline
Member

Post: #20
RE: Art Pipeline
Hello.

The Autoupdate that fixes the missing mesh works. It seems to have fixed the crashing editor problem as a side effect. To get model and skeleton in, I was exporting both seperately.

The shoulder bone connection issue and the end joint orientation problems still exist. Included is the testguy file i use.

testguy/scenes/testguyBones.mb is the skeleton and mesh
testguy/DAE/testguyBones.dae is the DAE file
testguy/DAE/testguyBones.mesh and .skel are also there.

Good luck and thank you for such phenomenal response time!

Edit: I see that you released a patch and updated for the crash while I was preparing this post. I was unable to replicate the crash because you fixed it in the interim!! Speedy fast, you!


Attached File(s)
.zip  TestGuy.zip (Size: 949 KB / Downloads: 3)
(This post was last modified: 08-08-2011 05:49 PM by ronalmb.)
08-08-2011 05:44 PM
Find all posts by this user Quote this message in a reply
Esenthel Offline
Administrator

Post: #21
RE: Art Pipeline
Hi,

The issue is just about incorrect bone orientation, look on the attached images

Can you tell me what I should do in Maya so I could see the bone orientations like in your image after this line:
Quote:I returned to Maya and adjusted the joint orientations so that the X-Axis pointed down to the next child in the link, like so:



I don't know how to operate Maya wink


Attached File(s) Image(s)
       
08-08-2011 06:07 PM
Find all posts by this user Quote this message in a reply
ronalmb Offline
Member

Post: #22
RE: Art Pipeline
Absolutely!

You will first want to make sure the mesh is not visible. To do that, simply in the window you are using, go to Show-> and deselect Polygons, like so:

[Image: Example00.jpg]

Now, we need to turn on Select by component type. This is toggled up here. Red Circle shows which one we want to use for editing this. F8 is a shortcut, as so:

[Image: Example01.jpg]

You will need to select the bones. Shift+Left Click lets you choose multiple bones.

Now we need to turn on "Select Miscellaneous Component Mode". It is located here:

[Image: Example02.jpg]

You should now see the joint orientations as in my images. To select them, you select the orientation (by clicking on the Red/Green/Blue XYZ locators).

To manipulate them, you press E for the rotational tool. This lets you give the joints a new orientation.

Hope this helps!
(This post was last modified: 08-08-2011 06:33 PM by ronalmb.)
08-08-2011 06:32 PM
Find all posts by this user Quote this message in a reply
Esenthel Offline
Administrator

Post: #23
RE: Art Pipeline
Hi,

Thanks, I managed to adjust the joint rotations, however after making rotation changes, and exporting to new "test.dae" collada file, the collada output file was exactly the same as the original collada file before making the rotation changes.

Do I need to press some "apply" button to make new joint rotations working?

I mean, no matter how I rotate them, the new .dae file is always the same as the original one (I compare the files in notepad, before even importing it to EE model editor)

From first look this doesn't seem like EE issue, but rather maya/collada issue.
08-08-2011 07:09 PM
Find all posts by this user Quote this message in a reply
ronalmb Offline
Member

Post: #24
RE: Art Pipeline
I have adjusted the joint orientations (paying attention to where i placed the Ys) on the elbow and then re-exported them and it did have an affect on the way that the joints appear in Esenthel.

I did have to detach the mesh from the skeleton and then rebind it to achieve this.
The process to doing this is:

1. Choose Animate from the drop down menu at the upper left of your screen.
2. The Menu across the top will change. With the meshes selected, choose Skin->Detach Skin.
3. Adjust joints.
4. It wont be necessary to actually reattach the model to the skeleton to see the effects in Esenthel. Simply choose your joints, and export them.

I did notice that the joint parenting remains the same after the exporting process. I had to pay attention to the small little directional markers on the base of the bones -- the one that denotes the Y Axis. Those did change when i re-oriented the bones.

I'm not sure it's solely a maya\collada issue as we have regularly used Maya/Collada to import our animations into the previous engine (Multiverse) without these hiccups. Joints and animations imported without issue.
08-08-2011 08:16 PM
Find all posts by this user Quote this message in a reply
Esenthel Offline
Administrator

Post: #25
RE: Art Pipeline
Hi,

I did:
-select Mesh and Skeleton
-use the menu option "Skin\Detach" (result showed no errors)
-I rotated some joints
-select Mesh and Skeleton again
-use the menu option "Skin\Bind\Smooth Bind" (result showed no errors)
-exported using OpenCollada
and the .dae file is just the same as before rotating (no changes)
08-09-2011 01:05 PM
Find all posts by this user Quote this message in a reply
Esenthel Offline
Administrator

Post: #26
RE: Art Pipeline
I'm confirming that this issue is not EE related.

I did simple test:
use your .mb file
export it to opencollada dae
press new scene in maya
import dae file to maya

here is the result: (just like in EE)
   

From my tests before rotating the joints didn't make any effect on the .dae file, then you said I need to to detach skin, I did it, and it still didn't work, from my understanding there's some issue with rotating joints in Maya, it does not always work.

So perhaps the bones that don't import correctly into EE/Maya from collada are those that had issues with rotating joints in maya itself
08-09-2011 02:10 PM
Find all posts by this user Quote this message in a reply
ronalmb Offline
Member

Post: #27
RE: Art Pipeline
Hello,

I have attempted to repeat changing the joint orientations, and, like you, I am unable to get them to be affected any longer. I must have been in error the previous post when I thought that changing them would still have an affect.

Either changing the joint orientations had no affect or your previous mirroring fix solved that.

The engine still does not draw the parenting link from the other arm to the body although a mouse over of ShoulderL in the model editor shows that it is parented to it as illustrated below:

[Image: Example03.jpg]

The right hand bone (HandR) still baffles me. I cannot figure out why that one is being read into Esenthel pointing at such an odd angle.

[Image: bones004.jpg]

Given that the Left Hand was also off (but not to such a great extent), I suspect it has something to do with how the last bone in the link is calculated/generated/drawn when there's no child for it to point to, but I'm not good with the technicals.

I really do appreciate the time you are giving this. Last night, I gave the skeleton and animation creators of the toolset a test and I was pleasantly surprised with the ease of use. I could use those tools easily enough. I only prefer Maya in that it allows me the use of IK methods as it lets me mimic body weight when animating.

Great work smile
08-09-2011 02:36 PM
Find all posts by this user Quote this message in a reply
cmtanko Offline
Member

Post: #28
RE: Art Pipeline
hello,
Here is something I'd like to share with you guys. I think the joints can be transferred good, if we changed the default axis orientation of MAYA to Z-Up from the <preference> menu.. then rig as follow
   
then export it to EE,
   


the arm joints does look like its been parented but it works and the last joint may/may not show up as desire(I dont even care abt that) but since the last joint is never bound to the mesh, it wont create any problem... so what I think the main problem should be related with EE axis orientation or something....


Thanks,
08-10-2011 06:14 AM
Find all posts by this user Quote this message in a reply
ronalmb Offline
Member

Post: #29
RE: Art Pipeline
Thanks for the reply.

Is there a setting that makes the last joint never bind to the mesh? Or is this something that is done in maya that I'm unfamiliar with? The reason I ask is that Testguy's last joints ARE indeed bound to the mesh and have an impact - both in maya and in Esenthel, as so:

[Image: Example04.jpg]

[Image: Example05.jpg]

The joints do have an impact upon the model and although I think it's possible to animate around it in EE, I'm not sure animations brought in would react. I will need to do more testing.

I do think that how EE reads the last joints in a chain needs looking into.
08-10-2011 03:18 PM
Find all posts by this user Quote this message in a reply
Esenthel Offline
Administrator

Post: #30
RE: Art Pipeline
Please try importing the collada file back to maya, and see if the result is the same as in EE. I think it's collada/maya issue
08-10-2011 10:03 PM
Find all posts by this user Quote this message in a reply
Post Reply