Im going through the api looking at the triangleselector documentation and Im seeing this for selecting triangles based on bounding box:
"Please note that unoptimized triangle selectors also may return triangles, which are not in the specific box at all. "
what is the difference between optimized and unoptimized triangle selectors?
optimized triangle lists?
All it means is that some of the selectors don't do what the function requirements say it does. For example...
The parameters description for box says that the method only returns triangles that are inside the box. The note is a disclaimer that says not all triangle selectors do this. So from your perspective, this means that you get to go through and test the returned triangles to see if they are in the box, right after you call the method that is supposed to do that for you.
Travis
Code: Select all
virtual void irr::scene::ITriangleSelector::getTriangles ( core::triangle3df * triangles,
s32 arraySize,
s32 & outTriangleCount,
const core::aabbox3d< f32 > & box,
const core::matrix4 * transform = 0
) [pure virtual]
Gets all triangles which lie within a specific bounding box. Please note that unoptimized triangle selectors also may return triangles, which are not in the specific box at all.
Parameters:
box,: Only triangles which are in this axis aligned bounding box will be written into the array.
Travis
Just FYI, it probably won't be just a few extra triangles. Depending on the function you are calling some of the selectors return every one of their triangles.well it's fine if the triangle selector method returns a few triangles which aren't in the box.
The bounding box and plain selector return all triangles, even if the box is miles away from the nearest vertex. The terrain selector and the oct tree selector are more friendly.
Travis