Graphics Reference
In-Depth Information
The following graph shows the performance impact of multithreading:
Impact of multithreaded cube map rendering with varying reflective surfaces, scene objects, CPU load, and threads.
The worst case scenario indicates a situation where there are two dynamic cube maps,
no CPU load, and only 100 cubes reflecting in the sky. The best case scenario is of three
dynamic cube maps with 2,000 matrix operations per mesh and 300 cubes in the sky.
The impact of multithreading did not hit a positive result when there was no additional
CPU load for 100 or 200 cubes in the sky but did for 300 cubes. It is clear that once there
is enough CPU load, multithreaded rendering produces significant performance benefits;
however, there are certain cases where it can have a detrimental effect.
There's moreā€¦
It is important to note that our implementation does not implement frustum culling
or object occlusion. We also do not take into consideration whether or not a face of the
cube map will be visible; however, this gets more complicated when you consider the
reflections of reflections.
Within the completed companion project for this recipe, any mesh with a name containing
reflector will have a cube map associated, any mesh name containing rotate will be
rotated around the y axis, and adding a mesh name containing replicate will cause the
object to be duplicated and arranged in a grid pattern. The same mesh can contain any or all
of the three of these key words. There is also an implementation of the six-pass cube map for
performance comparison.
 
Search WWH ::




Custom Search