Jump to content
  • Advertisement

Vu Chi Thien

Member
  • Content count

    21
  • Joined

  • Last visited

Community Reputation

0 Neutral

About Vu Chi Thien

  • Rank
    Member

Personal Information

  • Industry Role
    Programmer
  • Interests
    Design
    DevOps
    Education
    Production
    Programming

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Vu Chi Thien

    Limited-Slip Differential and friends

    Thanks so much for your help. I took a step back after your last reply and realized my mistake right here. Watching Youtube videos on Assetto Corsa and Project Cars differential setup helped a lot in understanding things visually and in terms of real world application. Imagining an extreme situation helped me understand better, for example when one wheel is on tarmac and the other is on ice. The one on ice, let's say, has no grip at all, so it keeps on spinning. The other one on tarmac, receiving the same torque percentage, but that torque is not enough to overcome friction reaction torque (or the wheel is being held firmly) and roll the wheel, so the car is sitting duck. This is due to the spider gear setup that allows 2 wheels to spin independently. When one wheel is spinning while the other has traction, the spider gear would spin on its own axis, allowing the spinning wheel to keep on spinning and taking power from the traction wheel. That's why in road cars (even some super cars like the McLaren P1) with open diff, they would have a "poor-man" LSD where the brake of the spinning wheel is applied to transfer power to the dead wheel. The braking reduce the rotation of the spider gear and allow less independent rotation between two wheels In LSD this is overcame by using clutch packs that connects the housing case to the axle. The housing in turns connected to the ring gear. In the clutch packs are steel plates connected to the case and friction disks connected to side gear (on the axle), so when they are pressed, the axle would rotate with the housing case and the ring gear. Because the spider gears are not connected directly to the housing, but rather through a pair of pressure rings )the rings are connected to the housing). When there is an acceleration from the engine to the ring gear, the case and the pressure rings, the spider gears are "lagged" behind and slid along the pressure rings, pushing the rings away, in turns pushing the clutch packs, creating locking force between axles. When there is no acceleration, the spider gear would sit quietly inside the pressure rings, rotate around their own axis and allow independent rotation between 2 axles Found this on youtube, very helpful btw: The reason I had that idea is thinking of the engine torque being splitted 50-50 between 2 wheels in a constant function like this: leftTorque = rightTorque = engineTorque * 0.5f. So if the engine torque coming from the engine to the pinion gear increases, the amount of torque coming to both wheel would also increases, thus giving the dead wheel with traction more torque to work with and overcome traction reaction torque and rotate. But I realized it's much more complicated than that. This is the only part where I still didn't get about LSD, but I think I do now. Say when one wheel is in the air, when there is acceleration coming in, the ring gear instead of "lagging" and pushing the pressure ring, would spin on their own axis and allow the wheel in the air to keep spinning and taking power from the dead wheel. The reason for the ring gears to not "lagging" is because of the very high traction reaction force from the dead wheel holding the wheel (and that axle) back, and the other wheel have no resistance at all, so when the spider gears rotate with the pressure rings, the gears don't receive any resistance from the spinning wheel to make them "lag" behind and push the pressure ring, thus making the spider gears spinning on their own axis, allowing for independent rotation of 2 wheels. This is actually better to understand using a modified LEGO diff with spider gears inside pressure rings, and hold one wheel while spinning the pressure ring. One would see that even though there is acceleration coming into the pressure ring, the resistance from the spider gears is not enough to push the pressuring away, and instead the power makes the spider gears rotate on their own axis Is the above explanation correct? I realized this now. Locked diff is pretty obvious, engine torque is always going to both wheels since they move as a single unit. Viscous is basically a progressive locking diff based on velocity difference, so the locking force will progressively increase with speed difference until it is high enough to actually lockup the 2 axles. So an example of implementation: First I would calculate the difference in tire forces between wheels, and figure out clutch locking force by multiplying that difference with clutch locking friction strength. Then apply this amount of locking force (turn it to torque first) to the wheel with the less tire force opposite to the rolling direction of the wheel, which in other words, reducing the torque from the spinning wheel. This locking force/torque also apply to the adherent wheel same as the rolling direction of that wheel, or in other words, taking torque to the adherent wheel. For bias ratio, if the ratio of tire force between 2 wheels is less than or equal to the bias ratio, then use that difference in tire force to calculate locking force, otherwise, uh, where do I go from here? Again thank you so so much. Having a conversation like this really clears things out for me. I got a hang of the mechanics behind the diffs now, what's left is actually come up with an implementation that suits the current drivetrain model I'm doing. Oh by the way, I ditched Unity WheelCollider and wrote my own tire model, because having no way of extracting tire force is really frustrating. And really I don't know what the people doing PhysX is thinking, locking away a very important aspect like tire force.
  2. Vu Chi Thien

    Limited-Slip Differential and friends

    I came up with the understanding based on wheel load alone, so it was not at all correct. For open diff, my thinking went like this: - Car steers into turn, outer wheel gets more load, inner less load. Torque is split 50-50, so the outer wheel accelerates slower, inner accelerates faster, lead to inner wheel losing traction and spinning, while the outer wheel sitting duck. Result: understeer and/or losing power when cornering. But when you go for too much throttle, the outer wheel can also loose traction and the result is oversteer, and this oversteer is hard to control due to unpredictable traction lost between wheels. While in a locked diff it would be more predictable. So the point of LSD is to increase stability by introducing a bit of understeer when the diff is semi-locked (and also helps you getting out of sink holes)? The understeer is due to both wheels spinning at the same angular speed, but the heavy loaded wheel (outside wheel) can receive all the power it needs to propel the car instead of being stolen by the lighter loaded inner wheel. But when you're not careful and when full throttle happy (or the engine decides that the car is moving too fast and brake it heavily), the heavy loaded wheel can also loses traction, resulting in both wheels losing traction I also heard the term Torque Bias Ratio being tossed around when talking about LSD, like 2:1 or 4:1. The definition is "The amount of torque that can be sent across from one side of the diff to the other." So for example 2:1 means 2 times the torque of one side (wheel) can be tossed to the other side (wheel). So does that mean for example, car is turning, outer wheel have heavier load/higher wheel reaction torque, so the torque from the engine is spllited unevenly and the outer wheel receives maximum of 2 times the torque as the other wheel? Or is it that the wheel reaction torque ratio between two wheels can only be maximum to 2:1, and the clutch torque from the diff is applied to the lighter load wheel, opposite to the rotation direction to increase its reaction wheel torque, keeping wheel torque to around 2:1, thus limiting its angular speed? Here is where I got it from: https://oppositelock.kinja.com/your-differential-and-how-traction-works-1661277563 Oh boy how far LEGO has evolved. Back in my childhood days the most complicated LEGO I've done was the Creator Jet (LEGO was kind of an Unicorn my hometown, they didn't have a lot around). That 911 is dope though, even the engine is wheel modeled.
  3. Vu Chi Thien

    Limited-Slip Differential and friends

    I guessing an example of asymmetric differential would be the center diff/torque splitter in AWD that split torque front-rear based on requirements (Audi's Quattro 60-40 front-rear)? I thought Viscous has looking effect based on wheel speed difference? Or maybe I'm getting the wrong idea about locking effect. In my understanding looking effect means the amount of resistance torque from the differential (friction from clutch patch that applied to the spinning wheel with less traction, opposite to the rolling direction of that wheel. Maybe what you're saying about viscous is that the clutch patch get pushed by the liquid but never locked up, and the resistance torque is just constantly applied to the spinning wheel every time a wheel loses traction and spin, without an activation (throttle, engine brake) I think I'm slowly getting the (maybe wrong) picture. A locked diff would make the car understeer when cornering when coasting, but once you get on the throttle hard, both wheels would loose traction because of the locked diff, and also because the outer wheel gets all the torque,. This allow for easier to initiate and maintain a drift. So coasting: understeer, accelerating: oversteer An open diff would make the car corner easily when coasting due to the free rolling motion of each wheel, inner wheel can spin slower to rotate the car around, but when the engine braking is too strong, you can get oversteer. However, when you get on throttle, the inner wheel would get all the power (torque remains 50-50 between each wheel), while the outer wheel still rotates slowly, resulting in understeer. So coasting: oversteer, accelerating: understeer. Do all Technic cars have differentials? What kind of diff do they have? I'm thinking of getting one now. Thank you very much for your help with a huge amount of information
  4. Vu Chi Thien

    Limited-Slip Differential and friends

    So lucky to be noticed by a famous Unity developer Definitely gonna drive that around the Nurburgring and set a record In the vehicle physics asset you're developing, do you also model the torsen differential? Most people seems to steer away from it and go for clutch type instead. By the way, what is your opinion on the importance of modelling different types of differential? Even in a notable sim like Assetto Corsa, there are only a few most importance options like coast, power and preload to mimic the effects of different types of differentials. And one thing that I've heard around the drifting corner of sim community is that a "sensitive" diff, which is a diff that locks up even with low torque difference between 2 wheels and low power input from the engine, would help break out the rear easier, because when the diff locks, the inner wheel would lose traction and cause oversteer. However, in my understanding, differential lock up is used to prevent oversteer. Locking up means the inner wheel would receive less torque and rotate at the same speed as the outside wheel. An open diff would make oversteer easier since the torque is always 50-50, so when the inner wheel lose traction, it would receive all the torque and keep on spinning without traction. With the racing and drifting experience you have, would you mind clear this confusion up for me? (I saw your drifting video on youtube, and it was awesome)
  5. Vu Chi Thien

    Limited-Slip Differential and friends

    Uh ... Chill man I'm just joking. I'm a programmer, not a military engineer ... I have no idea how those vehicles are set up, this is just my speculation. That's why I'm asking questions here to get help ...
  6. Vu Chi Thien

    Limited-Slip Differential and friends

    Why not 8 ha ha? I think 8 is also easier thanks to the symmetrical tree setup Just implemented a quick and simple RWD viscous LSD and ... it worked?! I mean it worked and very well actually. With the diff setup I was able to catch slides by modulating the accelerator and counter-steering. My luck was beginning to turn I guess? Again thank you very much for helping me reaching this huge milestone in such a short time. Right now I'm thinking of a simple induction setup with 2 states. State 1 will be compression stage where the charger compresses air and provides boost. The activation is when the throttle > 0 && engineRPM >= activationRPM. The max boost provided would just be a any number times the throttleInput. The currentBoostAmount going to the engine will gradually move to the maxBoost by turboLag amount of time. Air pressure times times throttleInput and move to maxAirPressure by turboLag amount of time. State 2 will be the bypass stage where the charger release and bypass air, not providing any boost. The activation is when the throttle is 0 or engineRPM < activationRPM. Here the boost will just be 0 and air pressure is negative. If engineRPM < activationRPM but throttle > 0 then boost is 0 and air pressure is 0. With my currently limited knowledge, I can only make air pressure to be just something to be shown on the HUD in a gauge to make the HUD more interesting. Anyway I will wait and see what you can find, can't fake things forever. Another quick question about the clutch and the handbrake. I see in games, arcade and sim, in case of RWD, when you are on the gas and pull the handbrake without stepping on the clutch, the rear wheels lockup but the engine doesn't stall, why is that? The clutch should be locked since the clutch capacity is larger than the engine max torque when it's engaging in this case, when the rear wheels lockup the engine should also be held and jump to 0 RPM which makes it stall. And sorry but really this question is about driving technique, you can ignore it if you don't know. This is about the angle of counter-steering needed. When the car oversteer, how can I determine how much of an angle my counter-steering should be, to maintain the current direction of travel and not spinning out? I see a lot of auto countersteering in arcade racers but really don't know how it is calculated.
  7. Vu Chi Thien

    Limited-Slip Differential and friends

    What about in drifting? Would a good diff setup (in combination with suspension setup of course) help with recovering from a slide and prevent spinning out? Thanks to your post, I'm having a differential craze right now. I'm thinking of an AWD system with more than 4 wheels with Inter axle differential setup (center diffs chained together with a overarching center diff, taking output of one as input of other), kind of like: GearBoxTorque -> MainCenterDiff -> FrontCenterDiff -> FrontDiff -> RearDiff -> RearCenterDiff -> FrontDiff -> RearDiff Also I'm having some trouble with the math of induction (superchargers, turbochargers). Is there a formula that relates induction air pressure to the amount of extra torque it gives to the engine? Because I see in games the turbocharger air pressure actually turns negative when the throttle is fully released. Does that means that the extra torque also changes sign or there is just 0 extra torque? Would you mind helping me with this really quick?
  8. Vu Chi Thien

    Limited-Slip Differential and friends

    Thanks for passing by @CombatWombat, The vehicle simulation scene on gamedev.net is pretty quiet I agree, unlike the 2004-2007 period. Surprise. I actually didn't look at this wiki page yet for some reason. I just read on the differential wiki page, but not this one. This even has equation for torque output, so convenient. A bit stupid but, the torque input at the differential should not be multiplied by differential gear ratio correct? So instead of engineTorque * gear * diffRatio, just engineTorque * gear. Also the diff is only sensitive to the input torque from the engine to be activated, and I don't have to worry about the rolling resistance torque from the wheels, correct (in term of vicious clutch and ramp type)? Oh so my early understanding of the model is not correct. I've always think of the output torque to the wheels through the diff as the ratio based on the difference between torque or speed of two wheels, say: ratio = leftSpeed/rightSpeed torqueToRight = torqueIn * ratio; torqueToLeft = torqueIn* (1 - ratio); Another tricky thing is 4WD and AWD, because I would need a total of 3 diffs: 1 center, 1 front, 1 rear. 4WD is a bit easier, as the center diff only needs to lock up on demand, and LSDTorque needs to be a large number enough to keep the front axle spinning at the same speed as the rear one . If the front diff is open then it is easier as the torque over there at each wheel can just be EngineTorque * gear / 4. Factoring the locking at the center, to make sure the front axle spins at the same speed as the real axle, LSDTorque can be divided and distributed equally between 2 front wheels, so something like: //front axle speed frontSpeed = (LF + RF) * 0.5f; //rear axle speed rearSpeed = (LF + RF) * 0.5f; //speed difference between front and rear axle //this is the case when front spins faster axleDifference = frontSpeed - rearSpeed; //LSDTorque at center diff to be delivered at front and rear axle centerLSDTorque = axleDifference * lockUpForce; //torque from center diff to front open diff frontDiffInput = (outPutTorque * 0.5f) - centerLSDTorque; //torque to each front wheel LF.torque = RF.torque = frontDiffInput * 0.5f; //same for rear axle //torque to rear diff rearDiffInput = (outPutTorque * 0.5f) + centerLSDTorque; //torque to rear wheel, open diff LR.torque = RR.torque = rearDiffInput * 0.5f; //if LSD if (LSD) { //speed difference of 2 wheels, left wheel is faster speedDiff = LR.speed - RR.torque; //calculate LSDTorque, 1 way for now, simplicity rearLSDTorque = preload + driveTorque * ramp * friction; //distribute LSDTorque to rear wheels LR.torque = 0.5f * rearDiffInput - speedDiff * (rearLSDTorque); RR.torque = 0.5f * rearDiffInput + speedDiff * (rearLSDTorque); } //I guess the rearLSD model can also be applied to the front if the front has LSD also. AWD is trickier since I have to factor in and carefully monitor torque distribution between front and rear. Also each car manufacturer has their own AWD system which makes thing much more confusing, from OpenDiff with braking to Subaru's snowTrek and Audi's Quattro. I guess I can take the above 4WD model and change the centerLSDTorque around, with some if's else's. Again thank you very much. My progress has been skyrocketing ever since you helped me.
  9. Hi fellow game devs, First, I would like to apologize for the wall of text. As you may notice I have been digging in vehicle simulation for some times now through my clutch question posts. And thanks to the generous help of you guys, especially @CombatWombat I have finished my clutch model (Really CombatWombat you deserve much more than a post upvote, I would buy you a drink if I could ha ha). Now the final piece in my vehicle physic model is the differential. For now I have an open-differential model working quite well by just outputting torque 50-50 to left and right wheel. Now I would like to implement a Limited Slip Differential. I have very limited knowledge about LSD, and what I know about LSD is through readings on racer.nl documentation, watching Youtube videos, and playing around with games like Assetto Corsa and Project Cars. So this is what I understand so far: - The LSD acts like an open-diff when there is no torque from engine applied to the input shaft of the diff. However, in clutch-type LSD there is still an amount of binding between the left and right wheel due to preload spring. - When there is torque to the input shaft (on power and off power in 2 ways LSD), in ramp LSD, the ramp will push the clutch patch together, creating binding force. The amount of binding force depends on the amount of clutch patch and ramp angle, so the diff will not completely locked up and there is still difference in wheel speed between left and right wheel, but when the locking force is enough the diff will lock. - There also something I'm not sure is the amount of torque ratio based on road resistance torque (rolling resistance I guess)., but since I cannot extract rolling resistance from the tire model I'm using (Unity wheelCollider), I think I would not use this approach. Instead I'm going to use the speed difference in left and right wheel, similar to torsen diff. Below is my rough model with the clutch type LSD: speedDiff = leftWheelSpeed - rightWheelSpeed; //torque to differential input shaft. //first treat the diff as an open diff with equal torque to both wheels inputTorque = gearBoxTorque * 0.5f; //then modify torque to each wheel based on wheel speed difference //the difference in torque depends on speed difference, throttleInput (on/off power) //amount of locking force wanted at different amount of speed difference, //and preload force //torque to left wheel leftWheelTorque = inputTorque - (speedDiff * preLoadForce + lockingForce * throttleInput); //torque to right wheel rightWheelTorque = inputTorque + (speedDiff * preLoadForce + lockingForce * throttleInput); I'm putting throttle input in because from what I've read the amount of locking also depends on the amount of throttle input (harder throttle -> higher torque input -> stronger locking). The model is nowhere near good, so please jump in and correct me. Also I have a few questions: - In torsen/geared LSD, is it correct that the diff actually never lock but only split torque based on bias ratio, which also based on speed difference between wheels? And does the bias only happen when the speed difference reaches the ratio (say 2:1 or 3:1) and below that it will act like an open diff, which basically like an open diff with an if statement to switch state? - Is it correct that the amount of locking force in clutch LSD depends on amount of input torque? If so, what is the threshold of the input torque to "activate" the diff (start splitting torque)? How can I get the amount of torque bias ratio (in wheelTorque = inputTorque * biasRatio) based on the speed difference or rolling resistance at wheel? - Is the speed at the input shaft of the diff always equals to the average speed of 2 wheels ie (left + right) / 2? Please help me out with this. I haven't found any topic about this yet on gamedev, and this is my final piece of the puzzle. Thank you guys very very much.
  10. Hi fellow game devs, With the help of @CombatWombat in my previous post about clutch modeling, I now have a solid direction for the modeling the clutch. The way I'm doing it is having 2 clutch states: locked and unlocked. EngineRPM and torque will be calculated separately in each state. My problem right now is the logic and code for specifying locking and unlocking. The condition for locking is when (engineSpeed - drivetrainSpeed) in previous update cross zero (different sign) with the current update (to determine if engineSpeed = drivetrainSpeed or not in-between updates) and engineTorque <= clutchTorque. The condition for unlocking is when engineTorque > clutchTorque. The diagram looks roughly like this (taken from matlab website with the similar implementation): However, the 2 conditions are triggers for switching states, not for determine the current state to be in, so in the end my clutch state just jumped around. I don't have a lot of experience in doing state machine, so can some one give me rough code of how to implement this? Below is my rough code: speedError = engineSpeed - drivetrainSpeed; if ((Math.Sign(speedError) != Math.Sign(deltaW) && currentTotalEngineTorque <= clutchReactTorque)) { clutchLocked = true; } else clutchLocked = false; deltaW = speedError; //end of update I think the main struggle is the cross zero. Because cross zero is the "trigger condition" to check if the clutch should lock when it is slipping, not the condition for continuous locking, while the code I have above is the "continuous condition" saying "this condition is true then it is locked/unlocked". Another word, if the clutch is slipping, the condition above would decide if it's locked or not, but once it is locked, the cross zero condition is not true anymore (since speedError and deltaW have same sign as engineSpeed == drivetrainSpeed when clutch is locked). I'm sorry that I cannot explain this better as English is not my first language.
  11. Vu Chi Thien

    Clutch Modelling Help

    OK, so with non-locking model, there will always be a little bit of oscillation when delta velocity gets smaller, but eventually gets averaged after enough timestep, and the output at the frame update is smoothed. And with high torque cases (super cars, race cars, high power trucks ...) we need small timesteps/high frequency. So basically like: if (clutchLocked) { engineSpeed = wheelSpeed * Gear; torqueAtWheel = (engineTorque * Gear) * diffBias; } else { engineSpeed += (engineTorque - clutchTorque)/engineInertia; torqueAtWheel = clutchTorque * Gear * diffBias; } I'm still experimenting with different values and having fairly good result at high speed, high engine RPM, but still lots of jittering at low speed low gear and high torque. One reason for the jittering is actually because of the built-in physic engine, so I also have to play around a lot with the timestep and substep config of the engine itself, which is going to take a long time. This problem occurs with everyone I asked in the official forum and no one has the solid solution yet. Talks about impulse, I bumped into this forum post of an open-source racing sim, with used impulse for clutch modeling, and based on the engine - wheel speed difference. Basically this model calculate engine torque impulse and clutch resistance impulse, and the net torque drives the engine inertia: engineVelocity += (engineTorqueImpulse - clutchDragImpulse) / engineInertia; And here's the clutch impulse calculation: public float GetDragImpulse(float engine_speed, float drive_speed, float engineInertia, float drivetrainInertia, float ratio, float engineTorquedt){ float drivetrainInertiaR=drivetrainInertia/ratio; impulseLimit=clutch_position*torqueCapacity*Time.deltaTime; float lambda=(engineInertia*drivetrainInertiaR*(drive_speed - engine_speed) - drivetrainInertiaR*engineTorquedt)/(engineInertia + drivetrainInertiaR); lambda = Mathf.Clamp(lambda, -impulseLimit, impulseLimit); return lambda; } Here the topic: http://vdrift.net/Forum/showthread.php?tid=1617&page=2
  12. Vu Chi Thien

    Clutch Modelling Help

    Thanks so much again. I'm still studying and testing around with the model you gave me in the xls. It will take a while for me to get good result and come up with a good combination of values. Still I have some confusion I would like to ask: So after trying different values, to me increasing the proportional and integral would result in getting to the desired value faster, but gives more oscillation at high time step. Lower values would result in a smother jump. So from here I think with high torque value using lower proportional and integral would be better, and higher values for lower torque. Because in the model discussing here in the topic, clutchTorque, which is frictionConstant * clutchInput, is used to drive the wheels. So say I have an example: The engine produce 400Nm maximum torque. The torque capacity of the clutch is 500Nm. So when the clutch is fully closed, would the full 500Nm of clutchTorque go to the wheels despite the engine cannot produce that much torque (max 400Nm)? This is the biggest confusion for me right now.
  13. Vu Chi Thien

    Clutch Modelling Help

    The xls is you sent shines a lot of light on me. Thanks so much for that. I'm also using Euler at 100Hz. Still I have a lot of jittering at low speed delta (engineSpeed - wheelSpeed). Decreasing proportionalStrength and integralStrength helps somewhat, but that would let the speed delta increasingly large which led to power loss and the car cannot reach max speed at current gear. So this acts more like a torque converter like my first implementation. Say if I want to implement a model that uses constant clutchTorque like you gave earlier: then I can replace proportionalStrength * speedError with the frictionConstant, and keep integralStrength * integralError right? Since the integral part acts like sort of a "damping" that scale with speed delta, so when the delta is small the damping gets smaller. To me I would prefer this model you first shown since it acts more like a real clutch, which is what I'm going after. Also if I were to implement the locked model, then what would be the condition for lock-up? Since it's really hard to get speed delta to be exactly 0, using speed delta as the condition is not very good. Second is comparing torque of 2 sides with the clutch capacity, but at low engine or wheel torque, the torque will of course be lower than the capacity, which means the clutch would locked immediately. Also this is not very possible since I cannot extract reaction torque from the wheel side. Have you ever implement this and do you have any suggestion for this implementation? If you don't mind, I would like to ask what model did you use in your project, the clutch converter like type, the constant clutch torque type, or the locked clutch type? And what engine or language did you use? Again, thank you so so much for everything you have done until now. You were a big help to me.
  14. Vu Chi Thien

    Clutch Modelling Help

    Oh! This, right here, is the source of my confusion about your implementation. I get it now. However I still have question. I other models I've looked at, they also use this torque to drive the wheels. In my understanding, this torque is the Capacity of the clutch, which means how much torque it can endure before it slips. Because of that I don't think of it as a torque to drive the wheel side. This leads to my other question: Say the engine is capable of outputting 400 Nm, and the clutchTorque is 500 Nm. If we use this 500 Nm clutchTorque to drive the wheels, then when the clutch is fully engaged, engineSpeed == wheelSpeed, 500 Nm will go to the wheel side instead of the maximum 400 Nm that the engine can output?
  15. Vu Chi Thien

    Clutch Modelling Help

    Here is the demo video. Sorry for the buggy audio since I'm debugging a lot and there's little to no optimization at this moment. As you can see (and hear) the engine revs up to max while the wheel rpm keeps up. The Delta W in the inspector window on the right is (engineRPM - wheelRPM), and you can see that they never match, and wheelRPM tried to keep up very slowly. No matter how high the clutch strength value is, they never match. The clutch strength value now is 27. Unity 5.6.1f1 Personal (64bit) - DevelopmentTestTrack.unity - Car0 - PC, Mac & Linux Standalone _DX11_ 31-Jan-18 1_06_39 AMTrim.mp4
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!