Jump to content

Animation tool for vehicles


animats
 Share

You are about to reply to a thread that has been inactive for 2272 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

I want to animate a vehicle's position, moving it a few meters from its actual position. This is related to my region-crossing work. I need a position-only BVH file. It only needs one track. What's the recommended tool for this? There's lots of information on line, but most of it is a decade old.

  • "qvimator" seems to only be good for skeletons. Also, what are qvimator's position units? They're not meters. They're not centimeters.
  • "bvhacker"'s site says it's only for editing existing files, not creation.
  • What's the unit used for position in BVH files?

Also, if I animate the root prim of a vehicle, do the avatars follow along, or do they each need to be animated separately?

 

Edited by animats
More info
Link to comment
Share on other sites

1 hour ago, Love Zhaoying said:

Is the vehicle mesh, and you’re planning to use animesh features?

Not animesh. May be mesh. It's about creating the illusion that a boat is seamlessly crossing a sim boundary, even though there's really a stall during sim handoff.

Link to comment
Share on other sites

12 minutes ago, Love Zhaoying said:

Ok, never heard of using an animation for a vehicle, maybe keyframe motion..

The "keyframe" system, I think, is equivalent to calling llSetPos().  That won't work during a region crossing, because the script is stopped during handoff between sims. But animations, which are viewer-side, can continue to run.

Link to comment
Share on other sites

1 hour ago, Love Zhaoying said:

Last I heard, animations are only for avatars, NPC’s, and now animesh. I’m often wrong.

Yes. This doesn't call for an animation, but for some slight of hand in scripting, which may or may not work.  Some of the scripted trains and trolleys in SL that follow routes across region boundaries manage smooth crossings by giving the vehicle a shove with llApplyImpulse when it's a few meters from the boundary and letting it coast across as a physical object, then starting up the engine again on the other side.  Depending on the size and shape of the OP's vehicle, that might be worth trying.

BTW, KeyFramed motion is handled as if it were an animation, not as llSetPos.  Theoretically, KFM is supposed to work for region crossings. According to the LSL wiki, " Inter-region movement is supported; simply specify a target keyframe that would place the object outside the sim boundaries and it will cross over. This seems to provide the same effect as pausing the animation when it is in limbo between the two regions, but the viewer continues to interpolate its movement. It will jump back to the sim border and continue on the same speed, although the time between waypoints will be increased due to the sim crossing. Make sure you factor this into your system. "  In practice, I have never found this to be smooth.  As the note says, "It will jump back to the sim border and continue on the same speed."  In fact, it seems just as likely to lose its way completely when I try it.  ¬¬

 

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

14 minutes ago, Rolig Loon said:

Yes. This doesn't call for an animation, but for some slight of hand in scripting, which may or may not work.  Some of the scripted trains and trolleys in SL that follow routes across region boundaries manage smooth crossings by giving the vehicle a shove with llApplyImpulse when it's a few meters from the boundary and letting it coast across as a physical object, then starting up the engine again on the other side.  Depending on the size and shape of the OP's vehicle, that might be worth trying.

BTW, KeyFramed motion is handled as if it were an animation, not as llSetPos.  Theoretically, KFM is supposed to work for region crossings. According to the LSL wiki, " Inter-region movement is supported; simply specify a target keyframe that would place the object outside the sim boundaries and it will cross over. This seems to provide the same effect as pausing the animation when it is in limbo between the two regions, but the viewer continues to interpolate its movement. It will jump back to the sim border and continue on the same speed, although the time between waypoints will be increased due to the sim crossing. Make sure you factor this into your system. "  In practice, I have never found this to be smooth.  As the note says, "It will jump back to the sim border and continue on the same speed."  In fact, it seems just as likely to lose its way completely when I try it.  ¬¬

 

Awesome!!!

Link to comment
Share on other sites

8 hours ago, Rolig Loon said:

Yes. This doesn't call for an animation, but for some sleight of hand in scripting, which may or may not work.

I'm trying for a subtle effect here. I've developed a fix for the Firestorm viewer that eliminates most bogus motion at region crossings. Instead of bogus motion, the vehicle or avatar stops dead for a second or two at each region crossing. Here's what that looks like. With the old viewer, the boat not only moves strangely at sim crossings, it goes underwater twice. I've written about this over in the "vehicles and sim crossings" topic.

The old behavior was awful, leading to drivers crashing because they tried to make steering corrections when the viewer showed them bogus positions. But for slow sailboats, it looked OK. Up to about walking speed, region crossings on water look good. The boat seems to glide smoothly across the region crossing. Then it is suddenly jerked back when the sim handover completes. The jerk-back is so fast that users can ignore it, and enjoy the peaceful experience of sailing slowly. Some users like that behavior.

So I'm trying to figure out how to give sailors the pleasant experience of a smooth region cross at slow speed without big bogus motion at higher speed. What I want to do is to animate the vehicle and avatars so that they appear to move smoothly across the region boundary during the stall. This means animating them moving forward at slow speed during the stall. This is illusory motion, viewer side only, like all animations, and can run during sim handoff. After the transfer to the new sim, the vehicle and avatar are being displayed ahead of where they really are. We have to take that extra motion back. But rather then moving them back in one big jerk, we do it slowly over 5-10 seconds, more slowly than the real motion is moving them forward. That way, there's always smooth forward motion, although the speed varies a bit. (There's no way of escaping that as long as region crossings take time. But we can mask it.)

This would be a script and animation you put into slow boats to improve the visual experience, similar to a wake animation.

So that's what this is all about. I just want suggestions on the right tools for the job. I may end up creating BVH files from a spreadsheet.

  • Like 1
Link to comment
Share on other sites

On 31.1.2018 at 9:54 AM, animats said:

BVH files from a spreadsheet.

BVH files are intended to describe the skeleton and an animation attached to it in a text format, was born and developed for biped animation, meaning for characters. Plus, linksets do not work hierarchically. 

To answer a question from another previous post, about the measurement unit used in BVH:

Theoretically, meters. SL instead features the expectation that the bvh file's character comes in as a centimeter scale avatar scaled up to inches (*39.37), Y axis up and +Z forward, to then compute it during upload and converts it to meters, Z up and +X forward. You couldn't do avatar animations to create the illusion you were thinking about anyway though, bcause hip translation is limited to 5 meters range in all directions

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 2272 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...