Jump to content

Wheels Bouncing On Launch, Incurable Bug?


Recommended Posts

After an insane amount of troubleshooting and playing around, finally I have a working free-wheel landing gear, which deploys and retracts.
Everything is working, suspension, steering, friction, I can hardly believe my luck :D

Link:
https://github.com/Tantares/CRE

However! There is one huge final problem, if the craft with these wheels leaves the SPH with them extended, it will "bounce" as the physics load in,  launching the craft metres in the air.
I assume this is because it loads with the colliders in the ground. What determines the height at which wheels are placed off ground if they are the bottom of the vessel?

I've played around with the config for hours on this, but I'm at my wits end, is there a known solution?

Here is my Unity Hierarchy:

WAzQhtK.jpg

mvhbjS7.jpg
izyXm3y.jpg

Doesn't seem to work changing:

  • groundHeightOffset
  • targetPosition
  • suspensionOffset
  • FitWheelColliderToMesh
  • Centre/Radius/Mass/etc

Config, wheel modules only:

MODULE
{
	name = ModuleWheelBase
	
	wheelColliderTransformName = wheelCollider		
	wheelTransformName = wheelPivot
	
	wheelType = FREE

	// setting this to true will override the radius and center parameters
	FitWheelColliderToMesh = False		
	radius = 0.2125
	center = 0,0,0
	mass = 0.04
	groundHeightOffset = 0.875
			
	TooltipTitle = #autoLOC_502080 //#autoLOC_502080 = Landing Gear
	TooltipPrimaryField = #autoLOC_6004048 //#autoLOC_6004048 = Steerable, No Brakes
}
MODULE
{
	name = ModuleWheelSuspension
	baseModuleIndex = 0
	suspensionTransformName = suspensionPivot
	maximumLoad = 10.0
	suspensionDistance = 0.12
	suspensionOffset = 0.0
	targetPosition = 0.0		
	springRatio = 12
	damperRatio = 2.0
}
MODULE
{
	name = ModuleWheelSteering
	baseModuleIndex = 0
	
	caliperTransformName = steeringPivot
	
	steeringResponse = 2		
	steeringCurve
	{
		key = 0 30
		key = 10 9
		key = 30 2
	}
}
MODULE
{
	name = ModuleWheelBrakes
	baseModuleIndex = 0
	
	maxBrakeTorque = 4
	brakeResponse = 1
}
MODULE
{
	name = ModuleWheelDeployment
	baseModuleIndex = 0
	
	animationTrfName = landingGear
	animationStateName = blue_steel_landing_gear_srf_1_deploy
	deployedPosition = 0
	deployTargetTransformName = deployTarget
	
	TsubSys = 1.0
	useStandInCollider = True
	
	fxDeploy = deploy
	fxRetract = retract
	fxDeployed = deployed
	fxRetracted = retracted
}

And my full config:

PART
{
	name = blue_steel_landing_gear_srf_1
	module = Part
	author = Beale
	mesh = model.mu

	MODEL
	{
		model = CRE/parts/_misc_landing_gear/blue_steel/blue_steel_landing_gear_srf_1
		scale = 1, 1, 1
	}
	scale = 1.0
	rescaleFactor  = 1.0

	node_attach = 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1

	bulkheadProfiles = srf

	attachRules = 1,1,1,1,1,0,0,0

	

	TechRequired = aviation
	entryCost = 1500
	cost = 150
	category = Ground
	subcategory = 0
	title = #LOC_cre_blue_steel_landing_gear_srf_1
	manufacturer = #LOC_cre_manufacturer_black_arrow
	description = #LOC_cre_blue_steel_landing_gear_srf_1_description

	tags = #LOC_cre_blue_steel_avionics_s0_1_tags

	
	mass = 0.045
	thermalMassModifier = 4.0 
	// heatConductivity = 0.06
	emissiveConstant = 0.95
	dragModelType = default
	maximum_drag = 0.3
	minimum_drag = 0.2
	angularDrag = 1
	maxTemp = 1000 
	crashTolerance = 325
	breakingForce = 50
	breakingTorque = 50
	PhysicsSignificance = 0

	
	EFFECTS
	{
		deploy
		{
			AUDIO
			{
				channel = Ship
				clip = Squad/Sounds/elev_start
				volume = 0 0
				volume = 1 0.5
				pitch = 0.95
			}
			AUDIO_LOOP
			{
				channel = Ship
				clip = Squad/Sounds/elev_loop
				volume = 0 0
				volume = 1 0.5
				pitch = 0.75
			}
		}
		deployed
		{
			AUDIO
			{
				channel = Ship
				clip = Squad/Sounds/elev_stop
				volume = 0 0
				volume = 1 0.5
				pitch = 0.75
			}
		}
		retract
		{
			AUDIO
			{
				channel = Ship
				clip = Squad/Sounds/elev_stop
				volume = 0 0
				volume = 1 0.5
				pitch = 1.0
			}
			AUDIO_LOOP
			{
				channel = Ship
				clip = Squad/Sounds/elev_loop
				volume = 0 0
				volume = 1 0.5
				pitch = 0.75
			}
		}
		retracted
		{
			AUDIO
			{
				channel = Ship
				clip = Squad/Sounds/elev_start
				volume = 0 0
				volume = 1 0.5
				pitch = 0.95
			}
		}
	}
	
	MODULE
	{
		name = ModuleWheelBase
		
		wheelColliderTransformName = wheelCollider		
		wheelTransformName = wheelPivot
		
		wheelType = FREE

		// setting this to true will override the radius and center parameters
		FitWheelColliderToMesh = False		
		radius = 0.2125
		center = 0,0,0
		mass = 0.04
		groundHeightOffset = 0.875
				
		TooltipTitle = #autoLOC_502080 //#autoLOC_502080 = Landing Gear
		TooltipPrimaryField = #autoLOC_6004048 //#autoLOC_6004048 = Steerable, No Brakes
	}
	MODULE
	{
		name = ModuleWheelSuspension
		baseModuleIndex = 0
		suspensionTransformName = suspensionPivot
		maximumLoad = 10.0
		suspensionDistance = 0.12
		suspensionOffset = 0.0
		targetPosition = 0.0		
		springRatio = 12
		damperRatio = 2.0
	}
	MODULE
	{
		name = ModuleWheelSteering
		baseModuleIndex = 0
		
		caliperTransformName = steeringPivot
		
		steeringResponse = 2		
		steeringCurve
		{
			key = 0 30
			key = 10 9
			key = 30 2
		}
	}
	MODULE
	{
		name = ModuleWheelBrakes
		baseModuleIndex = 0
		
		maxBrakeTorque = 4
		brakeResponse = 1
	}
	MODULE
	{
		name = ModuleWheelDeployment
		baseModuleIndex = 0
		
		animationTrfName = landingGear
		animationStateName = blue_steel_landing_gear_srf_1_deploy
		deployedPosition = 0
		deployTargetTransformName = deployTarget
		
		TsubSys = 1.0
		useStandInCollider = True
		
		fxDeploy = deploy
		fxRetract = retract
		fxDeployed = deployed
		fxRetracted = retracted
	}

	
}

 

Edited by Beale
Link to comment
Share on other sites

  • 2 weeks later...

This doesn't sound like quite the same situation but I'll throw them out there anyway.

One standard (non-deployable) wheel that had extreme bounce on load had two colliders (collision enhancer and base collider) intersecting - corrected that and the wheel behaved much better.

A landing leg that would bounce during deploy benefited from a lower TsubSys - though this as I understand it is where the wheel collider cuts in in the deploy sequence so probably not applicable to you situation but I don't know what happens during load.

In a third case a standard wheel bounces multiple meters on load - the wheel is the same setup as another wheel that behaves fine - just different model.

Good luck!

Edit: Playing with some wheels that bounced to the point of being unusable and found that a number of them behave much better if I have a collision enhancer that's 80% of the tire radius or bigger. Would have sworn I had tried this before without any noticeable effect.

 

Edited by wasml
Extra info
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...