Profile Picture

FBX animation doesn't work

Posted By Colonel_Klink 11 Years Ago
You don't have permission to rate!
Author
Message
Colonel_Klink
Colonel_Klink
Posted 11 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)

Group: Forum Members
Last Active: 2 Months Ago
Posts: 1.1K, Visits: 7.7K
Hi All. This animation bit is giving me a headache, and I don't usually throw the towel in on things easily.

The problem:
A simple model created in 3dsmax 2013 has two animating parts (see download) http://robertwatt.com/downloads/test%20car%20ani%203a.FBX

But when set up in Iclone when opening one door at a time things are fine. But open door one then door two door one closes. The same goes if opening door two first then door one, door two closes.

It appears I'm missing something in the initial setup of the model in max, but for the life of me I cannot see what it is.

If some one could enlighten me of my errors I'd be most appreciative, otherwise it looks like most of my props will remain as simple static bystanders in the Iclone universe.

Thanks
Bob

* * * * * * * * * * * * * * * * * *
See all my content in one place
https://forum.reallusion.com/uploads/images/a5008f7f-0e1f-4504-bcf8-f262.png
Facebook Page: CWK3D Game and Film Content
Cancer Survivor - Retired Teacher - Geriatric Icloner still learning
Hardware: ZX80; Operating System- ZX80 Basic; CPU - ZX80 @ 3.25 MHz; Memory - 1KB; Hard Drive - N/A; Storage - Cassette; Monitor: Any old CRT TV




prabhatM
prabhatM
Posted 11 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)

Group: Forum Members
Last Active: 4 Years Ago
Posts: 1.8K, Visits: 8.1K
Colonel_Klink (4/12/2013)
Hi All. This animation bit is giving me a headache, and I don't usually throw the towel in on things easily.

The problem:
A simple model created in 3dsmax 2013 has two animating parts (see download) http://robertwatt.com/downloads/test%20car%20ani%203a.FBX

But when set up in Iclone when opening one door at a time things are fine. But open door one then door two door one closes. The same goes if opening door two first then door one, door two closes.

It appears I'm missing something in the initial setup of the model in max, but for the life of me I cannot see what it is.

If some one could enlighten me of my errors I'd be most appreciative, otherwise it looks like most of my props will remain as simple static bystanders in the Iclone universe.

Thanks
Bob

Try Getting 3 independent FBX :
1) Left Door open
2) Right Door Open
3) Both Doors Open

You will have 3 morphs in your Morph List. Then call them independently. I am no expert. But thinking of a possibility.
animagic
animagic
Posted 11 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (33.3K reputation)Distinguished Member (33.3K reputation)Distinguished Member (33.3K reputation)Distinguished Member (33.3K reputation)Distinguished Member (33.3K reputation)Distinguished Member (33.3K reputation)Distinguished Member (33.3K reputation)Distinguished Member (33.3K reputation)Distinguished Member (33.3K reputation)

Group: Forum Members
Last Active: 4 hours ago
Posts: 15.8K, Visits: 31.2K
I tried to replicate your problem. I imported the object into iClone and created 4 motions: door 1 open, door 1 close, door 2 open, and door 2 close.

And indeed, when I apply "open door 1", door 1 opens, but when I apply "open door 2", door 1 closes. Why?

It then dawned on my that when recording the animation for opening one door, the other door is closed. So the clip you are saving applies to the state of both doors. Since door 1 was closed when I recorded the motion for opening door 2, playing back that motion will cause door 1 to close.

I wouldn't immediately know how to solve this problem. What you need is some kind of hierarchy that allows motions to applied to individual parts without affecting other parts.


https://forum.reallusion.com/uploads/images/436b0ffd-1242-44d6-a876-d631.jpg

Colonel_Klink
Colonel_Klink
Posted 11 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)

Group: Forum Members
Last Active: 2 Months Ago
Posts: 1.1K, Visits: 7.7K

Try Getting 3 independent FBX :
1) Left Door open
2) Right Door Open
3) Both Doors Open

You will have 3 morphs in your Morph List. Then call them independently. I am no expert. But thinking of a possibility.


Yes that would definitely work. Thanks.
I'm beginning to think that Iclone doesn't support what I'm trying to accomplish unless the doors are independent of each other as sub props. I might have to do that or as you suggest have multiple animations within each command.
Thanks
Bob

* * * * * * * * * * * * * * * * * *
See all my content in one place
https://forum.reallusion.com/uploads/images/a5008f7f-0e1f-4504-bcf8-f262.png
Facebook Page: CWK3D Game and Film Content
Cancer Survivor - Retired Teacher - Geriatric Icloner still learning
Hardware: ZX80; Operating System- ZX80 Basic; CPU - ZX80 @ 3.25 MHz; Memory - 1KB; Hard Drive - N/A; Storage - Cassette; Monitor: Any old CRT TV




Colonel_Klink
Colonel_Klink
Posted 11 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)

Group: Forum Members
Last Active: 2 Months Ago
Posts: 1.1K, Visits: 7.7K
Hi animagic
Thanks for confiming that I'm not going nuts Smile
That is what I concluded was happening too. The funny thing is when I export the same model to Unity I can have both doors open at the same time. The thing is in Unity the commands call each door independently, whereas in Iclone, as you say, the animations are essentially on the same animation timeline, whereas in Unity they are called from code not a timeline. When (if) we ever get lua scripting to control props this would overcome this limitation.
Cheers
Bob

* * * * * * * * * * * * * * * * * *
See all my content in one place
https://forum.reallusion.com/uploads/images/a5008f7f-0e1f-4504-bcf8-f262.png
Facebook Page: CWK3D Game and Film Content
Cancer Survivor - Retired Teacher - Geriatric Icloner still learning
Hardware: ZX80; Operating System- ZX80 Basic; CPU - ZX80 @ 3.25 MHz; Memory - 1KB; Hard Drive - N/A; Storage - Cassette; Monitor: Any old CRT TV




prabhatM
prabhatM
Posted 11 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)

Group: Forum Members
Last Active: 4 Years Ago
Posts: 1.8K, Visits: 8.1K
Colonel_Klink (4/12/2013)
Hi animagic
Thanks for confiming that I'm not going nuts Smile
That is what I concluded was happening too. The funny thing is when I export the same model to Unity I can have both doors open at the same time. The thing is in Unity the commands call each door independently, whereas in Iclone, as you say, the animations are essentially on the same animation timeline, whereas in Unity they are called from code not a timeline. When (if) we ever get lua scripting to control props this would overcome this limitation.
Cheers
Bob


Your example has SubProps. But I am afraid it still may not work.

Interestingly, the solution is quite simple. You need RL's small attention.

A single timeline would work. But we need to tell the target where to stop. that means we need to define the Start and End Point of a clip. We do it often in interactive 3D when we export the 3dx MAX animations, we take a single timeline, but define the CLIPS independently by defining the Start and end points, then call the clips by Name. Something Like "On Click on Right Door" call the clip "OPEN RIGHT DOOR". Some people use a simple TXT or INI file to store these clipStart and clipEnd values.

"OPEN RIGHT DOOR", 1,250
"OPEN LEFT DOOR", 251,500
"OPEN BOTH DOORS", 501,1000

In 3dx, RL must allow the user to break a single animation into "virtual segments" and create independent Morph / animations / Clips, then allow the user to call them by name through right click in ICLONE.

May be ICLONE AML / Lua has this interactive support. Somebody got to do the exploration. But it would be nicer if RL allows all "Morphs with Slider" and "Animation Virtual Clips" through Right Click inside ICLONE.

Here perhaps you can do with 4 independent FBX, one extra for all doors closed.
Edited
11 Years Ago by prabhatM
Colonel_Klink
Colonel_Klink
Posted 11 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)Distinguished Member (18.6K reputation)

Group: Forum Members
Last Active: 2 Months Ago
Posts: 1.1K, Visits: 7.7K
Yes I think you are right, there needs to be a method of starting and ending an animation clip because setting 3 perform commands 1. move up, 2 rotate left, 3. rotate right on a simple block in in Iclone has the same problems. e.g." move up" the block moves up. Rotate and the block resets to the place it was before moving up.
This means that there is a problem with the prop perform command as it stands.
I've exported a lua dramascript for the block object as below.
I'm just wondering if there is scripting code to get the perform commands to hold the previous position and to start next animation.
Cheers
Bob


code:
iObject = {
Clips = {
AnimationClip = {
[ 1 ] = {
ID = "rotate right";
TargetType = "Object";
ClipType = "Animation";
ClipLocation = "$";
Priority = {
[ 1 ] = {
ID = "01";
Node = "$";
Value = 200.000000;
};
};
TargetNode = "$";
};
[ 2 ] = {
ClipLocation = "$";
ClipType = "Animation";
ID = "rotate left";
Priority = {
[ 1 ] = {
ID = "01";
Node = "$";
Value = 200.000000;
};
};
TargetType = "Object";
TargetNode = "$";
};
[ 3 ] = {
ID = "move up";
TargetType = "Object";
TargetNode = "$";
ClipType = "Animation";
ClipLocation = "$";
Priority = {
[ 1 ] = {
ID = "01";
Node = "$";
Value = 200.000000;
};
};
};
};
};
Commands = {
Perform = {
PerformCommand = {
[ 1 ] = {
Persist = false;
ClipSeq = {
[ 1 ] = {
ID = "rotate right";
RefClipID = "rotate right";
Delay = 0.000000;
Loop = 1.000000;
};
};
ID = "rotate right";
HotkeyID = "None";
RightMenu = true;
DisplayName = "rotate right";
};
[ 2 ] = {
Persist = false;
ClipSeq = {
[ 1 ] = {
ID = "rotate left";
RefClipID = "rotate left";
Delay = 0.000000;
Loop = 1.000000;
};
};
ID = "rotate left";
DisplayName = "rotate left";
RightMenu = true;
HotkeyID = "None";
};
[ 3 ] = {
ID = "move up";
DisplayName = "move up";
Persist = false;
RightMenu = true;
HotkeyID = "None";
ClipSeq = {
[ 1 ] = {
ID = "move up";
RefClipID = "move up";
Delay = 0.000000;
Loop = 1.000000;
};
};
};
};
};
};
};


* * * * * * * * * * * * * * * * * *
See all my content in one place
https://forum.reallusion.com/uploads/images/a5008f7f-0e1f-4504-bcf8-f262.png
Facebook Page: CWK3D Game and Film Content
Cancer Survivor - Retired Teacher - Geriatric Icloner still learning
Hardware: ZX80; Operating System- ZX80 Basic; CPU - ZX80 @ 3.25 MHz; Memory - 1KB; Hard Drive - N/A; Storage - Cassette; Monitor: Any old CRT TV




prabhatM
prabhatM
Posted 11 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)

Group: Forum Members
Last Active: 4 Years Ago
Posts: 1.8K, Visits: 8.1K
Colonel_Klink (4/13/2013)
Yes I think you are right, there needs to be a method of starting and ending an animation clip because setting 3 perform commands 1. move up, 2 rotate left, 3. rotate right on a simple block in in Iclone has the same problems. e.g." move up" the block moves up. Rotate and the block resets to the place it was before moving up.
This means that there is a problem with the prop perform command as it stands.
I've exported a lua dramascript for the block object as below.
I'm just wondering if there is scripting code to get the perform commands to hold the previous position and to start next animation.
Cheers
Bob





I guess you have to define a new parameter - "currentLocation"/ currentRotation.
Then clipLocation takes the value of your currentLocation.
After your first command, currentLocation = 40 ; So your clipLocation will be 40.

Basically $ should hold your new clipLocation. And it should work. This is just my 1st look suggestion.
prabhatM
prabhatM
Posted 11 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)

Group: Forum Members
Last Active: 4 Years Ago
Posts: 1.8K, Visits: 8.1K
sw00000p (4/13/2013)
It's not Rocket Science! iClone is simply NOT"Layering" the animation properly!

* Hoops 'n Barrels:
Break the animation in the 'animation' section of the timeline!
S P R E A D the open and close animations... FAR apart!

this is why I NEVER animate in iclone!


FAR APART ! Sorry I did not understand this part. Could you please elaborate it ?

I think if ICLONE simply stores values like below, it would work :

"OPEN RIGHT DOOR", 1,250
"OPEN LEFT DOOR", 251,500
"OPEN BOTH DOORS", 501,1000
Edited
11 Years Ago by prabhatM
prabhatM
prabhatM
Posted 11 Years Ago
View Quick Profile
Distinguished Member

Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)Distinguished Member (6.6K reputation)

Group: Forum Members
Last Active: 4 Years Ago
Posts: 1.8K, Visits: 8.1K
sw00000p (4/13/2013)
Use the perform command to open on of the doors!

In the Timeline... Animation Section... Note the Animation Clip!

Ever so slightly... move the Slider to the 'End of the door opening!
NOW, Break It / Split the Clip!

Re-Collect it and add it to the library.

iClone Layering.... Azbackwards! Pinch


Yes, this should work.



Reading This Topic