Jump to content

Engine gimbal reaction speed


acc

Recommended Posts

hi kerbonauts and kerboneers,

by building a shuttle-main-engine i found a mysteryous feature with the "tewakable parameter modification", called "gimbal reaction speed". my first thought was: oh, cool, now i can have a engine with high gimbal range, but slow reaction speed, to prevent fast and flippy gimbaling. so i was playing arround with high and low numbers on it, but ingame i saw no effect.

now my questions: is it a outdated or maybe a future feature or do i something wrong with it?

Edited by acc
typing error
Link to comment
Share on other sites

The fields for ModuleGimbal are:

gimbalResponseSpeed - float

useGimbalResponseSpeed - bool

gimbalRange - float

gimbalLock - bool

gimbalTransformName - string

From what I can tell, gimbalResponseSpeed isn't used anywhere unless useGimbalResponseSpeed is set to true

An example would be:


MODULE {
name = ModuleGimbal
gimbalResponseSpeed = 10
useGimbalResponseSpeed = true
gimbalRange = 10
gimbalLock = false
gimbalTransformName = EngineRoot
}

Gimbal Lock appears to be if the gimbal starts off as locked or not, though I'm not sure why you would define this in your config for anything other than VTOL's, but it may be useful.

Hope this helps!

Link to comment
Share on other sites

Thanks a lot! :)

but two questions:

- do higher numbers mean faster or slower?

- what is "gimbalTransformName"? (in your example it's set to "EngineRoot", stock engines are set to "thrustTransform")

the goal i try to reach is a engine with high gimbal range and angles (20 range, 20 angleV, 20 angleH), but with a slow move of the engine bell, because high gimbal range with fast moves makes my shuttle flippy.

Edit:

Ok, i mounted two engines on a testvehicle. one engine with 1 and one engine with 100 gimbal response speed. there was no difference. Both moves from 0 to 20 in zero-time :(

Edited by acc
Link to comment
Share on other sites

Did some digging:

The way module gimbals work is by rotating on the horizontal/vertical axis based yaw/pitch inputs respectively. The "Target" rotation at any time (What you see without the response speed) is simply whatever steering the craft is receiving times the gimbalRange.

The fun comes in with what exactly the gimbalResponseSpeed is- It is, essentially, a scaling factor for the critical damping accomplished by linearly interpolating towards the target. The way to think of it is that each time step, it takes a certain percentage step towards the Target rotation, allot like how when turning on Fine Controls will slow the input. High values make it more responsive, low values make it less responsive, however unfortunately it is relative to physics deltaTime as opposed to being in some form of measurable degrees-per-second. It is however a scalar, so 2 means it is twice as fast as 1, 0.5 makes it twice as slow, etc, and assuming nominal conditions it should converge in about (1/gimbalResponseTime) Seconds, converging faster when under time warp. The way to think about it is basically a scale for the speed of the gimbal, faster is faster and lower is slower, but that it works much like fine controls.

Secondly, gimbalTransformName simply refers to the name of the transform in your part that is actually rotating- Like how for most engines, it's only the exhaust cone that does the rotation, not the engine as a whole. I typed "EngineRoot" only as I didn't have a reference config up at the time.

Link to comment
Share on other sites

its complicated to play with that. first result: values above 1 are not good, makes the engine more flippy. maybe the solution is to make it faster and not slower. i guess that needs a few days more of testing.

but thanks a lot for ur help!

Link to comment
Share on other sites

gimbalResponseSpeed is the change in the value of the gimbal per frame. The gimballing system most likely uses Mathf.Lerp (or Slerp) to change the gimbal of the engine nozzle, and those parameters are startValue, endValue, and changeInValue. So higher values for gimbalResponseSpeed means it will change faster. It's kind of counterintuitive, but understandable.

Basically, Lerp does this: v-k = mt, where v is a function of t, k is the initial value, and m is the change (gimbalResponseSpeed).

Edited by OrbitusII
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...