Jump to content

[SOLVED] Serious bug in softimage export plugin


photo

Recommended Posts

In case some people didn't find out, the softimage plugin have a serious problem, it uses wrong tranfromation matrix to transfrom coordinate from softimage to unigine.

 

In current code, it use this transformation to map the coordinate system

MATH::CTransformation t;
t.SetRotX(90.0);
t.SetRotZ(90.0);

 

but read the manual of softimage and unigine, the both use right hand coordinate system:

post-49-0-22608700-1291603707_thumb.jpg

but the difference is that unigine use Z up, softimage use Y up, the forward direction is exactly same. so, to map softimage coordinate system to unigine, it should use this transfromation:

MATH::CTransformation t;
t.SetRotX(90.0);

 

the problem of this, is that the code writer read the manual in Principles of Operation/Virtual world structure's picture, he thought +X axis is pointing backward, and +Y axis pointing to right, that's why he need to rotate 90 degrees around Z axis.

Link to comment

please take look at this picture, these two road sign, one with material was exported from softimage, and another without material was exported from 3dsmax, their coordinate are perectly matched.

 

this should be the correct result from softimage plugin.

 

BTW, I'm using crosswalk to export from softimage to 3dsmax, that plugin was an official plugin provided by autodesk.

post-49-0-02121400-1291604112_thumb.jpg

Link to comment

please take look at this picture, these two road sign, one with material was exported from softimage, and another without material was exported from 3dsmax, their coordinate are perectly matched.

 

this should be the correct result from softimage plugin.

 

BTW, I'm using crosswalk to export from softimage to 3dsmax, that plugin was an official plugin provided by autodesk.

 

Hi Steve,

 

I use Softimage as well (my artist uses Maya). In my softimage app, when in Front perspective, (looking from front to back), I see the "front" of my model. Then when checking this in the Camera perspective, I can confirm that the "front" or forward direction of the scene is the positive Z axis, as denoted by the little axis picture in the bottom left.

 

Shouldn't this mean:

Softimage is: Z-Forward, Y-Up

Unigine is an Y-forward, Z-Up

 

Although, when I load the agent.smesh (included in demos), the character faces forward in the -Y direction?

 

I'm definitely confused lol.

Link to comment

In unigine, +Y axis is forward direction, in XSI -Z axis is forward direction.

 

You can confirm my description in this way:

the difference of different coordinate system is that they use different value to representation same position and orientation, so, following description should be correct mapping between xsi and unigine:

 

In softimage:

Place a character at world origin , make the character face to -Z axis, then place a camera at (10, 10, 10) and look at world origin, after this, you look though the camera, you should be looking at back-right shoulder.

 

after export to unigine, and correctly convert those coordinate system

the camera position should be (10, -10, 10) and still looking at the world origin, and the character should still be placed at world origin, and the character is facing to +Y axis.

 

these two steps are correct coordinate system conversion. but... using current plugin, you won't get the correct result in unigine, test it yourself.

Link to comment

XSI's forward direction is -Z axis, you can test it with direction constraint in xsi, it's default forward direction is local -Z

 

Y-up and +Z forward direction is left-handed coordinate system which is rarely used in dcc tools

Link to comment
  • 5 weeks later...

Hey Steve,

 

Have you by any chance used the "Animation Frams" export type at all?

For some reason, it seems like the plugin fails to perform any transformation at all.

Changes to the lines you specified, do not effect the outcome of the exported bones.

Link to comment

"Animation Frames", I think you mean WorldTransform? I never used this. I have tried to use this once, I need to export a animation about 2000 frames, the WorldTransform dramatically drops the performance. So I wrote a WorldCurve node for this kind of animation.

Link to comment

well, unigine crews, I didn't need anyone to confirm on this, autodesk has confirmed this,

 

You know, 3dsmax has viewcube, now softimage also has a viewcube..

 

post-49-0-28920000-1294366078_thumb.jpg

this is the viewcube in perspective viewport in 3dsmax, the front direction and north direction.

 

post-49-0-81422200-1294366083_thumb.jpg

this is viewcube in softimage, also with the north direction.

 

I think these two pictures is enough to tell current version of softimage plugin have this serious problem. and also, the sun direction also calculated wrong as I reported in this thread: https://developer.unigine.com/forum/topic/243-wrong-sun-direction-calculation-in-corescriptstimeh/

Link to comment

There are national holidays in Russia until January, 11. When developers get back to work, we'll fix the bug as a high priority one.

Sorry for the inconvenience.

Link to comment

"Animation Frames", I think you mean WorldTransform? I never used this. I have tried to use this once, I need to export a animation about 2000 frames, the WorldTransform dramatically drops the performance. So I wrote a WorldCurve node for this kind of animation.

 

Actually, under the Type selection box for the unigine export plugin, I have 4 types: static mesh, skinned mesh, animation frames, and spline.

 

static mesh = .mesh

skinned mesh = .smesh

animation frames = .sanim

spline = ? haven't used

 

I think I've solved my problem actually, despite not knowing what was causing the problem. :)

 

Anyways, thanks for sharing your script! What exactly does it do? Based on your wording, it sounds like what I "think" the spline export type does? For a given object, it exports the World Transform of the object over a range of frames?

 

 

Michael

Link to comment

sorry for my misunderstood, you are right the animation frames are animations for skinned mesh. :)

 

Spline.. are worldTransform files, my script only export this kind of file.

Link to comment
×
×
  • Create New...