In my younger years i learned to be a car and motorcycle mechanic and that technical mechanics still interest me.
Years ago i made a ducati engine in 3Ds max, and now for the sake of learning new techniques i worked made a VW Beetle in Unreal engine, texturing in Substance painter first.
The results is here:
To be honest, it took me like 3 attempts, and still i have some things to overcome.
First attempt was with complete physics, but at times the gears would run out of sync. I hade the whole gears working by watching Lusiogenic's videos.
The nice thing is that you can set one value to control the speed of the entire engine.
The second attempt was to divide certain axis, like the crankshaft, camshaft and the rotor of the distributor.
I drove one value, and multiplied or divided that in blueprints. I also had to learn blueprints. Coming from Unity it was relearning some stuff, altough it reminded me of Quest 3D.
So, this got me closer to a stable setup and i was pretty happy with it untill i wanted to render out a looping animation. Using physics to drive the animation didn't give me the opportunity to have an exact loop.
Keyframing in sequencer to drive the animation was my solution to combine physics to drive some animation, like the rockers and the valves, and traditional keyframing the axis. Now i could setup loops for rendering out images.
What i learned and fixed
I have used the UCX system for creating the collision meshes as desbribed here:
After importing small object im my unreal scene, of where i needed fine detail, like the camshaft or the rotator shaft, I had to scale the objects before exporting. I noticed getting a finer collision mesh in the imported object, which made the physics collisions less jumpy. I scaled it back to 0.1 in the actor blueprint.
I used a driven collision mesh and a separate render mesh with the same rotation driving it.
The collision mesh on the camshaft had little jittering on some axis, but still noticable. On the render mesh i just drove one rotation axis which was a simple fix.
What i should still fix
Rendering out a animation with high AA setting caused jumping physics. Setting the motiion blur to one helped, but until a certain AA level. At that point i just wanted to finish the project, so i just accepted the lower AA sample settings.
Rending out with some outline shaders, i love that feature in V-ray.