OGRE-Next
2.3
Object-Oriented Graphics Rendering Engine
|
Areas of Interest are defined by both AABB and distance (can be 0). More...
#include <OgreInstantRadiosity.h>
Public Member Functions | |
AreaOfInterest (const Aabb &_aabb, Real _sphereRadius) | |
Public Attributes | |
Aabb | aabb |
Real | sphereRadius |
Areas of Interest are defined by both AABB and distance (can be 0).
AoIs serve two purposes:
We will shoot rays towards the AABB from the largest distance between the AABB and the sphere of radius sphereRadius and center at aabb.mCenter. Only the hits that lay inside the AABB or the sphere will be considered.
Example 1: Let's suppose for performance reasons you want to restrict AoI to four buildings in a city, In this case you set aabb to encompass all 4 buildings, and most likely sphereRadius to 0.
Example 2: You have a big building, but only want to shoot rays against the windows to avoid generating many unnecesary VPLs that hit the outer walls of the building. In this case you generate multiple AABBs each with the shape of each window, and set radius to a large value that will create A SPHERE with sphereRadius and center at aabb.mCenter. This distance will ensure the rays are hit from a place far enough to hit other walls and buidings occluding this object (i.e. the sphere should encompass the entire room or the entire house)
|
inline |
Aabb Ogre::InstantRadiosity::AreaOfInterest::aabb |
Real Ogre::InstantRadiosity::AreaOfInterest::sphereRadius |