LEGO is awesome. LEGO games are awesome. And – at least for me – this trick is awesome. It’s about the crawler “chains”. You know, the things around the wheel rims.
Let me explain, why i think this looks really good: If you wanna do such a “conveyor” animation in 3D, you need to animate some geometry. And depending on your engine you can do this in different ways:
Way #1 “Texture Animation”
You could use a texture animation where you let a texture slide over a geometry. This is very easy to setup but the silhouette of the whole thing isn’t that stunning:
Way #2 “Geometry Animation”
If your engine doesn’t support texture animation and/or you want a nice silhouette you can make a conveyor out of separate geometries. This costs a lot more animation effort and of course more drawcalls since you get more separate objects. The plus side: the silhouette looks more interesting.
For this, every “plate” just moves one “step” forward and then the animation starts again. You can see this better in the following animation where the plates “jumps” back when they reached their final position. Every color marks a single object.
The LEGO Way
Let’s look again at the LEGO thingie. Am i the only one who thinks, that this looks like they bent a rubber geometry around the wheel rims? I really like it!
At first i thought about crazy bend-modify-programmer-stuff but then i checked out the drawcalls/wireframes. I bet you already guessed how they did it. If not, here’s a clue:
It’s kind of a mixture of both ways.
There’s a big geometry as a base (without crazy silhouette) and in addition several moving smaller parts (which create a great silhouette). Of course you don’t need a texture animation on the base geometry because there’s no visible texture/structure but it gives the whole thing a good shape.
With that, they achieved this really cool bended rubber look which i really like. To be honest, i think most people figured out the trick immediately, but personally i wasn’t sure until i saw the wireframe and the separate drawcalls.