Documentation Unclear regarding Axis of Wheel Bones

.unrealengine.com/latest/INT/Engine/Physics/Vehicles/VehcileContentCreation/
The wheel and root joints should be aligned with X forward, Z up:

Is world or local coordinates?
I cant create bones with local coordinates aligned to Y without breaking the bones.

Which program are you using to model the vehicle?

ps. Moving thread to the Content Creation forum. :slight_smile:

3dsmax. The bone naturally aligns on the X Axis. So its pointing towards the X-Axis.
From what i have gathered so far with a few hours of testing various rigs, as that the bones should not look like axles.
Instead it should actually just be a single bone. Without any nubs.

single bone can easily be rotated so that X-axis is fwd.
Also the bone should be 1x1 and nothing more.

Unfortunately bones usually prefer their local axis so i am going to assume it requires the local axis.
Assuming i am correct, it makes more sense.

Its a pity we could not establish from the documentation what the rig looks like and had to spend a few hours experimenting with various rigs.
Unless representation

.unrealengine.com/latest/images/Engine/Physics/Vehicles/VehcileContentCreation/wheelJnt.jpg

accurately reflect the dimensions of the bones.

It has to be correct because changing the rotation away from XYZ usually results in pretty bad behavior in 3rd party apps. Talking from a 3dsmax perspective. The 3rd party app in case would be UE4.

Excellent, I use 3ds as well.

There is basically 2 ways to do currently. Both ways require X-Axis forward and Z-Up, as in your image above, and pivots centered properly for each object.

Option #1 - Using bones, you will need to attach all parts (including wheels) to the vehicle mesh so it is a single mesh, and then use bones for each wheel + the root bone. Align each bone to the center of each wheel, and the root bone goes at 0,0,0 and the scale doesn’t matter, but best to leave at 1,1,1. Each bone MUST be zero’d out for it’s Rotation on all 3 axes, by default Max sets 0, 0, -90 for the rotation of each bone, which will not work. Now using the Link tool (top left of the toolbar up top), click + hold on the root bone and release over a wheel bone. Repeat for each wheel. Turn off link mode, and add a “Skin” modifier to the stack, add all of the bones and set each bone’s weight accordingly (each wheel need a value of 1 for the wheel mesh vertices for the corresponding wheel, and the root uses 1 for the vehicle body only). After that you can export as FBX, but make sure you enable the “Animations” checkbox.

Option #2 - A way easier way is to leave the wheels as separate objects and use the “Link” tool to attach them to the main mesh. method does not require any bones to be created, UE4 will create them automatically.

For you need to make sure the XYZ pivot must be exactly in the center of each wheel. is simple to do with separate wheels, just go Hierarchy -> Pivot Only -> Center to object -> turn off pivot only.

Make sure each wheel and the body are facing forward X, as in the image you provided above, and center the vehicle body on the Y axis. Simplest way to do is select all objects and type 0 into the Y axis box.

Now use “Link” tool (top left of the toolbar), click and hold on the vehicle body, and then release with the cursor over top of a wheel. Repeat for each wheel, then turn off link mode.

Finally export out as FBX, and make sure you have the “Animations” checkbox enabled, and you are done.

That is a lot of info to take in, so let me know which method you want to use and I can go over a bit more in depth if required. :slight_smile:

Cool. My confusion was how to create the bones. Initially i tried making them like axles.
Got the bones to behave now. I assume. Car not moving. :frowning:

Was a very good explanation.

Troubleshooting why.

Ahh. Seems support for 6 wheels or above is not supported. Or bugged. Works fine until u add more wheels

Oh okay I forgot to ask about that… :smiley:

Yeah that’s not so easy right now, I’m not sure what the best way to make a 5+ wheeled vehicle is (most likely C++ though). Haven’t tried that yet.

Currently faking 2 out of the 6. I dont need true 6 wheel functionality. For example 1 set at the back can just imitate the other back wheels.

Driving nice now.
Tomorrow i will tackle the trailer attachment.
Should be interesting.

Can think of 2 approuches.
Trailer is a driving vehicle that is ai set to follow main truck.
Or
Attach to socket - not sure how that will work
Or
Rig it as an attena with wobble effect, except its horizontal

Why does it have to be so late! I wanna play dammit

Thx for the help .
Got my stuff working.

Oh cool, nice work! :slight_smile:

Which method did you end up using for the trailer?

I used a single mesh. The attach component didnt seem to work very well.
Made back wheels copy rotation data from the driving back wheels so they turn.

Added a constraint for the trailer part of the mesh and restricted it to a sideways angle.
But you need to remove the physics volumes of tires that are being “faked” But then i found the trailer goes into the ground so i had to add an additional box collision at the bottom to fake wheels being there.
Then its a careful process of tweaking the friction of the bottom box collision. Too much and the trailer holds the truck back. Too little and it just glides around like its not a trailer… more like a hand from the movie idle hands.