Hello guys, I am rigging an interesting piece of machinery. I did set up a chain using bones and via IK solver I attached it to spline. Hovewer, I have no clue of how to make this work properly.
The highligted box like thing should be movable by player (in unity) to left and right. The chain, or rather the bones should be attached to the box and the top last part should be fixed at place.
Now I managed to attach the chain to a spline, but I have no clue how to fix the last chain part to a position (blue cross icon), nor how to attach it to a parent, as I need whole chain to move except the fixed part. What would be the best way to do this ?
Replies
Have you looked into how others have done chain style FX in Unity? That would be the thing I'd search for, since you need it to be interactive in Unity.
Hello Eric and thanks for the response.
I have checked possibilities how to do this in unity, but the main issue comes to animation of the chain along the spline. Unity does support this, hovewer it is an asset that one have to buy. If possible, I would like to avoid that.
Obi rope might be actually solution for this, but again, its inside unity. I will give it a try, but would be more happy with a 3Ds max approach.
Look up "tank treads animation 3ds Max" for ideas.
You can also bake any procedural animation (like splines) into raw transforms, before export.
Hello, this is what I came up with:
However, I get some unexpected results in Unity. The main issue is strange movement on Z axis, I will showw that in video a bit later. I have double checked export from 3DS Max. The only animated axis is being X, the rest is frozen. Also, the animation is being applied to parent object only, bones and chain mesh is empty. Yet, I get this weird behaviour.
From what I found chain inside Unity does have, for some weird reason, also animation on Z axis. I tried to remove those manually but that is not effective at all. Simply to put, upon exportinf from Max, the animation only goes for X axis with Y and Z frozen but Unity does something to Z axis as well. From the forums I found that this can be caused by large world offset etc, but no fix from these works for me. Therefore I hope to get some help here. How can I get
this animation working on X axis only ?
A quick update - quite possibly, by changing the animation type in unity from Generic to Legacy does the trick. I have yet to test this out properly, but seems like a step forward.
Maybe a question for the Eric - The whole proccess of making this animation consist of 3 youtube videos combined, along wwith some editing inside Unity. Would a short tutorial, if I make one ,on this help others in future in case anyone bounces into the same problem? @Eric Chadwick
I think it just might! It would be great to show how the method can be used for less specific projects, more generic needs like say tank tracks, or chain saws, etc.
Oh well nevermind, setting animation type to legacy did not work after all. This issue still persist...
Did you try baking the spline animation into bones?
I would suggest animating a UV instead of using individual meshes. The whole curved chain can be a single mesh with only a simple transform animation, and you could fake the chain links by sliding the UVs across it.
Indeed, the animation is baked. Also, in this very case, I cannot fake it. Eric if possible, we could chat a bit on discord about this, as this goes into VR afterwards?
Update: Unity compression was causing this unexpected behaviour. Turning it off did solve the issue for now. I am getting the feeling that this thrread is going to be a long one.