Not crazy. Its a shader all the time. Pivots can be stored in various ways. They can be baked into uvs, or vertex colors, or tiny data textures. The Unreal Engine pivot painter implementation uses data textures for example. And even data textures can be used in SIMD fashion. This still requires an extra uvmap though, where…
This is actually a similar case to Nanite in a sense that gpu can work in a more parallel way, when the data is provided in a texture. Niagara in Unreal holds a lot of data in textures. 1 sprite ->1 pixel on the atlas. An operation can be applied on all sprites at once (SIMD). A texture is just a 2d array. Or multiple 1d…
Animation mixing is the harder part of this. If you want to fully blend between 2 animations, and not by parts, its still fairly straight forward. Hold 2 texture samplers for the data texture, put the original one in the first slot, and the new animation to the second one. Then interpolate the value. This will give you…