We have LIFTOFF of the @NASAWebb Space Telescope!
At 7:20am ET (12:20 UTC), the beginning of a new, exciting decade of science climbed to the sky. Webb’s mission to #UnfoldTheUniverse will change our understanding of space as we know it.
Here is my Godot vertex animation demo project.
I wrote a couple of guides for the export and import process. Please post feedback if they are hard to understand, need screenshots, etc.
Thank you :)
https://t.co/Xki2kC6Wly
The last example is vertex animation of particle effects. Frames are advanced using the COLOR alpha channel. A gradient texture can control when the alpha value changes.
In the example, the ice shards assemble at the beginning of the particle lifetime.
#godotengine
For the AnimationTree driven example, I went for the CnC construction method. It was fun to create the effect, something I have always wanted to do.
These animations are all driven by vertex data, no bones to be found.
#godotengine
@_thor_sten_ @mnewberg The Blender add-on also has an option to process blend shapes, so it would be possible with some modification. I have not looked at the blend shape side of things yet, but for completeness' sake I think it would be a good idea.
Here is 8000 instanced scenes running skeletal animation. Just to load this scene took 3-4 seconds, the MultiMesh scene loaded instantly. The animation lags so much it makes a scene like this unusable.
The performance of this technique compared to skeletal animation is important to know. Thanks to @TheBlooRabbit for asking about it.
Here is a MultiMesh scene with 8000 clappers, along with some performance metrics.
@TheBlooRabbit Great question! I created a couple of test scenes with 8000 instances and it's a night and day difference. Just to load the skeleton scene took 3-4 seconds. The multimesh scene was pretty much instant.
I will post some captures of the performance numbers so everyone can see 🙂
There is not enough vertex animation resources out there for Godot Engine. I was thinking about submitting an example project to the asset library.
Please like or respond below if this is something you are interested in. Thank you 🙂
@TheBlooRabbit Indeed, but instead of using sine waves and what not, the animation is pre-recorded and exported from Blender as vertex offsets and normals stored in image files that the vertex shader reads back.
@mnewberg The vertex count does not change. If the model has 200 vertices and 24 frames of animation, the image data generated by Blender to reproduce that animation is 200px wide and 24px high.
It does require custom shader that is not in-built anywhere in Godot.
@_thor_sten_ A big chunk of the work was already done by an open sourced Blender add-on for Unreal, I posted a link a few days back.
It's kinda like shape keys, the add-on saves vertex positions for each animation frame to a file. Godot blends the frames in a vertex shader to play it back.
@asheraryam There is an add-on for Blender that allows you to save the vertex positions of each frame of an animation and store it in an image file.
In Godot you get a vertex shader to read the image file back and it will move the vertices frame by frame to reproduce the same animation. 🙂
Next is the MultiMesh example. It demonstrates how to populate a scene, use a texture mask to customise the model colours, and use shader TIME to drive the animation.
The time scale has been slowed down so the random animation offset is more noticeable.
#godotengine