|
Isle
|
[AI] Represents a Level of Detail (LOD) object for rendering, implemented with a mesh builder and supporting bitwise flag operations. More...
#include <viewlod.h>


Public Types | |
| enum | { c_bit4 = 0x10 } |
Public Member Functions | |
| ViewLOD (Tgl::Renderer *pRenderer) | |
| [AI] Constructs a ViewLOD using the provided Tgl Renderer. More... | |
| ~ViewLOD () override | |
| [AI] Destructor, deletes the owned mesh builder if present. More... | |
| double | AveragePolyArea () const override |
| [AI] Approximates the average area of polygons within this LOD. More... | |
| int | NVerts () const override |
| [AI] Returns the estimated number of vertices in this LOD. More... | |
| Tgl::MeshBuilder * | GetMeshBuilder () |
| [AI] Returns a pointer to the mesh builder associated with this LOD. More... | |
| const Tgl::MeshBuilder * | GetMeshBuilder () const |
| [AI] Returns a const pointer to the mesh builder for this LOD. More... | |
| undefined4 | GetUnknown0x08 () |
| [AI] Returns the internal flag value m_unk0x08. More... | |
| unsigned char | GetUnknown0x08Test4 () |
| [AI] Performs a bitwise AND (mask) with value 0xffffff04 on the internal flag, returning result as an unsigned char. More... | |
| unsigned char | GetUnknown0x08Test8 () |
| [AI] Performs a bitwise AND (mask) with value 0xffffff08 on the internal flag, returning result as an unsigned char. More... | |
| void | SetFlag (unsigned char p_flag) |
| [AI] Sets a given flag in the internal flags (m_unk0x08) using bitwise OR. More... | |
| void | ClearFlag (unsigned char p_flag) |
| [AI] Clears a given flag in the internal flags (m_unk0x08) using bitwise AND with negated p_flag. More... | |
Public Member Functions inherited from LODObject | |
| virtual | ~LODObject () |
| virtual double | AveragePolyArea () const =0 |
| [AI] Returns the average polygon area for this LOD. More... | |
| virtual int | NVerts () const =0 |
| [AI] Returns the number of vertices for this LOD. More... | |
| virtual int | NumPolys () const =0 |
| [AI] Returns the number of polygons for this LOD. More... | |
| virtual float | VTable0x10 ()=0 |
| [AI] Unknown method related to the LOD. More... | |
Protected Attributes | |
| Tgl::MeshBuilder * | m_meshBuilder |
| [AI] Points to a mesh builder instance for constructing or managing polygonal mesh data for this LOD. More... | |
| undefined4 | m_unk0x08 |
| [AI] Internal bitfield for flag/status storage controlling LOD state and behavior. More... | |
[AI] Represents a Level of Detail (LOD) object for rendering, implemented with a mesh builder and supporting bitwise flag operations.
[AI] ViewLOD handles a group of polygons (LODObject) at a specific detail level, utilizing a Tgl::MeshBuilder for 3D mesh construction. It provides methods for average polygon area estimation and custom flag manipulation, intended for optimizing rendering performance based on distance or importance. The flags in m_unk0x08 are manipulated to affect the object's LOD state.
| anonymous enum |
|
inline |
|
override |
[AI] Destructor, deletes the owned mesh builder if present.
Definition at line 4 of file viewlod.cpp.
|
inlineoverridevirtual |
[AI] Approximates the average area of polygons within this LOD.
[AI] Returns an average polygon area based on 2π*10 divided by the number of polygons. Used for LOD management heuristics. [AI]
Implements LODObject.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineoverridevirtual |
|
inline |
|
protected |
|
protected |