Away3D for Ultimate Unwrap 3D

Software: Other

Bolt, Newbie
Posted: 13 February 2014 05:31 AM   Total Posts: 17

Hello Everybody,

This is our first release of a Away3D exporter for Ultimate Unwrap 3D.

Geometry, materials, textures, UV coordinates, vertex normals, vertex weights, bones and animation can be exported.

We also wrote a Away3D importer for testing purposes, but Away3D users may find it useful.

Download link:
http://www.unwrap3d.com

_________________
Brad Bolthouse
Ultimate Unwrap 3D Developer
http://www.unwrap3d.com

   

John Brookes, Moderator
Posted: 14 February 2014 12:52 PM   Total Posts: 732   [ # 1 ]

Brad just some bits of info to help others. Correct me if im wrong.
Just looking at conversion between filetypes eg fbx to awd as I’m sure that’s what most here would be interested in.

Ok so after a bit of playing with Ultimate Unwrap…

First the Bad
It loses any groups on export to awd and the vertices get baked instead.
Mesh and Geometries get renamed.
No pivot support.
So for converting scenes with many different meshes/groups its not that helpful. Although the ability to take an fbx and Merge all meshes that use the same material and export to AWD is.

BUT
The really good news is it can export bone animations.
So users can go from FBX and a few other filetypes to AWD.

That in itself may be worth the price to some.
As well as the fact its a UV editing tool wink

   

Bolt, Newbie
Posted: 14 February 2014 10:22 PM   Total Posts: 17   [ # 2 ]

Hi,

Thanks for the feedback. 

Our AWD exporter will export everything you see in Unwrap3D.

So, if some feature is not natively supported in Unwrap3D, it’s not going to get exported in the first place (pivot points, mesh hierarchies, etc…).  FBX has many features beyond our program, so we don’t see it as a replacement for it.

Compared to other formats, like Wavefront OBJ, exporting directly to AWD format, rather through an intermediate format, overcomes many gotchas and limitations (dropped materials, etc..).  So, we hope Away3D users may find our AWD exporter useful.

_________________
Brad Bolthouse
Ultimate Unwrap 3D Developer
http://www.unwrap3d.com

   

Bolt, Newbie
Posted: 14 February 2014 11:43 PM   Total Posts: 17   [ # 3 ]

BTW, this is our first release, so if you have any suggestions on how to improve it, please let us know.

As for mesh names, we could add an option to export meshes per group, rather than per material.  This will preserve group names.

Thanks
_________________
Brad Bolthouse
Ultimate Unwrap 3D Developer
http://www.unwrap3d.com

   

Bolt, Newbie
Posted: 16 February 2014 12:05 AM   Total Posts: 17   [ # 4 ]

Just FYI, mesh names fixed.
New AWD plugin uploaded to website.

_________________
Brad Bolthouse
Ultimate Unwrap 3D Developer
http://www.unwrap3d.com

   

zenwaynow, Newbie
Posted: 18 February 2014 12:07 PM   Total Posts: 3   [ # 5 ]

I have been working on an animation workflow. I export an FBX from Mixamo and then load it into U. Unwrap Pro. I create the animations and everything looks good. I export to an AWD and use this AWD and textures in my AWAY3D game engine. Almost everything looks good and the animations are working.

The one issue is in the walk cycle. The character will translate during the walk animation but at the end of the loop the character pops back to the starting place. I checked the character position and it is not being updated during the walk cycle.

At first I thought this was a problem with the rigging but I do not think it is.

When I import the original onkba.awd and export it with U. Unwrap Pro I get the same result. Using the original onkba directly to test with I do not have the translation and popping issue. In all cases I am using the exact same code.

As a programmer I imagine I am missing a simple step in the art export process.

Any ideas?
Thanks

   

Bolt, Newbie
Posted: 18 February 2014 10:42 PM   Total Posts: 17   [ # 6 ]

Hi,

We used both Onkba.awd and PolarBear.awd for testing our animation exports.
The both have walking animations that physically move the character forward.
Our exports from Unwrap3D look exactly the same as the original.

What kind of animation effect are you trying to achieve? 

- Do you want the character to stand still at the origin while it’s walking?

- Or do you want the character to continue its movement, from it’s last walking position at the end of the cycle?  If that’s the case, then that’s probably some kind of special setting or code on the Away3D side that does it.

I don’t know the technical details behind it, but I would guess there’s some code that locates the skeleton/root bone, and moves it forward at the end of the animation cycle.  If the code is looking for a specific skeleton/root bone string name, then we can certainly change the exporter to match it.

Hopefully, someone else can give you a better answer.

   

Bolt, Newbie
Posted: 19 February 2014 01:06 AM   Total Posts: 17   [ # 7 ]

Here’s one thing you might want to check.  Before you export, make sure your skeleton has exactly one root.  If there’s multiple roots, you can delete them in UU3D.

   

zenwaynow, Newbie
Posted: 20 February 2014 03:49 AM   Total Posts: 3   [ # 8 ]

So I dug deeper on this, to find the root of the issue. If it matters I am using Away3d 4.1.6.

Again I want to say that the working Onkba once imported/exported through UU3D displays the same non translating behavior. My goal is too have the character continue its movement, from it’s last walking position at the end of the cycle.

The special code in Away3 is two part:

The main part is the totalDelta on the SkeletonClipNode for the walk cycle. In the properly translating Onkba demo this value is set to

(X)0.11
(Y)0.77
(Z)-168.0

You can see these values when importing the asset and the ASSET_COMPLETE event is triggered for the ANIMATION_NODE. This totalDelta vector translates the model when the animation cycle is complete.

When I load the UU3D imported/exported Onkba these values are not consistent with non touched version of Onkba. They are all zeros in the imported/exported version of Onkba. The next effect is that animation will not translate when the Away3D code for the SkeletonClipNode updatePositionDelta is called due to the zero vector for totalDelta. If I fudge the totalDelta the character translates like it should.

With the one excpetion. This being that when looking at the position of the character in realtime the position is not being updated until the animation cycle iis complete. You see the character move in 168 unit chunks every second or so.

This popping is caused a few lines lower in the same update method where the code tries to extract the position p2 and p1 information from jointposes[0].transition between the two frames. In effect the jointposes[0].transitions for both points are zero which results in a net delta change of zero. This is the reason the character position does not update on a frame by frame basis and pops 168 units every animation cycle.

So in essence the problem is two fold. One is the import of the vector for the SkeletonClipNode totalDelta member is zero. Second is the imports of the jointPoses[0].transisition vector is also zero for the frames of the walk animation.

Both of these vectors being zero on import from the imported/exported Onka character and not so on the original is leading to me to believe the error is in the exporter or in the way my animations are created. Being a programmer I am leaning more toward incorrect animations so I will look in that direction to see what the problem is with my programmer art. I am assuming that the problem is not in the exporter unless discussed otherwise. Thanks for your help.

   

Bolt, Newbie
Posted: 20 February 2014 04:37 PM   Total Posts: 17   [ # 9 ]

Try this:

1. Import Onkba.awd into UU3D.
2. Select and play the walk animation inside UU3D.
3. Stop/Pause the animation halfway at frame 30.
4. Here, you should see a bone pinned at the origin, that doesn’t move/animate.  This is “Bone001”.
  Actually, there are two bones called “Bone001”, but this is the root bone.  The fact that the root bone doesn’t move along with the rest of the skeleton, may be related to your problem.

To fix:
5. Drag-n-drop the second “Bone001” to the root. 
6. Delete the first “Bone001”.

7. Play the animation again in UU3D.  The entire skeleton should move.  Nothing should be left behind at the origin.

If this solves your problem, then, you should make sure that the root bone is always animated and moves along with the entire skeleton.  It should never stay pinned at the origin.

   

Bolt, Newbie
Posted: 20 February 2014 05:12 PM   Total Posts: 17   [ # 10 ]

BTW, the reason why this root bone is not animated, is because it’s not really a bone at all. The AWD importer created a new bone from the name of the skeleton, and inserted it at root. The name of the skeleton just happened to be called “Bone001”, the same as the root bone “Bone001”, so that’s why there are two of them.  The importer side was just made for testing purposes, so you might have to delete the non-animated root bone when importing AWD files, before exporting it back out again.

   

Bolt, Newbie
Posted: 20 February 2014 06:00 PM   Total Posts: 17   [ # 11 ]

Ok, for those who want to import a AWD file, and export it out again, we made it a bit easier. The AWD importer will no longer add the skeleton name as root bone.

New AWD plugin uploaded to website.

   

John Brookes, Moderator
Posted: 20 February 2014 06:32 PM   Total Posts: 732   [ # 12 ]

Just tested latest AWD exporter.

As far As I can see U3d is adding an extra bone as the main parent on saving to AWD.  Using my own anim and making sure all other extra bits are deleted.

eg tracing out joints
U3D_Root <—not expected
-RootBoneFloor
—PinkGirlCharacter_Hips

Doing that will break the way position Delta works.
Although it is actually also a way to fix sinking of some animations during crossfade.

See issue esp Robs last comment.
https://github.com/away3d/away3d-core-fp11/issues/512

   

Bolt, Newbie
Posted: 20 February 2014 11:56 PM   Total Posts: 17   [ # 13 ]

Thanks for the info.

BTW, the AWD exporter added its own root bone, so it would know what bone was root. But, since adding a non-animated root interferes with walking cycles, we can remove it.  Now, you just have to make sure there is exactly one root on export, and that it’s animated. Hopefully, that should do it.

New AWD plugin uploaded to website.

   

Bolt, Newbie
Posted: 21 February 2014 12:15 AM   Total Posts: 17   [ # 14 ]
JohnBrookes - 20 February 2014 06:32 PM

Although it is actually also a way to fix sinking of some animations during crossfade.

I would guess it would be the animator’s job to create a root bone that is either anchored at the origin, or follows the character along the ground plane wherever it goes.  So, if your character moves up and down, the root bone stays anchored on the ground plane, and your character doesn’t sink below it.

   

Bolt, Newbie
Posted: 23 February 2014 12:50 AM   Total Posts: 17   [ # 15 ]

So, in summary, this is what I’ve learned so far:
- In Away3D, any root bone translation gets acculumated into a delta variable.

The latest AWD exporter for Unwrap3D has been updated to work with it.

If you have a walk animation cycle that moves forward in the +z direction, then you can try this:

In your 3D modelling program:
- Insert a new root bone with identity transform.  Parent everything to it.

In your keyframe editor:
- Copy z translation keys from old root to new root bone.
- Delete the z translation keys from the old root bone to compensate.

That should work.

_________________
Brad Bolthouse
Ultimate Unwrap 3D Developer
http://www.unwrap3d.com

   
   

X

Away3D Forum

Member Login

Username

Password

Remember_me



X