Hi everyone,
I’m currently learning Unreal Engine 5.6 using both Blueprints and C++. My goal is to simulate a physically realistic vehicle (controlled via Xbox controller or similar) that behaves based on real-world data — for example, real engine torque curves, gear ratios, and steering geometry. This is meant to support a more advanced vehicle simulation setup.
I started with the ChaosVehiclePlugin, which allowed me to set up a working vehicle that can drive over terrain, respond to grip parameters, show suspension behavior, etc. Here’s a summary of my setup and the issue I’m facing:
What I’ve Done So Far
- Started from a 3D model (free asset), rigged it in Blender (assuming N wheels, even number, N ≥ 4).
- Enabled ChaosVehiclePlugin and followed these tutorials:
- Configured physics and skeleton; used Enhanced Inputs with an Input Mapping Context loaded via GameMode.
- Used real torque curve data and defined Gear Ratios for the transmission — getting decent results on flat terrain.
The Problem
Once I load a terrain with inclines, I run into a behavior that feels off, especially for an automatic transmission:
- When engine torque > resistance: wheels accelerate.
- When torque == resistance: RPM stays fixed, throttle input (30% or 100%) doesn’t affect it.
- When torque < resistance: wheels slow down → engine RPM also drops, even with throttle at 100%.
This seems more like a manual transmission without clutch slip than an automatic one. It feels like there’s no torque converter or clutch slip behavior, which is essential for climbing steep slopes or starting under load.
The “clutch” behavior in ChaosVehicle appears to just be a gear change delay, not a real slipping clutch.
What I’m attempting
I attempted to subclass ChaosVehicle components to simulate clutch behavior:
MyCustomVehicle
:AWheeledVehiclePawn
MyCustomVehicleMovementComponent
:UChaosVehicleMovementComponent
MyCustomWheeledVehicleMovementComponent
:UChaosWheeledVehicleMovementComponent
MyCustomWheeledVehicleSimulation
:UChaosWheeledVehicleSimulation
In this setup, I tried to fake clutch slip by reducing resistance forces by X% based on clutch value - still working on it, no result so far
Discovery: Chaos Modular Vehicle
I found references to ClutchModule.h
, which seems to be part of Chaos Modular Vehicle, not ChaosVehiclePlugin.
It looks like the Modular system might support what I need (actual torque converter or slipping clutch mechanics?), but the setup process is quite different. From what I gathered:
- The Modular plugin requires separating the mesh components (e.g., each wheel as an individual mesh).
- My current rig doesn’t support that without reworking the asset pipeline.
Tutorials I found:
Questions
Before I commit to re-rigging my assets and rewriting the system, I’d love some insights:
- Has anyone encountered this issue with ChaosVehiclePlugin? Is there a proper way to simulate real clutch or torque converter behavior?
- Is Chaos Modular Vehicle a better fit for this type of simulation (e.g., tracked vehicles, differential steering, complex axle configs)?
- Would it make more sense to move directly to the Modular setup and invest time there instead of hacking around ChaosVehicle?
- Any recommendations on how to best implement realistic drivetrain physics in UE5.6?
I’m comfortable working in C++ and actually prefer it for this kind of task, so I’m open to low-level solutions. (Still discovering UE)
Thanks in advance for any guidance. And let me know if more details would help — happy to share more about the setup or my goals.