Is there someone who knows how to simulate such a transmission in Unreal?
I don’t have the precise solution, but if you search for UE4 Tank Treads you will find many people solving for the similar case.
Most likely you won’t physically animate the belt, but you’ll animate the UVs instead. Although it seems some people have taken the physical approach too.
Someone from the community, or one of our technical artists, may be able to provide more detailed information.
Thanks for the reply! But all the examples about tank treads are already setup so I still don’t know how to do it for 2 wheels and a belt
I feel like you’d have to kind of do the math yourself and make a blueprint for it? If you know the radius of the two wheels, you can determine the relative rate of rotation, as well as the linear speed of the belt.
So I would have three meshes: two wheels, and the belt. The wheels’ rotation would be controlled by the blueprint, while the belt mesh wouldn’t move, but instead would have animated UVs.
Yes, I made something like this up. But I still have a problem with the rotation. I made a blueprint with one wheel and made a rotator and in the Level Blueprint I related the speed of the other wheel to it. But the rotation of the first wheel goes from 0 to 180° and then it jumps to -180° and goes to 0°, it cause a wrong rotation for the second wheel
My advice for the pulleys would be to set the rotation on thick using the Add rotation node, rather then looping the rotation, and link the value to the second pulley.
For the animation of the belt, I would strongly suggest to do the entire thing with animated UVs, but you can eventually do the animation using some of the tools available in your DCC, in Maya you can use the Wire tool, then bake and loop the animation.
Instead of using the rotation of the first wheel to determine the second, you can tie both rotations to a separate variable. That separate variable for example could go from 0 to 360 and then keep going to 720, 1080, etc and just keep getting bigger.
But personally I would probably go with what Enter Reality suggested. You set a rotation rate for the first wheel, then calculate the rotation rate for the second from that. Each frame you get the delta time from the tick event, multiply it by the rotation rates and use Add Rotation.