Jump to content

Free primcontrol HUD — Easy Keyframe Animation -- Easy Prim Torture — Beta *7* Avaiable

Rufus Darkfold

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

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

Recommended Posts

BETA 7 is now available.  

Primcontrol can now generate LSL code for flexiprims, texture animation,  color and light parameters, particles, keyframed motion, and target omega.

Keyframer now supports looping animations, and allows the range of the "move" control and the resolution of the "rotate" control to be set,

New texture animation screen.

Dialogger now supports dropdown menus.

Can be obtained at Flexi Tribe:


Join "Navigator Users" to get updates.  




Primcontrol is a HUD to manipulate prims in a linkset in various ways.  It utilizes the primset script which should be installed in the root of the target.   This allows the HUD to operate on the entire linkset or any subset thereof, instead of only one prim at a time as the viewer does.

The HUD uses an upgraded version of dialogger to create screens for keyframed motion, flexi, light, color, target omega, particles, and prim torture. 

The HUD is moveable and resizable without going into edit mode.

It's Free,  full-perms,  and open-source.

Extensible top-level menu. This simply displays a button for each script in its inventory that starts with "top-" and activates the corresponding script  when the button is clicked.   New items can be added to this menu by creating scripts with the "top-" prefix.


"charttracker" runs the charttracker mapping HUD.

"dialogger" provides an empty dialogger window for your objects to use.

"primcontrol" brings up the main screen of primcontrol:



Keyframed Motion Editor:



Particles required 2 screens.  On the left you can see the particles being emitted by the target object.



The control for each paramter utilizes a single prim, even though it may have up to 3 sliders.

 Texture Animation:


Flexi, currently targeting the cape my avatar is wearing.  I use this to control my hair on the fly as well:



Light,  targeting the prim to the right of the glowing one:




Also included is a new version of the charttracker mapper in the same HUD.  Plots your SL position on any map.   On-map avatar radar, banline checking, flight assist.



 Click on the map to get a "Places" tab:



Click on an orange avatar marker to get an avatar profile:



Map Selection dialog:



Caveats for Using the Non-Physical Vehicle Script in Your Own Vehicle:

1. If you use the script from the non-physical vehicle in your own vehicle,  note the llSetPrimitiveParms calls in the changed handler.    These are intended to open and close the sphere.   If it wasn't a sphere before,  this will make it one.   Remove that code if your vehicle is anything else.

2. Your vehcile will need at least one prim with physics set to convex hull or none.


  • Like 1
Link to comment
Share on other sites

I have sent it to you in-world.

Charttracker and Primcontrol are in the same HUD.   Click the 2nd button on the top bar (with the globe on it) for Charttracker.    If Charttracker is running, primcontrol scripts are deactivated and visa-versa, so the overhead of having both there should be minimal.

It comes with road maps of the continents, you can get a map of the current sim (or block of 4, 16, or 64 sims), or you can add your own maps.   I created a map of my own extremely oddly-shaped property to help me plan and place my stuff without encroaching on the neighbors.  That map is also included as an example.  Configuration of a new map is one line on a notecard.

There is aslo the "Mapper" HUD in the package, which maps the current sim and all the surrounding ones.   That HUD may be more useful in cases where you are traversing multiple sims and don't have any special maps you want to use.


Link to comment
Share on other sites

  • 1 month later...
  • 3 weeks later...

The non-physical vehicle has now been upgraded to use the new llSetKeyframeMotion API for smooth movement.   The new version moves as smoothly as a physical vehicle and seems to handle sim crossings far better.   It can go underground. 

A new version of primset is included that supports llSetKeyframeMotion, and a Keyframe Motion page has been added to the PrimControl HUD.

Beta 4 will be released in a few days.


Link to comment
Share on other sites


(updated for Beta 4 update 1)

The Keyframe Motion PrimControl page  executes each action immediately if "Defer" is off (red), or builds up a keyframe list if Defer is on (green).   In Defer mode,  each action is performed, then the object is yanked back to the previous position.

The "Step" button adds the currently-displayed movement, rotation, and time to the keyframe list.   In Defer mode, it then runs that step of the animation, leaving the prim where that step left it  (in immediate mode it already has been run).

"Send" sends the list.

"Clear" clears the list.

"PingPong" makes the animation pingpong instead of just playing once.

"Snap to 45" will round the Euler version of the rotation to the nearest multiple of 45 degrees in each dimension.

To just send the same list again, click "DEFER" twice.

"Start" starts or resumes the last animation played.  "Stop", and "Pause" stop one if it is playing.  A subsequent "Start" will start from the beginning in the case of "Stop",  or from where it left off in the case of "Pause". 

The list is chatted when it is sent.   This can be cut and pasted into your script.

The last animation played appears to be a persistent prim property which survives taking into inventory, copying, etc.


Link to comment
Share on other sites

Sometimes when you click on "Rotate",  you will get:

Error: delta rotation at frame 0 contains a NaN, Inf, or is not a normalized rotation

The error is not fatal,  but the animation does not run.   If it occurs,  try clicking a different value until the object stops generating errors and starts moving again. 

If you have an animation step saved that does that, you can edit it to change or remove the offending step.  Breaking the rotation up into 2 steps will almost always fix it.

It seems to occur more often if you are rotating in more than one axis at a time,  but a single-axis rotation triggers it occasionally, and multi-axis rotations usually succeed.  As the rotations are all generated by llEuler2Rot, I don't think this error should be occurring and am considering a JIRA.

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 4075 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

  • Create New...