fenomas / noa

Experimental voxel game engine.
MIT License
611 stars 87 forks source link

Use GPU to speed up the Performance #143

Closed sourcerose closed 3 years ago

sourcerose commented 3 years ago

This is an enhancment that might take a long time to develop but I think it could greatly improve Performance. Also I already know BabylonJS already uses the GPU. However, the functions within Noa are what is using a lot of CPU. https://github.com/gpujs/gpu.js/ could greatly help with the Performance of the engine.

fenomas commented 3 years ago

Hi, I'm certainly open to suggestions if you have any specific ideas for what processing could be done on the GPU.

But AFAIK the heavy CPU processing in noa is mainly meshing and things like physics, which I would imagine are too tightly coupled to local state to be offloaded.

sourcerose commented 3 years ago

You're right. Sorry for the waste of time.

fenomas commented 3 years ago

Hi, not at all, it would be great if anyone knows any ways to make it work. Personally I know very little about GPGPU, so I'm only guessing about what is/isn't feasible.