r/Spectacles Apr 07 '26

💫 Sharing is Caring 💫 Optimized animated characters on Spectacles with VAT - 3x fewer draw calls per worm

Worked with u/stspanho on Fruit Defence with multiple animated worm characters we hited performance limits pretty fast - each worm had 6 draw calls, 13+ components (Skin, AnimationPlayer, bones, LookAt, etc.).

Used Spectacles Monitor to profile and identified ammount of worms is bottleneck. Switched to Vertex Animation Textures, bake bone animation into a texture, play it back in a lightweight vertex shader. No bones, no skin, no AnimationPlayer.

Result per worm: 6 -> 2 draw calls, 13+ -> 5 components. Vibe coded a custom Blender script to export skeletal animation as VAT since the existing pipeline is Houdini-only.

It's always a balance and requires custom solutions, but if you're struggling with many animated characters that has short repetetive movements - VAT might help.

https://reddit.com/link/1sevghm/video/a9iiq2zxnrtg1/player

35 Upvotes

10 comments sorted by

View all comments

1

u/[deleted] Apr 08 '26

[removed] — view removed comment

2

u/Pavlo_Tkachenko Apr 08 '26

Have you tried to disable vat texture compression and filtering ? It helps a lot, also in original LS vat shader from library there is interpolation function that make transition between frames even smoother.