PDA

View Full Version : Spline Control is on crack

Sebasvideo
02-28-2014, 04:27 PM
So I'm trying to learn Spline Control by watching Jennifer Hachigian's videos on the Lightwave channel on YouTube, and replicating what she does I think I either found a nasty bug, or something works really awkward by design. In the video where she does the presentation at Siggraph she makes 4 clones of the null: https://www.youtube.com/watch?v=b_rFztpHYLc

I made the same thing, but cloned the null 6 times. As for spacing them, I didn't do it in a straight line like she did, but set the first two straight, then spaced the rest as if the path was taking a 90° curve. Well, inexplicably, there is like a cut between the last and previous to last null or node, and when I keyframe the camera along the Z axis I can tell what it is: when it gets to that line, the camera flips 180° on its Z axis, or bank if you prefer. However, selecting either of those two nulls, in both the rotation is 0° in all three axis, so I don't understand why that happens. After playing with it for a minute I find that the way to fix it is to set rotation in the last null to pitch -90° and bank 90°. So either this is a bug or I'm totally lost as to why it happens. I tried this several times, it happened each and every time.

120516

Then in another try in a new scene I find the spline control thing is more on crack than I thought:

120517

Not only that craziness of twisting nodes, but then more bugs. If you see the screenshot right above, it's on frame 300 and the distance along the Z axis is 23.4818m. However, if I grab the cursor and start scrolling the timeline back and forth, the X and Z values suddenly change and now show completely different numbers:

120518

The new Z number seems to be the real position of the camera from the point it was before I set it to the spline. However, the X position I'm totally lost about, because the 0 seems to be 10 meters to the right of where it was. Also, this bug (if it's a bug) makes animation confusing and difficult because now that the Z is showing -4.5082m instead of 23.4818m, when I grab the Z slider and start moving it, the camera jumps to what it would be -4.5082m but along the spline, so it loses the position I had set it to.

The other thing I'm trying to understand is how to make a completely straight line when at some point it has to make a curve. It seems to me that spline control is great for wavy motion paths, but trying to make it go in a straight line and then turn is rather difficult:

120515

No matter where I place the nulls, if there's a curve (as in turn to the left or right) it will modify the path, and even if you place three nulls in a straight line it still make the path wave instead of coming straight and then taking a turn. In the screenshot above, the first and second null are at 0 in the X axis, but you can see that between them the path is curved to the left, so whatever you attach to that spline won't go in a straight line and then turn right. Same thing for the 5th and 6th nulls, they are exactly at 10m along the Z axis, but you can see the path is not straight between them.

Finally, something weird happens with the parenting of nulls, and this is before even touching spline control. If I create a null, and I move it, let's say -10 meters on the Z axis, then clone X number of nulls, at first all the nulls will be exactly in the same position. However, the moment I parent them to the first null, their location will be doubled starting at the origin. For example, if you moved the main null on X -15m and on Z -15m, then the parented nulls will suddenly appear at X -30m and Z -30m, although on the position fields at the bottom left they still show the original values. This is also rather confusing, I don't understand why it happens.

I'm really hoping people that know better can tell me the bug is not a bug and there's something I was doing wrong, because I was hoping to animate a lot of cars using this feature, but if it's so buggy there's no chance, and the same goes for the straight line problem, since cars don't move to the sides, they go in a straight line and then take the corner.

Thanks,

Sebastian

Simon-S
02-28-2014, 05:15 PM
I've used spline control a fair bit over the past few weeks and haven't had a real problems with it.

Not sure if you've done this this but one thing that may help with the twisting of the spline path is rotating the nulls to face down the path. If you only position the nulls you'll get twisting.

Hope this helps.

Sebasvideo
02-28-2014, 05:30 PM
Not sure if you've done this this but one thing that may help with the twisting of the spline path is rotating the nulls to face down the path. If you only position the nulls you'll get twisting.

Hope this helps.

Thanks, that worked perfectly! Now, I still need to find the answers for the other problems, like why the Z position is one number, but the moment you grab the timeline cursor/slider and move it, the Z position changes to the real position of the camera, not the the position along the spline, which makes keyframing rather complicated, and then the straight line problem. Maybe it's just the way it works, but I hope not.

RebelHill
02-28-2014, 06:00 PM
There's not much to it... The spline interpolation is fixed, so to add more detail to the spline add more nodes. The X and Y positions will ofc change, becuase your item is positionally constrained on those channels, rather than using keyframes, and the Z value is a measure of how far down the length of the spline the item is at.

See here...

Sebasvideo
02-28-2014, 06:31 PM
There's not much to it... The spline interpolation is fixed, so to add more detail to the spline add more nodes. The X and Y positions will ofc change, becuase your item is positionally constrained on those channels, rather than using keyframes, and the Z value is a measure of how far down the length of the spline the item is at.

Right, but the Y doesn't change in my case, it's the X and Z. The Z shows how far it is along the spline, but the moment I grab the cursor and move it even one frame, the number switches to what the real position of the camera is in the Z axis, not respective of the spline, but respective of the origin of the scene. Then if I grab the Z position slider and I move it, the camera jumps to what it would be that number, but in respect to the spline. The way it's designed is just horribly confusing. Once the camera is set to follow the spline, the Z number should always be how far along the spline you are. But I'll watch the video to get a better idea of how it works anyway, thanks for the link.

jeric_synergy
02-28-2014, 06:51 PM
??? Do you mean the z-gizmo, or the numeric slider at the bottom left?

Sebasvideo
02-28-2014, 06:57 PM
??? Do you mean the z-gizmo, or the numeric slider at the bottom left?

I mean the numeric slider.

Sebasvideo
02-28-2014, 07:35 PM
There's not much to it... The spline interpolation is fixed, so to add more detail to the spline add more nodes. The X and Y positions will ofc change, becuase your item is positionally constrained on those channels, rather than using keyframes, and the Z value is a measure of how far down the length of the spline the item is at.

See here...

OK, very useful video, even though I haven't finished it, but the way they designed this is terrible. I mean, you found a great workaround by using the follower, but having to set all those extra things just so you don't have to deal with two different Z values showing in the slider seems designed to confuse people. There are two Z values, the world origin value, and the one that shows how far along the spline the item is. Well, why didn't they leave the real Z value alone and set a different value in the motion options module? This way you have to setup way more things than you should.

Still it sucks that you can't make a straight line. No matter how many nulls I add, it seems impossible to make a completely straight line that begins to curve. It's much easier to do on a motion path where you adjust the spline tension in the graph editor.

Sebasvideo
02-28-2014, 08:10 PM
Here's what I mean by the straight line:

As you can see, the car makes a weird zig zag before taking the corner, even though there are three nulls in a straight line before the corner.

RebelHill
02-28-2014, 09:36 PM
why didn't they leave the real Z value alone and set a different value in the motion options module? This way you have to setup way more things than you should.

Whilst it would certainly be more obvious to have a separate "spine distance" channel... Itd still be a separate channel aside to the xyz, so you'd still have to control it somehow... And that'd involve the exact same steps you take with the Z as it stands... either you edit it directly in graph, or you setup a constraint to drive it.

Kryslin
02-28-2014, 11:22 PM
While we're on the subject of the (whacky) spline control, could someone answer a question for me?

Which kind of Spline is the Spline generated by the Spline control? It's not an Interpolating spline (TCB, Catmull-Rom), so that leaves Approximating types (Bezier, B-Spline et alia- Lightwave doesn't natively support NURBS; Hermite Splines are defined differently). I'd like to know so I can fit the control points better when setting the thing up.

Sebasvideo
03-01-2014, 12:47 AM
Whilst it would certainly be more obvious to have a separate "spine distance" channel... Itd still be a separate channel aside to the xyz, so you'd still have to control it somehow... And that'd involve the exact same steps you take with the Z as it stands... either you edit it directly in graph, or you setup a constraint to drive it.

No, I meant a control that is editable right there on the motion dialog, you just have to open the motion dialog and there it is.

raw-m
03-01-2014, 01:55 AM
Here's what I mean by the straight line:

As you can see, the car makes a weird zig zag before taking the corner, even though there are three nulls in a straight line before the corner.

I get this a lot and it's really frustrating! The only way round it I've found is to manually keyframe the HPB. Rotations seem extremely sensitive using Spline Control, I understand way but don't like it. Perhaps some kind if dampening/rounding feature is needed?

Sebasvideo
03-01-2014, 02:36 AM
I get this a lot and it's really frustrating! The only way round it I've found is to manually keyframe the HPB. Rotations seem extremely sensitive using Spline Control, I understand way but don't like it. Perhaps some kind if dampening/rounding feature is needed?

The more I understand Spline Control, the more it puzzles me how they are promoting this as such a great feature. Compared to simple motion keyframing, it's more complicated to setup, takes more time (you have to create nulls, parent them, distribute them, rotate them to avoid potential problems, etc), and you can't even replicate a simple real life vehicle behavior. The only good thing about it as far as I can see is the ribbon display.

So instead of improving motion paths like Modo did with 701, where you have the ribbon and bezier handles that you can adjust directly on the viewport, they made this awkward convoluted "spline control" that takes more time to setup with rather poor results except maybe for those things they showcased like the shark scene. But other than that, I fail to see how this can be used for the things they say, like rollercoasters and trains, or anything that is not in the air or in the water. I mean, a rollercoaster and train, at some point, have to go in a perfect straight line and then turn. They don't slide to one side and then turn the other way.

Now, if I'm wrong, please tell me why. I don't care to be right, I much rather prefer to be wrong and have a good use for this feature. But take a look at the same car from the video I posted earlier, this time done with motion keyframing in the graph editor, and even though it's not perfect by any means, you can tell it's far better than spline control:

http://youtu.be/2401I5zRtUI

Now what I would like to know is why the moment I grab a keyframe in the path using the path tool suddenly the cross jumps like two miles away and I have to bring it back to where it was...

raw-m
03-01-2014, 03:34 AM
Stick with it! Re creating nulls, I made a little tutorial (http://vimeo.com/87187708) last week - check from 1min to 1.50. You can easily create a setup using a spline in Modeler, take it to Layout at tweak away. RH also has a very handy script as part of his animation pack that will do an initial setup for you, specify the amount of nulls etc..

Sebasvideo
03-01-2014, 04:04 AM
Stick with it! Re creating nulls, I made a little tutorial (http://vimeo.com/87187708) last week - check from 1min to 1.50. You can easily create a setup using a spline in Modeler, take it to Layout at tweak away. RH also has a very handy script as part of his animation pack that will do an initial setup for you, specify the amount of nulls etc..

Well, yes, for the use you show in the tutorial it might make sense. I'm just saying that is a rather poor method to animate vehicles since you lack total control over the interpolation of the nodes.

jeric_synergy
03-01-2014, 11:24 AM
#awayfromLW
I disremember, is the a way to convert the spline into a decent motion path, without baking every frame? Ideally, it would be nodes=keyframes.

If not, #featurerequest