Neutron Engine

fully multi-threaded next generation 3D engine

Friday, November 21, 2008

Multi-threaded ZIP compression

I was in the mood to add more multi-threaded stuff to the engine so I’ve decided to speed up ZIP compression used in engine archiving tool by splitting it across multiple threads. The algorithm checks for available number of logical CPUs and scales accordingly. On my machine (quad core) I managed to compress 37979KBs of texture data in 7.53 seconds with compression ratio of 50.64%. This includes both CPU and HDD IO time.

posted by admin at 11:01 am  

Wednesday, November 19, 2008

Particle system multi-threading

Today I’ve implemented one thing I’ve been planning to do for a while now. I’ve extracted the update process of particle systems from the core thread and placed it in a separate one so the engine can run even faster. This now increases total number of threads in engine to 6 (core,render,particles,physics,messages,bsp) plus the main process. Just in time for the new Intel’s Core i7!

posted by admin at 7:34 pm  

Saturday, November 15, 2008

Real-time volumetric lighting

DirectX November SDK brought us a first glimpse of DirectX 11 and it’s capabilities. I must say that it looks extremely exciting, especially shader model 5.0 and multi-threading features. In that spirit, I’ve added a ray-tracing based volumetric lighting in NeutronE. Surprisingly, on my 8800 GTX the frame rate is around 60fps for indoor scenes although the shader is quite heavy. Once DirectX 11 is available this would be a perfect candidate for optimization using the new multi-threaded rendering. Finally, here are some screen shots :)

 

Volumetric lighting at daytime

 

Different angle

posted by admin at 9:47 am  

Tuesday, November 4, 2008

Real-time radiosity

I’ve been playing with real-time global illumination today, here are some screen shots from two test scenes. The algorithm is based on spherical harmonics and it’s using 3D texture to store final indirect illumination. For testing purposes probes are placed every meter which is definitely not enough but I think that results are not bad at all.

 

Comparison scene with and without indirect illumination

 

Different angle, indirect illumination at nighttime with moonlight and single spot light

posted by admin at 7:31 pm  

Powered by WordPress