By Colonel_Klink - 11 Years Ago
|
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
|
By prabhatM - 11 Years Ago
|
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.FBXBut 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.
|
By animagic - 11 Years Ago
|
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.
|
By Colonel_Klink - 11 Years Ago
|
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
|
By Colonel_Klink - 11 Years Ago
|
Hi animagic Thanks for confiming that I'm not going nuts 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
|
By prabhatM - 11 Years Ago
|
Colonel_Klink (4/12/2013)
Hi animagic Thanks for confiming that I'm not going nuts 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.
|
By Colonel_Klink - 11 Years Ago
|
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; }; }; }; }; }; }; };
|
By prabhatM - 11 Years Ago
|
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.
|
By prabhatM - 11 Years Ago
|
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
|
By prabhatM - 11 Years Ago
|
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!
Yes, this should work.
|
By Colonel_Klink - 11 Years Ago
|
I don't quite understand this: "NOW, Break It / Split the Clip" does this mean collect the new animation segment? Bob
|
By Colonel_Klink - 11 Years Ago
|
Hi swooop Forgive my ignorance but having only been with Iclone for little over a month I'm still delving into the innards of the program. I do appreciate your help. Bob
|
By Colonel_Klink - 11 Years Ago
|
Ok tried that on the animated block but when the block is moved up then rotated the block drops and then rotates.
|
By wendyluvscatz - 11 Years Ago
|
Hi Sw00000P, I did this using driver get in for the jeep iMotion to use on another car. and reversed the clip for driver get out. I see in 3DX5 the jeep has target helpers attached to open doors boot etc. I know this can be done manually on other props using the helper iProps and mechanic tools but wondered why even though it shows as having "bones" the jeep cannot be converted to a non-human avatar like many other fbx imports can ans so have a 'Persona" that could be applied to other cars with target helpers and motions of the same name? Scripting is beyond my little brain but something simple like embedding motions to a prop is not that hard however getting avatar interaction embedded another story.
|
By Colonel_Klink - 11 Years Ago
|
Hi Swooop Yes I do understand the concept of 3d and local orientation. It appears that Iclone hasn't got this implemented. I think a workaround is to have each door or window etc as a subprop and they have their own independent perform commands. I was trying to avoid this and just have a single prop with embedded commands.
CK, Sir, I've done my best to help you! My solution: Bring in each object separately! Each Object has it's OWN...embedded animation. 00 - 10: Open LF_Door 20 - 30: Close LF_Door 40 - 50, etc! Link objects together within iClone! The perform command are combined for use!
I see how this works. Another question however: Should the merge command make all the perform commands link to the parent object?
And no you are certainly not wasting your breath, Iclone is a new application for me your help is appreciated Bob
|
By Colonel_Klink - 11 Years Ago
|
sw00000p (4/13/2013)
Colonel_Klink (4/13/2013) Hi Swooop Yes I do understand the concept of 3d and local orientation. It appears that Iclone hasn't got this implemented.BINGO! Tip: Slow ya Roll until RL UNBLOCKS Lua Scripting! Can't explain anything advanced... without scripting! ...otherwise, I'd just walk Ms. Wendy right through the Stinkin JEEP!
Tis all good sw00000p. I was using Antics before Iclone and was able animate stuff ok... even though the tools were limited. Thanks for your help Bob
|
By Colonel_Klink - 11 Years Ago
|
sw00000p (4/13/2013)
Hey Bob, As soon as RL remove the LUA Scripting "Encryption"... You're Going To Be in... HOG HEAVEN!
Looking forward to that, sw00000p. I enjoy a challenge, but sometimes my old brain just freezes up. I've been determined to get this working. Bob
|
By Colonel_Klink - 11 Years Ago
|
sw00000p (4/13/2013)
Hey Bob, When you get a chance, take a peek at the "iCar" setup! Rap you head around this"Technique"... It works!
if you can create this setup .... You're problem is solved! ___________________________________________________________
Dang LUA Script!
Open! Open! Open!
hi sw00000p, Shall do. Another idea I had was to create the model using a bone structure and then have it has a non human character. There will be work arounds I'm sure, but first I'll look at the icar. cheers Bob
|
By Colonel_Klink - 11 Years Ago
|
sw00000p (4/13/2013) Please look at the iCar! It's right up your alley! * You're a 'Scriptor'
As soon as you get a hang for it's "Schema" You Got it made!
Note: You CAN use "NotePad" and edit the file!
I simple don't have the patience!
Hmm. I don't have icar. I presume it is part of the icar bodyshop Does anybody know how to create or edit ianims, as I see some props use external ianims to move, perform etc. Cheers Bob
|
By Colonel_Klink - 11 Years Ago
|
Hi sw0000p Couldn't find the icar, unless it is the one in the mechanics toolkit. But anywho, playing around with the aml editor (site says it's for Iclone 3, but I've been experimenting with the move commands, I know it isn't opening and closing doors. However it is interesting that the editor works, although with somewhat limited fuctionalilty, because unless we can create our own ianims and imotions we're pretty much stuffed. Having said that, however I have seen a few youtube videos of vehicles with working stuff. Cheers Bob
|
By Colonel_Klink - 11 Years Ago
|
YES! Now you're starting tounderstanding! That Technique is what "You Need To Learn!" Yes, the 'Ol AML Editor still works, to a certain degree, but it's "SCHEMA!" still applies with g5. Problem: AML Editor does NOT export correctly! Perhaps I was mistaken, assuming you have programming experience! I do have programming experience, sw0000p. For about 8 years I scripted models for VBS2. It was using a version of c++ script. Then more recently moved to javascript and C# within Unity. Also i have programmed in Visual basic, Blitz Basic, Dark Basic and a little bit of C#. I have Iclone 4 so I'll do as you suggest try my hand at animating in there. Aml looks straightforward, however user created external imotions and ianims looks like it's a nono as far as Iclone is concerned. Bob
|
By Rampa - 11 Years Ago
|
The AML program didn't export properly in iClone 4 either, but the fix is really easy. And Yes, it works just as well in 5. You just need to clean it up in a text editor. It puts in lots of "$$" signs in the path names. Very easy fix.
|
By Colonel_Klink - 11 Years Ago
|
Hi rampa Thanks for that i will check it out. Cheers Bob
|