-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Description
Currently, on mobile devices and desktops, animated meshes are limited excessively by CPU, and not GPU. For example, when I load up 15 animated waterwheels with 120 faces each, Mobile (1.2 Ghz CPU, 400 MHz GPU with 128 KB ram) FPS drops to 20 from 28.
When I do the same amount of animated windmill wheels with 700 faces each, The fps drops to the same exact 20 fps. Therefore animated meshes are CPU bound and not GPU bound.
Now, Looking at our .cpp code, I see a lot of processing is being done with each step of an animated mesh (entity). Most of this is highly related to texture changing and updating.
Why have we not move these calculations to GPU processing instead? Irrlicht supports animated meshes with textures on GPU already, so I am wondering why this has not been implemented yet?
I have some experience in GPU work, so I can help a core dev with the project, but I doubt I can make the needed changes alone.