• Problème voiture


    1467478548-sans-titre-1.png

    Comme l’image peut le montrer, mon premier modèle est défaillant.

    J’ai un soucis de suspension ou autre chose je ne sais pas, mais mon modèle à des suspensions très souples et les roues sont clairement en lévitaion (ou plutot suspension enfoncée vers le haut.)

    Ceci est un message de détresse ^^

    Est-ce que quelqu’un aurait une idée de quoi modifier ou pourrait m’aider ?

    Merci beaucoup :)

    Cordialement.

    (PhysX du sample)

    Au passage je remercie beaucoup Lulu pour ses Tutos YouTube, Tony pour son aide lors de mes débuts et de Corentin pour l’anim, les fichiers configs et les quelques soucis que j’ai eu ensuite ^^.

  • je suis pas une flêche dans le modding mes je crois que le model 3D quand tes dans object builder tu dois mettre les roues en dessous de la ligne rouge ! ^^ j’espère que ses sa :) sur ceux bonne soirée !

    text alternatif

    Rien a en dire sur moi !
    je prouve rien a personne , je n'attend rien de vous .

  • @Charli03

    A tu mis les bound sous les roue dans les memory ?

    Souvent imité, jamais égalé !
    Mon Image
    Chaine de Bartabactext alternatif

  • @Charli03

    A tu mis les bound sous les roue dans les memory ?

    Oui, en fait j’ai réussit à rapprocher les roues du sol, mais elles continuent de “voler” en virage (a gauche ou a droite selon le virage)

  • Sois c’est tes bounds ou tes landcontact, ou alors ta géométrie (répartition du poids, masse totale, physx.hpp)

    Je pense que ton physx.hpp n’est pas si original que ça ^^ Peux-tu me dire le poids de ton véhicule ? et envoyer un screen de ta géo ? je pense savoir d’où ça vient mais je tiens à en être sûr ;)

    Besoin d'aide ? Envoie moi un message privé ;)
    Moddeur & unique développeur chez RealLife-RPG.com

  • @Benoit Katecpo

    J’ai réussit à la descendre un peu mais pas jusqu’au sol,

    Elle pèse environ 1,5 T, et voici ma géo et mes memory

    1467553717-sans-titre-3.png

    1467553887-sans-titre-4.png

    1467553709-sans-titre-1.png

    1467553709-sans-titre-2.png

  • @Charli03

    Tu as peut être changé le poids, mais pas les valeurs de la suspension, ta voiture écrase donc les suspensions qui ne sont pas assez puissantes pour la soutenir, il faut que tu touches au Physx.hpp, et là tu vas avoir les joies de ArmA 3 et de la suspension…

    Besoin d'aide ? Envoie moi un message privé ;)
    Moddeur & unique développeur chez RealLife-RPG.com

  • @Benoit Katecpo

    Voilà mon physx, repris sur la base du sample ….

    C’est la suspension qui serait la cause de ma lévitation de roue ?

    Parce que normalement, dans tout les cas les roues devraient toucher le sol

                    thrustDelay            	= 0.1; 		/// initial delay to cause lesser slip when on 1st gear - thrust goes from zero to full in this time  
    		brakeIdleSpeed         	= 1.78; 	/// under what speed (in m/s) does the brake apply for a vehicle without thrust  
    		maxSpeed               	= 310; 		/// vehicle can go a bit over, but dramatically decreases thrust  
    		fuelCapacity           	= 45;   
    		wheelCircumference     	= 2.277; 	/// diameter of 725  
    
    		antiRollbarForceCoef	= 0; 	/// how strong is the anti-roll bar of vehicle preventing it to lose grip in turns (not any magical stuff, real ARB)  
    		antiRollbarForceLimit	= 0; 	/// highest possible force of ARB  
    		antiRollbarSpeedMin 	= 0; 	/// the roll bar force gets from zero to full in range of min and max speed  
    		antiRollbarSpeedMax		= 0;  	/// this simulates losing grip at high speed turns  
    
    		/// Gearbox and transmission  via PhysX  
    		idleRpm = 900; // RPM at which the engine idles.  
    		redRpm = 6900; // RPM at which the engine redlines.  
    
    		class complexGearbox  
    		{	  
    			GearboxRatios[] = {"R1", -3.231, "N", 0, "D1", 4.462, "D2", 3.57, "D3", 2.571, "D4", 1.97, "D5", 1.601, "D6", 0.9, "D7", 0.65};			  
    			TransmissionRatios[] = {"High",4.111}; // Optional: defines transmission ratios (for example, High and Low range as commonly found in offroad vehicles)  
    			gearBoxMode        = "auto"; //gearbox can be of type: full-auto (only requires 'W' or 'S'), auto (requires shift between drive and reverse), semi-auto, manual  
    			moveOffGear        = 1; // defines what gear an automatic or semi-automatic gearbox will move off from stationary in. 1 by default.  
    			driveString        = "D"; // string to display in the HUD for forward gears.  
    			neutralString      = "N"; // string to display in the HUD for neutral gear.  
    			reverseString      = "R"; // string to display in the HUD for reverse gears.  
    			transmissionDelay = 0.01;  
    		};		  
    
    		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    		/// PhysX parameters  
    		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    		// <Description>: Defines simulation type of the vehicle. PhysX simulation ends with letter "x", "carx", "tankx" ...  
    		// <Type>: string  
    		// <Default>: (required)  
    		simulation = "carx";  
    
    		// <Description>: Defines how much dampers react to random little bumps on surface. It's only visual effect, doesn't influence drive simulation,  
    		// only taken into account when calculating damper animation.  
    		// <Type>: float  
    		// <Default>: 0.0  
    		dampersBumpCoef = 0.01;  
    
    		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    		// Differential parameters  
    		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    		// <Description>: A number of differential types are supported: 4-wheel drive with open differential, 4-wheel drive with limited slip, front-wheel drive   
    		// with open differential, front-wheel drive with limited slip, rear-wheel drive with open differential, rear-wheel drive with limited slip.  
    		// <Type>: string; acceptable values: "all_open", "all_limited", "front_open", "front_limited", "rear_open", "rear_limited"  
    		// <Default>: "all_limited"  
    		differentialType = "all_open";  
    
    		// <Description>: Ratio of engine power that goes to front wheels out of total power for 4-wheel drive differentials.   
    		// Choosing a value greater than 0.5 delivers more torque to the front wheels, while choosing a value less than 0.5   
    		// delivers more torque to the rear wheels. This value is ignored for front-wheel drive and rear-wheel drive differentials.  
    		// <Type>: float  
    		// <Default>: 0.5  
    		frontRearSplit = 0.3;  
    
    		// <Description>: This is the largest possible relative difference between speed of front wheels. It helps to have outside wheels a bit faster  
    		// during the turns, but it prevents the faster wheel to take all the power while sliding. The power is shifted to slower wheel once the value is reached.  
    		// Locked differential has value of 1, the softer is the lock the greater should the value be.  
    		// This value is ignored except for front-wheel drive or four wheel drive with limited slip.  
    		// A good starting value is around 1.3.  
    		// <Type>:   
    		// <Default>:   
    		frontBias = 1.5;  
    
    		// <Description>: This is similar to frontBias except that it refers to the rear wheels.  
    		// This value is ignored except for rear-wheel drive or four wheel drive with limited slip.  
    		// A good starting value is around 1.3.  
    		// <Type>: float  
    		// <Default>: 1.3  
    		rearBias = 1.5;  
    
    		// <Description>: This value is similar to the frontBias and rearBias, except that it refers to the sum of the front wheel rotation speeds and the sum   
    		// of the rear wheel rotation speeds.  
    		// This value is ignored except for four wheel drive with limited slip.  
    		// A good starting value is around 1.3.  
    		// <Type>: float  
    		// <Default>: 1.3  
    		centreBias = 2.5;  
    
    		// <Description>: How fast is engine power distributed to the wheels. Stronger values mean more aggressive drive performance inclining to  
    		// slip a little while changing gears while weaker values are better for comfortable seamless ride.  
    		// <Type>: float  
    		// <Default>: 10.0  
    		clutchStrength = 75.0;  
    
    		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    		// Engine parameters  
    		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    		// <Description>: Power of the engine in kW.  
    		// <Type>: float  
    		// <Default>: (required)  
    		enginePower = 600;   
    
    		// <Description>: This is the maximum rotational speed of the engine expressed in radians per second. It could be calculated from maximum   
    		// engine RPM like this:   
    		// maxOmega = (maxRpm*2*Pi)/60.  
    		// <Type>: float  
    		// <Default>: 600 which is cca 6000 rounds per minute.  
    		maxOmega = 720;  
    
    		// <Description>: This is the maximum torque that is ever available from the engine. This is expressed in Newton metres.   
    		// <Type>: float  
    		// <Default>: value calculated from enginePower according to http://en.wikipedia.org/wiki/Horsepower#Relationship_with_torque  
    		peakTorque = 800;  
    
    		// <Description>: These three values describe internal damping of the engine. Bigger values mean greater damping. Clutch disengaged value   
    		// is used while shifting gears, engine interpolates between clutch engaged and full throttle values according to throttle input.  
    		// We tend to use slightly lower clutch engaged values because it allows cars to turn more smoothly.  
    		// Typical values in range (0.25,3). The simulation can become unstable with damping rates of 0.  
    		// <Type>: float, float, float  
    		// <Default>: 0.08, 2.0, 0.35  
    		dampingRateFullThrottle = 0.03;  
    		dampingRateZeroThrottleClutchEngaged = 0.35;  
    		dampingRateZeroThrottleClutchDisengaged = 0.35;		  
    
    		// <Description>: This is a graph of peak torque versus engine rotational speed.  
    		// The x-axis of the curve is the relative engine speed; that is, the engine speed divided by the maximum engine speed. The y-axis of the curve is a   
    		// multiplier in range (0,1) that is used to scale the peak torque. It is good to keep the values in mind while setting changeGearMinEffectivity.  
    		// <Type>: Array[i][2] where i = number of samples, maximum 8;  
    		// <Default>: {{0.0, 0.8}, {0.33, 1.0}, {1.0, 0.8}}  
    		torqueCurve[] = {{0, 0}, {0.2, 0.65}, {0.3, 0.8}, {0.4, 0.95}, {0.6, 1}, {0.7, 0.95}, {0.9, 0.9}, {1, 0.5}};  
    
    		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    		// Gearbox parameters  
    		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    		// <Description>: Value of minimal gear effectivity to hold current gear. If there is better gear and effectivity is below this value then change gear.  
    		// <Range>: (0,1)  
    		// <Type>: Array[i] where i = number of gears  
    		// <Default>: 0.95 for every value (Neutral = 0.15 Not sure how important this is but we want to kick out of neutral very quickly)  
    		changeGearMinEffectivity[] = {0.95, 0.15, 0.98, 0.98, 0.98, 0.98, 0.97, 0.95, 0.95};  
    
    		// <Description>: The switch time describes how long it takes (in seconds) for a gear change to be completed. This needs to be set to aggresive shifting  
    		// or it would cause issues while trying to run aggressively (mainly during evading the enemies).  
    		// <Type>: float  
    		// <Default>: 0.01  
    		switchTime = 0.11;  
    
    		// <Description>: Set the latency time of the gearbox, specified in s.  
    		// This is used to prevent instant shifting after changing gears - there is some power loss during gear change and it could seem that  
    		// previous gear is better for a brief time after shifting.  
    		// <Type>: float  
    		// <Default>: 2.0  
    		latency = 1.0;  
    
    		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    		// Wheels parameters  
    		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    		class Wheels  
    		{  
    			class LF  
    			{  
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// General parameters  
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// <Description>: Name of the bone, used for wheel and suspension animations.  
    				// <Type>: string  
    				// <Default>: ""  
    				boneName = "wheel_1_1_damper";  
    
    				// <Description>: If true, wheel is steerable, false - wheel is fixed.  
    				// <Type>: bool  
    				// <Default>: (required)  
    				steering = true;  
    
    				// <Description>: Defines if wheel is on the right or left side of the vehicle  
    				// <Type>: string  
    				// <Default>: "right"  
    				side = "left";  
    
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// Wheel PX parameters  
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// <Description>: Center of the wheel (axis)  
    				// <Type>: memory point  
    				// <Default>: (required)  
    				center   = "wheel_1_1_axis";  
    
    				// <Description>: Point on the outside rim of the tire, used to calculate radius of the wheel (distance between center and boundary).  
    				// <Type>: memory point  
    				// <Default>: (required)  
    				boundary = "wheel_1_1_bound";  
    
    				// <Description>: This is the weight in kg of wheel including both rim and tyre.  
    				// <Type>: float  
    				// <Default>: 10.0  
    				mass = 20;  
    
    				// <Description>: This is the wheel's moment of inertia about the rolling axis. Smaller values result in more slips in aggresive driving  
    				// while larger hamper the gain of speed. Good base to start with is this formula:  
    				// MOI = 0.5 * Mass * Radius * Radius  
    				// Some tweaking is needed after the computation, but it is still better than nothing.  
    				// <Type>: float  
    				// <Default>: 0.5 * WheelMass * WheelRadius * WheelRadius  
    				MOI = 6.3;  
    
    				// <Description>:The damping rate describes the rate at which a freely spinning wheel loses rotational speed.   
    				// Values in range (0.25, 2) seem like sensible values. Experimentation is always a good idea, even outside this range.  
    				// <Type>: float  
    				// <Default>: 0.1  
    				dampingRate = 0.5;  
    
    				// <Description>: This is the value of the torque applied to the wheel when the brakes are maximally applied. Higher torques will lock the wheel   
    				// quicker when braking, while lower torques will take longer to lock the wheel.  
    				// A value of around 1500 is a good starting point for a vanilla wheel but a google search will reveal typical braking torques. One difficulty is   
    				// that these are often expressed by manufacturers as braking horsepower or in "pounds inches". The values required here are in "Newton metres".  
    				// <Type>: float  
    				// <Default>: 2500  
    				maxBrakeTorque = 10000;  
    
    				// <Description>: This is the same as the max brake torque except for the handbrake rather than the brake. Typically, for a 4-wheeled car,   
    				// the handbrake is stronger than the brake and is only applied to the rear wheels. A value of 4000 for the rear wheels is a good starting point,   
    				// while a value of 0 is necessary for the front wheels to make sure they do not react to the handbrake.  
    				// <Type>: float  
    				// <Default>: 2*maxBrakeTorque  
    				maxHandBrakeTorque = 8000;  
    
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// Wheel simulation parameters  
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// <Description>: This is the direction of the suspension in the downward direction in the rest configuration of the vehicle. A vector that   
    				// points straight downwards is a good starting point.  
    				// <Type>: Array[3]  
    				// <Default>: {0, -1, 0}  
    				suspTravelDirection[] = {0, -1, 0};  
    
    				// <Description>: This is the application point of the suspension force.  
    				// <Type>: memory point  
    				// <Default>: center  
    				suspForceAppPointOffset = "wheel_1_1_axis";  
    
    				// <Description>: This is almost the same as the suspension force app point except for the lateral and longitudinal forces that develop on the tire.  
    				// A good starting point is to duplicate the suspension force application point.  
    				// <Type>: memory point  
    				// <Default>: suspForceAppPointOffset  
    				tireForceAppPointOffset = "wheel_1_1_axis";  
    
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// Suspension parameters  
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// <Description>: These values describe the maximum compression and elongation in metres that the spring can support.  
    				// <Type>: float  
    				// <Default>: 0.15  
    				maxCompression = 0.1;  
    				mMaxDroop = 0.05;  
    
    				// <Description>: This is the mass in kg that is supported by the suspension spring.  
    				// <Type>: float  
    				// <Default>: vehicleMass/numberOfWheels  
    				sprungMass = 350.0;  
    
    				// <Description>: This is the strength of the suspension spring in Newtons per metre.  
    				//   springStrength = naturalFrequency * naturalFrequency * sprungMass  
    				// <Type>: float  
    				// <Default>: sprungMass*5,0*5,0  
    				springStrength = 56000;  
    
    				// <Description>: This describes the rate at which the spring dissipates the energy stored in the spring.  
    				// Basic equiation for this is  
    				//  springDamperRate = dampingRatio * 2 * sqrt(springStrength * sprungMass)  
    				// where dampingRatio = 1 mean critical damping (critically damped pendulum should get back to start point in every swing)  
    				// <Type>: float  
    				// <Default>: 0,4*2*sqrt(springStrength*sprungMass)  
    				springDamperRate = 3880;  
    
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// Tire parameters  
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// <Description>: Increasing this value will result in the tire attempting to generate more longitudinal force when the tire is slipping.    
    				// Typically, increasing longitudinal stiffness will help the car accelerate and brake. The total tire force available is limited by the   
    				// load on the tire so be aware that increases in this value might have no effect or even come at the expense of reduced lateral force.  
    				// <Type>: float   
    				// <Default>: 10000  
    				longitudinalStiffnessPerUnitGravity = 100000;  
    
    				// <Description>: These values together describe the lateral stiffness per unit lateral slip (in radians) of the tire.  
    				// <Type>: float, float  
    				// <Default>: 25, 180  
    				latStiffX = 250;  
    				latStiffY = 1800;  
    
    				// <Description>: These six values describe a graph of friction as a function of longitudinal slip.   
    				// A good starting point for this is a flat graph of friction vs slip with these values:  
    				// frictionVsSlipGraph[0][0]=0.0  
    				// frictionVsSlipGraph[0][1]=1.0  
    				// frictionVsSlipGraph[1][0]=0.5  
    				// frictionVsSlipGraph[1][1]=1.0  
    				// frictionVsSlipGraph[2][0]=1.0  
    				// frictionVsSlipGraph[2][1]=1.0  
    				// <Type>: Array[3][2]  
    				// <Default>: {{0, 1}, {0.5, 1}, {1,1}}  
    				frictionVsSlipGraph[] = {{0, 1}, {0.5, 1}, {1,1}};  
    			};  
    			class LR: LF  
    			{  
    				boneName = "wheel_1_2_damper";  
    				steering = false;  
    				center   = "wheel_1_2_axis";  
    				boundary = "wheel_1_2_bound";  
    				suspForceAppPointOffset = "wheel_1_2_axis";  
    				tireForceAppPointOffset = "wheel_1_2_axis";		  
    			};  
    			class RF: LF  
    			{  
    				boneName = "wheel_2_1_damper";  
    				center   = "wheel_2_1_axis";  
    				boundary = "wheel_2_1_bound";  
    				suspForceAppPointOffset = "wheel_2_1_axis";  
    				tireForceAppPointOffset = "wheel_2_1_axis";  
    				steering = true;  
    				side = "right";  
    			};  
    			class RR: RF  
    			{  
    				boneName = "wheel_2_2_damper";  
    				steering = false;  
    				center   = "wheel_2_2_axis";  
    				boundary = "wheel_2_2_bound";  
    				suspForceAppPointOffset = "wheel_2_2_axis";  
    				tireForceAppPointOffset = "wheel_2_2_axis";				  
    			};  
    		};  
    
  • @Charli03

    Eh bien non, avec Nvidia pas dans tous les cas, ça se voit que tu n’as jamais touché aux suspensions ^^ Si tu modifies le poids de ton véhicule, tu dois modifier les suspensions, sinon, tu as sois un véhicule écrasé, sois en l’air, c’est pour ça que certains véhicules touchent pas le sol.

    Tu dois bien mettre le bound et les landcontacts en dessous de la roue, ne joue pas avec ça, si tu joues avec pour requalibrer la suspension, ça veut dire que tu as foiré quelque chose…

    Je t’invite donc à réaliser les calculs dans les class LF, RF, LR, RR, les calculs sont donnés ;)

    Besoin d'aide ? Envoie moi un message privé ;)
    Moddeur & unique développeur chez RealLife-RPG.com

  • @Benoit Katecpo

    LF, RF, LR et RR ? A quoi ça correspond sur le physx ?

    Et non c’est mon premier modèle, le seul que j’ai de fonctionnel.

  • @Charli03

    Tu vas vite connaitre les joies de Bohemia ^^

    LF, RF, LR, RR correspondent aux class que tu as dans ton physx :

    	class Wheels  
    		{  
    			class LF  
    			{  
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// General parameters  
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// <Description>: Name of the bone, used for wheel and suspension animations.  
    				// <Type>: string  
    				// <Default>: ""  
    				boneName = "wheel_1_1_damper";  
    
    				// <Description>: If true, wheel is steerable, false - wheel is fixed.  
    				// <Type>: bool  
    				// <Default>: (required)  
    				steering = true;  
    
    				// <Description>: Defines if wheel is on the right or left side of the vehicle  
    				// <Type>: string  
    				// <Default>: "right"  
    				side = "left";  
    
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// Wheel PX parameters  
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// <Description>: Center of the wheel (axis)  
    				// <Type>: memory point  
    				// <Default>: (required)  
    				center   = "wheel_1_1_axis";  
    
    				// <Description>: Point on the outside rim of the tire, used to calculate radius of the wheel (distance between center and boundary).  
    				// <Type>: memory point  
    				// <Default>: (required)  
    				boundary = "wheel_1_1_bound";  
    
    				// <Description>: This is the weight in kg of wheel including both rim and tyre.  
    				// <Type>: float  
    				// <Default>: 10.0  
    				mass = 20;  
    
    				// <Description>: This is the wheel's moment of inertia about the rolling axis. Smaller values result in more slips in aggresive driving  
    				// while larger hamper the gain of speed. Good base to start with is this formula:  
    				// MOI = 0.5 * Mass * Radius * Radius  
    				// Some tweaking is needed after the computation, but it is still better than nothing.  
    				// <Type>: float  
    				// <Default>: 0.5 * WheelMass * WheelRadius * WheelRadius  
    				MOI = 6.3;  
    
    				// <Description>:The damping rate describes the rate at which a freely spinning wheel loses rotational speed.   
    				// Values in range (0.25, 2) seem like sensible values. Experimentation is always a good idea, even outside this range.  
    				// <Type>: float  
    				// <Default>: 0.1  
    				dampingRate = 0.5;  
    
    				// <Description>: This is the value of the torque applied to the wheel when the brakes are maximally applied. Higher torques will lock the wheel   
    				// quicker when braking, while lower torques will take longer to lock the wheel.  
    				// A value of around 1500 is a good starting point for a vanilla wheel but a google search will reveal typical braking torques. One difficulty is   
    				// that these are often expressed by manufacturers as braking horsepower or in "pounds inches". The values required here are in "Newton metres".  
    				// <Type>: float  
    				// <Default>: 2500  
    				maxBrakeTorque = 10000;  
    
    				// <Description>: This is the same as the max brake torque except for the handbrake rather than the brake. Typically, for a 4-wheeled car,   
    				// the handbrake is stronger than the brake and is only applied to the rear wheels. A value of 4000 for the rear wheels is a good starting point,   
    				// while a value of 0 is necessary for the front wheels to make sure they do not react to the handbrake.  
    				// <Type>: float  
    				// <Default>: 2*maxBrakeTorque  
    				maxHandBrakeTorque = 8000;  
    
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// Wheel simulation parameters  
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// <Description>: This is the direction of the suspension in the downward direction in the rest configuration of the vehicle. A vector that   
    				// points straight downwards is a good starting point.  
    				// <Type>: Array[3]  
    				// <Default>: {0, -1, 0}  
    				suspTravelDirection[] = {0, -1, 0};  
    
    				// <Description>: This is the application point of the suspension force.  
    				// <Type>: memory point  
    				// <Default>: center  
    				suspForceAppPointOffset = "wheel_1_1_axis";  
    
    				// <Description>: This is almost the same as the suspension force app point except for the lateral and longitudinal forces that develop on the tire.  
    				// A good starting point is to duplicate the suspension force application point.  
    				// <Type>: memory point  
    				// <Default>: suspForceAppPointOffset  
    				tireForceAppPointOffset = "wheel_1_1_axis";  
    
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// Suspension parameters  
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// <Description>: These values describe the maximum compression and elongation in metres that the spring can support.  
    				// <Type>: float  
    				// <Default>: 0.15  
    				maxCompression = 0.1;  
    				mMaxDroop = 0.05;  
    
    				// <Description>: This is the mass in kg that is supported by the suspension spring.  
    				// <Type>: float  
    				// <Default>: vehicleMass/numberOfWheels  
    				sprungMass = 350.0;  
    
    				// <Description>: This is the strength of the suspension spring in Newtons per metre.  
    				//   springStrength = naturalFrequency * naturalFrequency * sprungMass  
    				// <Type>: float  
    				// <Default>: sprungMass*5,0*5,0  
    				springStrength = 56000;  
    
    				// <Description>: This describes the rate at which the spring dissipates the energy stored in the spring.  
    				// Basic equiation for this is  
    				//  springDamperRate = dampingRatio * 2 * sqrt(springStrength * sprungMass)  
    				// where dampingRatio = 1 mean critical damping (critically damped pendulum should get back to start point in every swing)  
    				// <Type>: float  
    				// <Default>: 0,4*2*sqrt(springStrength*sprungMass)  
    				springDamperRate = 3880;  
    
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// Tire parameters  
    				/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////  
    				// <Description>: Increasing this value will result in the tire attempting to generate more longitudinal force when the tire is slipping.    
    				// Typically, increasing longitudinal stiffness will help the car accelerate and brake. The total tire force available is limited by the   
    				// load on the tire so be aware that increases in this value might have no effect or even come at the expense of reduced lateral force.  
    				// <Type>: float   
    				// <Default>: 10000  
    				longitudinalStiffnessPerUnitGravity = 100000;  
    
    				// <Description>: These values together describe the lateral stiffness per unit lateral slip (in radians) of the tire.  
    				// <Type>: float, float  
    				// <Default>: 25, 180  
    				latStiffX = 250;  
    				latStiffY = 1800;  
    
    				// <Description>: These six values describe a graph of friction as a function of longitudinal slip.   
    				// A good starting point for this is a flat graph of friction vs slip with these values:  
    				// frictionVsSlipGraph[0][0]=0.0  
    				// frictionVsSlipGraph[0][1]=1.0  
    				// frictionVsSlipGraph[1][0]=0.5  
    				// frictionVsSlipGraph[1][1]=1.0  
    				// frictionVsSlipGraph[2][0]=1.0  
    				// frictionVsSlipGraph[2][1]=1.0  
    				// <Type>: Array[3][2]  
    				// <Default>: {{0, 1}, {0.5, 1}, {1,1}}  
    				frictionVsSlipGraph[] = {{0, 1}, {0.5, 1}, {1,1}};  
    			};  
    			class LR: LF  
    			{  
    				boneName = "wheel_1_2_damper";  
    				steering = false;  
    				center   = "wheel_1_2_axis";  
    				boundary = "wheel_1_2_bound";  
    				suspForceAppPointOffset = "wheel_1_2_axis";  
    				tireForceAppPointOffset = "wheel_1_2_axis";		  
    			};  
    			class RF: LF  
    			{  
    				boneName = "wheel_2_1_damper";  
    				center   = "wheel_2_1_axis";  
    				boundary = "wheel_2_1_bound";  
    				suspForceAppPointOffset = "wheel_2_1_axis";  
    				tireForceAppPointOffset = "wheel_2_1_axis";  
    				steering = true;  
    				side = "right";  
    			};  
    			class RR: RF  
    			{  
    				boneName = "wheel_2_2_damper";  
    				steering = false;  
    				center   = "wheel_2_2_axis";  
    				boundary = "wheel_2_2_bound";  
    				suspForceAppPointOffset = "wheel_2_2_axis";  
    				tireForceAppPointOffset = "wheel_2_2_axis";				  
    			};  
    		};  
    

    Tout est expliqué en commentaire pour la première roue (car oui ça correspond à la déclaration des roues), à toi de tout modif pour que ça corresponde avec ce que tu as mis ;)

    Besoin d'aide ? Envoie moi un message privé ;)
    Moddeur & unique développeur chez RealLife-RPG.com

  • @Benoit Katecpo , mais je ne vois pas quoi modifier, quand je change les valeurs de “spring” donc de raideur ressort, mon véhicule a donc une suspension plus souple mais mes roues restent “volantes”, et d’ailleurs des roues pétées touchent correctement le sol.

  • @Charli03

    La mass, le MOI et tout ça :

    // <Description>: This is the mass in kg that is supported by the suspension spring.  
    				// <Type>: float  
    				// <Default>: vehicleMass/numberOfWheels  
    				sprungMass = 350.0;  
    
    				// <Description>: This is the strength of the suspension spring in Newtons per metre.  
    				//   springStrength = naturalFrequency * naturalFrequency * sprungMass  
    				// <Type>: float  
    				// <Default>: sprungMass*5,0*5,0  
    				springStrength = 56000;  
    
    				// <Description>: This describes the rate at which the spring dissipates the energy stored in the spring.  
    				// Basic equiation for this is  
    				//  springDamperRate = dampingRatio * 2 * sqrt(springStrength * sprungMass)  
    				// where dampingRatio = 1 mean critical damping (critically damped pendulum should get back to start point in every swing)  
    				// <Type>: float  
    				// <Default>: 0,4*2*sqrt(springStrength*sprungMass)  
    				springDamperRate = 3880;  
    
    

    Doit être modifié

    Besoin d'aide ? Envoie moi un message privé ;)
    Moddeur & unique développeur chez RealLife-RPG.com

  • @Benoit Katecpo

    Masse de 1400

    Donc sprungMass de 350

    MOI de 3.62

    par contre je mets des ressorts plus raide sinon c’est un bateau la RS3.

    Je vais voir avec le MOI si ça change quelque chose

  • Le MOI c’est au niveau de la rotation des roues (moment d’inertie), et il faut aussi que tu changes dans les autres roues, et ta mass n’est pas de 1400 (sauf si tes roues pèsent 1400kg l’unité)

    Et d’abord mets les valeurs calculées, et ensuite modifie, sinon t’étonnes pas que t’ai des problèmes

    Besoin d'aide ? Envoie moi un message privé ;)
    Moddeur & unique développeur chez RealLife-RPG.com

  • @Benoit Katecpo

    Je l’ai fais mais mes roues ne veulent toujours pas toucher le sol ;(

    ma voiture est hantée je crois

    1467562954-sans-titre-1.png

  • t’as bien fais les bounds, les landcontact, ils sont bien placés, bien nommés ?

    Besoin d'aide ? Envoie moi un message privé ;)
    Moddeur & unique développeur chez RealLife-RPG.com

  • @Charli03 Hello ,

    Désolé de remonter un sujet aussi vieux mais j’ai le même probléme
    A tu résolu ton probléme ? Si oui comment ?

    Cordialement

    !! Moddeur de véhicules pour le serveur Homelife !!

  • Bon au final après quelques heures de recherche , la config au niveau des suspensions été pas top top !
    Du coup c’est good :D

    Il faut juste faire attention au poids/suspension/ et ajuster tout ça correctement

    Bonne soirée a tous

    !! Moddeur de véhicules pour le serveur Homelife !!

Messages 19Vues 1221
Se connecter pour répondre