Jump to content

Gimbal acutators help


Recommended Posts

So I've been busy modeling quite a few engines lately, some fictional and some real-world. I made sure to model them as close to 100% identical as possible, but this presented me with a problem I had not given any thought prior to modeling.

All these engines, especially the real-world ones have acutators which are used for engine gimbal. The acutators usually consists of 6-7 components making up the different anchor points, pistons, pivots and so on. How do I go about setting up the acutators to work in the game? I know there are a few people in the community who have engines that are set up like this, and I believe they use some kind of look constraint.

However, I have no idea how the hierarchy is supposed to be set up. Which parts needs to be parented to which, and which ones needs to look at each other. All of this really confuses me, and I would greatly appreciate any help and/or tutorial on how to do this.

I think having a good tutorial on how to set up acutators would encourage a lot more people to make more realistic engines, which in turn benefits us all.

Thank you in advance to anyone willing to help out!

Link to comment
Share on other sites

You have to compromise for the sake of your own sanity, unless you enjoy setting up constraints for dozens of actuators. Numbers quickly add up considering each actuator group consists at least 2 or more pieces. In game set up really depends on the engine. Some cheat with single transform, while others set up individual constraints per. 

There're 3 different constraints in KSP; LookAt; Position; Orientation. It's not really feasible to do a step-by-step kind of tutorial as they can be combined in numerous ways to move things in game different ways.

LookAt points a transform's Z+ at another transform; there's no upVector control so you will get flips if the target transform moves around a lot. Almost all landing gear; wheel; leg parts use this. rotator does the looking; target gets looked-at. 

    MODULE
    {
        name = FXModuleLookAtConstraint            
        CONSTRAINLOOKFX                      // repeat for as many as you need inside of MODULE{FXModuleLookAtConstraint}
        {
            targetName = getsLookedAt
            rotatorsName = doesTheLooking
        }

}


Position places one transform at another transform's position.
Orientation sets one transform's orientation to match another transform. This is in World rotation, so if mover's orientation was offset from the target, it will snap to match the target's orientation.
Position and Orientation are both part of same module; Position and Orientation have no offsets so if you need offset, you have to nest multiple transforms.

  

 MODULE
    {
        name = FXModuleConstrainPosition        
        matchRotation = true
        matchPosition = false
        CONSTRAINFX                               // constrain block; repeat for as many as you need inside of MODULE{FXModuleConstrainPosition}
        {
            targetName = targetTransformName
            moversName = affectedTransformName
        }

}

 

Edited by nli2work
Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...