Wheels move on startup from car imported from Blender

Hi all.

I have a simple custom vehicle designed in Blender. I am attempting to import this into Unreal to use with the stock WheeledVehicle class, but I’m having a very difficult time getting the physics to work. I have been following the following tutorials: (How to Rig and Setup a Custom Vehicle in Unreal Engine 4 - YouTube), (How to get wheeled vehicle from Blender to Unreal Engine 4 from scratch [OLD] - YouTube), (Vehicles: Overview & Car Setup | 01 | v4.2 Tutorial Series | Unreal Engine - YouTube).

Here are the steps I took:

In Blender:

  1. Simplify mesh into five parts: body and four wheels
  2. Create an armature and assign the first bone to have one end at (0,0,0)
  3. Create another bone from root bone. Disconnect it, and copy it three more times
  4. Move disconnected bones to wheel centers
  5. Assign weights so that center chassis is assigned to first bone, wheels are assigned to wheel bones
  6. Rotate so that +x is forward. Also verify that for all bones, +x is forward and +z is up.
  7. Export as .fbx with leaf nodes disabled

In UE4:

  1. Import as skeletal mesh, without textures
  2. Open up the physics asset. Delete capsules, create spheres for wheels and box around main control volume. Assign spheres to kinematic physics type.

Right here is where I notice things getting weird. If I just add collision spheres for wheels and leave as default physics, three of the four wheels jump to the center of the car. The fourth one stays put.


If I add a collision box, the car flies around wildly inside the PhAT.

I know PhAT can be weird sometimes, so I continue on:
3) Create tire classes for BackWheel and FrontWheel. Restrict BackWheel from turning.
4) Create pawn class extending WheeledVehicle. Assign skeletal mesh to pawn, and assign four wheel bones to the vehicle movement (all as instructed in third tutorial). Add camera and spring arm, and controls.
5) Create GameMode to use car class as default pawn.

Now when I spawn the car into the game, the wheels don’t move, but act as if they have congregated in the center of the car.


It looks like the wheels are actually moving ingame to the center of the car. Does anyone know what is causing this, and how to fix it?

Update: I’ve posted the blender .fbx meshes here: https://www.sendspace.com/file/zhxgj8. The assets I created from them are here: https://www.sendspace.com/file/nw80wm

It’s caused by your scene setup, you should be using a scene unit scale of metric 0.01 without any transformations left unapplied on your mesh (like 500 scale on the meshes or rotation on the rig and so on). So you would first select everything and apply transforms, then change the scene scale to 0.01 metric, resize the rig by 100 times and apply transforms for the rig and mesh.

Anyway I fixed it for you, no idea if this works with the car stuff because I rotated it back so it looks normal for a character rig, but if it doesn’t work you can just rotate the rig back and apply transforms again for the rig and mesh and export again.
File: http://pasteall.org/blend/index.php?id=47630

Some stuff I did:
Fixed scene scale
Applied unapplied rotations/scale
Moved car/rig up so it’s above ground (above the grid)
Put the wheel bones in the center of the wheels by selecting the wheel mesh and doing Snap Cursor To Selected, then selecting the bone and doing Snap Selection to Cursor (note: wheel mesh isn’t round, you may want to fix this later)
Made sure the root is at 0/0/0 and looking normal (facing upwards)
Rotated the car to look normal for a “character” (see above if it doesn’t work for car stuff)

That’s probably it. Then in PHAT just add spheres for the wheels and disable linear limits, then change the angular limits to swing 2 free and the other ones locked (or whatever the axis ends up as). Even though I gave you a kind of working file you should repeat the steps I did so you learn the method.

We had many problems with rig and vehicles too. We did a tutorial with what worked for us.