Richard Boegli's CnC_Generals_Zero_Hour Fork WIP
This is documentation of Richard Boegil's Zero Hour Fork
 
Loading...
Searching...
No Matches
DistLODClass Class Reference

#include <distlod.h>

Inherits CompositeRenderObjClass.

Public Member Functions

 DistLODClass (const DistLODDefClass &desc)
 
 DistLODClass (const DistLODClass &that)
 
virtual ~DistLODClass (void)
 
virtual RenderObjClassClone (void) const
 
virtual int Class_ID (void) const
 
virtual int Get_Num_Polys (void) const
 
virtual void Render (RenderInfoClass &rinfo)
 
virtual void Special_Render (SpecialRenderInfoClass &rinfo)
 
virtual void Set_Transform (const Matrix3D &m)
 
virtual void Set_Position (const Vector3 &v)
 
virtual int Get_Num_Sub_Objects (void) const
 
virtual RenderObjClassGet_Sub_Object (int index) const
 
virtual int Add_Sub_Object_To_Bone (RenderObjClass *subobj, int bone_index)
 
virtual void Set_Animation (void)
 
virtual void Set_Animation (HAnimClass *motion, float frame, int anim_mode=ANIM_MODE_MANUAL)
 
virtual void Set_Animation (HAnimClass *motion0, float frame0, HAnimClass *motion1, float frame1, float percentage)
 
virtual void Set_Animation (HAnimComboClass *anim_combo)
 
virtual HAnimClassPeek_Animation (void)
 
virtual int Get_Num_Bones (void)
 
virtual const char * Get_Bone_Name (int bone_index)
 
virtual int Get_Bone_Index (const char *bonename)
 
virtual const Matrix3DGet_Bone_Transform (const char *bonename)
 
virtual const Matrix3DGet_Bone_Transform (int boneindex)
 
virtual void Capture_Bone (int bindex)
 
virtual void Release_Bone (int bindex)
 
virtual bool Is_Bone_Captured (int bindex) const
 
virtual void Control_Bone (int bindex, const Matrix3D &tm, bool world_space_translation=false)
 
virtual bool Cast_Ray (RayCollisionTestClass &raytest)
 
virtual bool Cast_AABox (AABoxCollisionTestClass &boxtest)
 
virtual bool Cast_OBBox (OBBoxCollisionTestClass &boxtest)
 
virtual int Get_Num_Snap_Points (void)
 
virtual void Get_Snap_Point (int index, Vector3 *set)
 
virtual void Scale (float scale)
 
virtual void Scale (float scalex, float scaley, float scalez)
 
virtual float Get_Switch_Up_Dist (int index) const
 
virtual float Get_Switch_Down_Dist (int index) const
 
virtual void Set_Switch_Up_Dist (int index, float dist)
 
virtual void Set_Switch_Down_Dist (int index, float dist)
 
- Public Member Functions inherited from CompositeRenderObjClass
 CompositeRenderObjClass (void)
 
 CompositeRenderObjClass (const CompositeRenderObjClass &that)
 
virtual ~CompositeRenderObjClass (void)
 
CompositeRenderObjClassoperator= (const CompositeRenderObjClass &that)
 
virtual void Restart (void)
 
virtual const char * Get_Name (void) const
 
virtual void Set_Name (const char *name)
 
virtual const char * Get_Base_Model_Name (void) const
 
virtual void Set_Base_Model_Name (const char *name)
 
virtual void Notify_Added (SceneClass *scene)
 
virtual void Notify_Removed (SceneClass *scene)
 
virtual bool Intersect_AABox (AABoxIntersectionTestClass &boxtest)
 
virtual bool Intersect_OBBox (OBBoxIntersectionTestClass &boxtest)
 
virtual void Create_Decal (DecalGeneratorClass *generator)
 
virtual void Delete_Decal (uint32 decal_id)
 
virtual void Get_Obj_Space_Bounding_Sphere (SphereClass &sphere) const
 
virtual void Get_Obj_Space_Bounding_Box (AABoxClass &box) const
 
virtual void Update_Obj_Space_Bounding_Volumes (void)
 
virtual void Set_User_Data (void *value, bool recursive=false)
 
- Public Member Functions inherited from RenderObjClass
 RenderObjClass (void)
 
 RenderObjClass (const RenderObjClass &src)
 
RenderObjClassoperator= (const RenderObjClass &)
 
virtual ~RenderObjClass (void)
 
virtual void On_Frame_Update ()
 
virtual void Add (SceneClass *scene)
 
virtual void Remove (void)
 
virtual SceneClassGet_Scene (void)
 
virtual SceneClassPeek_Scene (void)
 
virtual void Set_Container (RenderObjClass *con)
 
virtual void Validate_Transform (void) const
 
RenderObjClassGet_Container (void) const
 
const Matrix3DGet_Transform (void) const
 
const Matrix3DGet_Transform (bool &is_transform_identity) const
 
const Matrix3DGet_Transform_No_Validity_Check (void) const
 
const Matrix3DGet_Transform_No_Validity_Check (bool &is_transform_identity) const
 
bool Is_Transform_Identity () const
 
bool Is_Transform_Identity_No_Validity_Check () const
 
Vector3 Get_Position (void) const
 
virtual int Add_Sub_Object (RenderObjClass *subobj)
 
virtual int Remove_Sub_Object (RenderObjClass *robj)
 
virtual RenderObjClassGet_Sub_Object_By_Name (const char *name, int *index=NULL) const
 
virtual int Get_Num_Sub_Objects_On_Bone (int boneindex) const
 
virtual RenderObjClassGet_Sub_Object_On_Bone (int index, int boneindex) const
 
virtual int Get_Sub_Object_Bone_Index (RenderObjClass *subobj) const
 
virtual int Get_Sub_Object_Bone_Index (int LodIndex, int ModelIndex) const
 
virtual int Add_Sub_Object_To_Bone (RenderObjClass *subobj, const char *bname)
 
virtual int Remove_Sub_Objects_From_Bone (int boneindex)
 
virtual int Remove_Sub_Objects_From_Bone (const char *bname)
 
virtual void Update_Sub_Object_Transforms (void)
 
virtual const HTreeClassGet_HTree (void) const
 
virtual bool Intersect (IntersectionClass *Intersection, IntersectionResultClass *Final_Result)
 
virtual bool Intersect_Sphere (IntersectionClass *Intersection, IntersectionResultClass *Final_Result)
 
virtual bool Intersect_Sphere_Quick (IntersectionClass *Intersection, IntersectionResultClass *Final_Result)
 
virtual const SphereClassGet_Bounding_Sphere (void) const
 
virtual const AABoxClassGet_Bounding_Box (void) const
 
virtual void Prepare_LOD (CameraClass &camera)
 
virtual void Recalculate_Static_LOD_Factors (void)
 
virtual void Increment_LOD (void)
 
virtual void Decrement_LOD (void)
 
virtual float Get_Cost (void) const
 
virtual float Get_Value (void) const
 
virtual float Get_Post_Increment_Value (void) const
 
virtual void Set_LOD_Level (int lod)
 
virtual int Get_LOD_Level (void) const
 
virtual int Get_LOD_Count (void) const
 
virtual void Set_LOD_Bias (float bias)
 
virtual int Calculate_Cost_Value_Arrays (float screen_area, float *values, float *costs) const
 
virtual RenderObjClassGet_Current_LOD (void)
 
virtual bool Build_Dependency_List (DynamicVectorClass< StringClass > &file_list, bool recursive=true)
 
virtual bool Build_Texture_List (DynamicVectorClass< StringClass > &texture_file_list, bool recursive=true)
 
virtual MaterialInfoClassGet_Material_Info (void)
 
virtual void * Get_User_Data ()
 
virtual float Get_Screen_Size (CameraClass &camera)
 
virtual void Set_ObjectScale (float scale)
 
const float Get_ObjectScale (void) const
 
void Set_ObjectColor (unsigned int color)
 
const unsigned int Get_ObjectColor (void) const
 
virtual int Get_Sort_Level (void) const
 
virtual void Set_Sort_Level (int level)
 
virtual int Is_Really_Visible (void)
 
virtual int Is_Not_Hidden_At_All (void)
 
virtual int Is_Visible (void) const
 
virtual void Set_Visible (int onoff)
 
virtual int Is_Hidden (void) const
 
virtual void Set_Hidden (int onoff)
 
virtual int Is_Animation_Hidden (void) const
 
virtual void Set_Animation_Hidden (int onoff)
 
virtual int Is_Force_Visible (void) const
 
virtual void Set_Force_Visible (int onoff)
 
virtual int Is_Translucent (void) const
 
virtual void Set_Translucent (int onoff)
 
virtual int Is_Alpha (void) const
 
virtual void Set_Alpha (int onoff)
 
virtual int Is_Additive (void) const
 
virtual void Set_Additive (int onoff)
 
virtual int Get_Collision_Type (void) const
 
virtual void Set_Collision_Type (int type)
 
virtual bool Is_Complete (void)
 
virtual bool Is_In_Scene (void)
 
virtual float Get_Native_Screen_Size (void) const
 
virtual void Set_Native_Screen_Size (float screensize)
 
void Set_Sub_Objects_Match_LOD (int onoff)
 
int Is_Sub_Objects_Match_LOD_Enabled (void)
 
void Set_Sub_Object_Transforms_Dirty (bool onoff)
 
bool Are_Sub_Object_Transforms_Dirty (void)
 
void Set_Ignore_LOD_Cost (bool onoff)
 
bool Is_Ignoring_LOD_Cost (void)
 
void Set_Is_Self_Shadowed ()
 
void Unset_Is_Self_Shadowed ()
 
int Is_Self_Shadowed () const
 
virtual const PersistFactoryClassGet_Factory (void) const
 
virtual bool Save (ChunkSaveClass &csave)
 
virtual bool Load (ChunkLoadClass &cload)
 
RenderHookClassGet_Render_Hook (void)
 
void Set_Render_Hook (RenderHookClass *hook)
 
- Public Member Functions inherited from RefCountClass
 RefCountClass (void)
 
 RefCountClass (const RefCountClass &)
 
void Add_Ref (void) const
 
WWINLINE void Release_Ref (void) const
 
int Num_Refs (void) const
 
virtual void Delete_This (void)
 
- Public Member Functions inherited from PostLoadableClass
 PostLoadableClass (void)
 
virtual ~PostLoadableClass (void)
 
virtual void On_Post_Load (void)
 
bool Is_Post_Load_Registered (void)
 
void Set_Post_Load_Registered (bool onoff)
 
- Public Member Functions inherited from MultiListObjectClass
 MultiListObjectClass (void)
 
virtual ~MultiListObjectClass (void)
 
MultiListNodeClassGet_List_Node () const
 
void Set_List_Node (MultiListNodeClass *node)
 

Additional Inherited Members

- Public Types inherited from RenderObjClass
enum  { USER_DATA_MATERIAL_OVERRIDE = 0x01234567 }
 
enum  {
  CLASSID_UNKNOWN = 0xFFFFFFFF , CLASSID_MESH = 0 , CLASSID_HMODEL , CLASSID_DISTLOD ,
  CLASSID_PREDLODGROUP , CLASSID_TILEMAP , CLASSID_IMAGE3D , CLASSID_LINE3D ,
  CLASSID_BITMAP2D , CLASSID_CAMERA , CLASSID_DYNAMESH , CLASSID_DYNASCREENMESH ,
  CLASSID_TEXTDRAW , CLASSID_FOG , CLASSID_LAYERFOG , CLASSID_LIGHT ,
  CLASSID_PARTICLEEMITTER , CLASSID_PARTICLEBUFFER , CLASSID_SCREENPOINTGROUP , CLASSID_VIEWPOINTGROUP ,
  CLASSID_WORLDPOINTGROUP , CLASSID_TEXT2D , CLASSID_TEXT3D , CLASSID_NULL ,
  CLASSID_COLLECTION , CLASSID_FLARE , CLASSID_HLOD , CLASSID_AABOX ,
  CLASSID_OBBOX , CLASSID_SEGLINE , CLASSID_SPHERE , CLASSID_RING ,
  CLASSID_BOUNDFOG , CLASSID_DAZZLE , CLASSID_SOUND , CLASSID_SEGLINETRAIL ,
  CLASSID_LAND , CLASSID_SHDMESH , CLASSID_LAST = 0x0000FFFF
}
 
enum  AnimMode {
  ANIM_MODE_MANUAL = 0 , ANIM_MODE_LOOP , ANIM_MODE_ONCE , ANIM_MODE_LOOP_PINGPONG ,
  ANIM_MODE_LOOP_BACKWARDS , ANIM_MODE_ONCE_BACKWARDS
}
 
- Static Public Member Functions inherited from RefCountClass
static int Total_Refs (void)
 
static RefCountClassAdd_Active_Ref (RefCountClass *obj)
 
static RefCountClassSet_Ref_Owner (RefCountClass *obj, char *file, int line)
 
static void Remove_Active_Ref (RefCountClass *obj)
 
static bool Validate_Active_Ref (RefCountClass *obj)
 
- Public Attributes inherited from RefCountClass
RefCountNodeClass ActiveRefNode
 
ActiveRefStruct ActiveRefInfo
 
- Static Public Attributes inherited from RenderObjClass
static const float AT_MIN_LOD = FLT_MAX
 
static const float AT_MAX_LOD = -1.0f
 
- Static Public Attributes inherited from RefCountClass
static RefCountListClass ActiveRefList
 
- Protected Types inherited from RenderObjClass
enum  {
  COLL_TYPE_MASK = 0x000000FF , IS_VISIBLE = 0x00000100 , IS_NOT_HIDDEN = 0x00000200 , IS_NOT_ANIMATION_HIDDEN = 0x00000400 ,
  IS_FORCE_VISIBLE = 0x00000800 , BOUNDING_VOLUMES_VALID = 0x00002000 , IS_TRANSLUCENT = 0x00004000 , IGNORE_LOD_COST = 0x00008000 ,
  SUBOBJS_MATCH_LOD = 0x00010000 , SUBOBJ_TRANSFORMS_DIRTY = 0x00020000 , IS_ALPHA = 0x00040000 , IS_ADDITIVE = 0x00100000 ,
  IS_SELF_SHADOWED = 0x00080000 , IS_CHEATER = 0x00100000 , IS_REALLY_VISIBLE = IS_VISIBLE | IS_NOT_HIDDEN | IS_NOT_ANIMATION_HIDDEN , IS_NOT_HIDDEN_AT_ALL = IS_NOT_HIDDEN | IS_NOT_ANIMATION_HIDDEN ,
  DEFAULT_BITS = COLL_TYPE_ALL | IS_NOT_HIDDEN | IS_NOT_ANIMATION_HIDDEN
}
 
- Protected Member Functions inherited from RenderObjClass
virtual void Add_Dependencies_To_List (DynamicVectorClass< StringClass > &file_list, bool textures_only=false)
 
virtual void Update_Cached_Bounding_Volumes (void) const
 
virtual void Update_Sub_Object_Bits (void)
 
bool Bounding_Volumes_Valid (void) const
 
void Invalidate_Cached_Bounding_Volumes (void) const
 
void Validate_Cached_Bounding_Volumes (void) const
 
- Protected Member Functions inherited from RefCountClass
virtual ~RefCountClass (void)
 
- Protected Attributes inherited from CompositeRenderObjClass
StringClass Name
 
StringClass BaseModelName
 
SphereClass ObjSphere
 
AABoxClass ObjBox
 
- Protected Attributes inherited from RenderObjClass
unsigned long Bits
 
Matrix3D Transform
 
float ObjectScale
 
unsigned int ObjectColor
 
SphereClass CachedBoundingSphere
 
AABoxClass CachedBoundingBox
 
float NativeScreenSize
 
bool IsTransformIdentity
 
SceneClassScene
 
RenderObjClassContainer
 
void * User_Data
 
RenderHookClassRenderHook
 

Detailed Description

Definition at line 67 of file distlod.h.

Constructor & Destructor Documentation

◆ DistLODClass() [1/2]

DistLODClass::DistLODClass ( const DistLODDefClass & desc)

Definition at line 389 of file distlod.cpp.

◆ DistLODClass() [2/2]

DistLODClass::DistLODClass ( const DistLODClass & that)

Definition at line 424 of file distlod.cpp.

◆ ~DistLODClass()

DistLODClass::~DistLODClass ( void )
virtual

Definition at line 457 of file distlod.cpp.

Member Function Documentation

◆ Add_Sub_Object_To_Bone()

int DistLODClass::Add_Sub_Object_To_Bone ( RenderObjClass * subobj,
int bone_index )
virtual

Reimplemented from RenderObjClass.

Definition at line 597 of file distlod.cpp.

◆ Capture_Bone()

void DistLODClass::Capture_Bone ( int bindex)
virtual

Reimplemented from RenderObjClass.

Definition at line 868 of file distlod.cpp.

◆ Cast_AABox()

bool DistLODClass::Cast_AABox ( AABoxCollisionTestClass & boxtest)
virtual

Reimplemented from CompositeRenderObjClass.

Definition at line 975 of file distlod.cpp.

◆ Cast_OBBox()

bool DistLODClass::Cast_OBBox ( OBBoxCollisionTestClass & boxtest)
virtual

Reimplemented from CompositeRenderObjClass.

Definition at line 997 of file distlod.cpp.

◆ Cast_Ray()

bool DistLODClass::Cast_Ray ( RayCollisionTestClass & raytest)
virtual

Reimplemented from CompositeRenderObjClass.

Definition at line 951 of file distlod.cpp.

◆ Class_ID()

virtual int DistLODClass::Class_ID ( void ) const
inlinevirtual

Reimplemented from RenderObjClass.

Definition at line 75 of file distlod.h.

◆ Clone()

virtual RenderObjClass * DistLODClass::Clone ( void ) const
inlinevirtual

Implements RenderObjClass.

Definition at line 74 of file distlod.h.

◆ Control_Bone()

void DistLODClass::Control_Bone ( int bindex,
const Matrix3D & tm,
bool world_space_translation = false )
virtual

Reimplemented from RenderObjClass.

Definition at line 929 of file distlod.cpp.

◆ Get_Bone_Index()

int DistLODClass::Get_Bone_Index ( const char * bonename)
virtual

Reimplemented from RenderObjClass.

Definition at line 811 of file distlod.cpp.

◆ Get_Bone_Name()

const char * DistLODClass::Get_Bone_Name ( int bone_index)
virtual

Reimplemented from RenderObjClass.

Definition at line 793 of file distlod.cpp.

◆ Get_Bone_Transform() [1/2]

const Matrix3D & DistLODClass::Get_Bone_Transform ( const char * bonename)
virtual

Reimplemented from RenderObjClass.

Definition at line 830 of file distlod.cpp.

◆ Get_Bone_Transform() [2/2]

const Matrix3D & DistLODClass::Get_Bone_Transform ( int boneindex)
virtual

Reimplemented from RenderObjClass.

Definition at line 849 of file distlod.cpp.

◆ Get_Num_Bones()

int DistLODClass::Get_Num_Bones ( void )
virtual

Reimplemented from RenderObjClass.

Definition at line 775 of file distlod.cpp.

◆ Get_Num_Polys()

int DistLODClass::Get_Num_Polys ( void ) const
virtual

Reimplemented from CompositeRenderObjClass.

Definition at line 506 of file distlod.cpp.

◆ Get_Num_Snap_Points()

int DistLODClass::Get_Num_Snap_Points ( void )
virtual

Reimplemented from RenderObjClass.

Definition at line 1019 of file distlod.cpp.

◆ Get_Num_Sub_Objects()

int DistLODClass::Get_Num_Sub_Objects ( void ) const
virtual

Reimplemented from RenderObjClass.

Definition at line 566 of file distlod.cpp.

◆ Get_Snap_Point()

void DistLODClass::Get_Snap_Point ( int index,
Vector3 * set )
virtual

Reimplemented from RenderObjClass.

Definition at line 1037 of file distlod.cpp.

◆ Get_Sub_Object()

RenderObjClass * DistLODClass::Get_Sub_Object ( int index) const
virtual

Reimplemented from RenderObjClass.

Definition at line 584 of file distlod.cpp.

◆ Get_Switch_Down_Dist()

virtual float DistLODClass::Get_Switch_Down_Dist ( int index) const
inlinevirtual

Definition at line 138 of file distlod.h.

◆ Get_Switch_Up_Dist()

virtual float DistLODClass::Get_Switch_Up_Dist ( int index) const
inlinevirtual

Definition at line 137 of file distlod.h.

◆ Is_Bone_Captured()

bool DistLODClass::Is_Bone_Captured ( int bindex) const
virtual

Reimplemented from RenderObjClass.

Definition at line 910 of file distlod.cpp.

◆ Peek_Animation()

HAnimClass * DistLODClass::Peek_Animation ( void )
virtual

Reimplemented from RenderObjClass.

Definition at line 757 of file distlod.cpp.

◆ Release_Bone()

void DistLODClass::Release_Bone ( int bindex)
virtual

Reimplemented from RenderObjClass.

Definition at line 889 of file distlod.cpp.

◆ Render()

void DistLODClass::Render ( RenderInfoClass & rinfo)
virtual

Implements RenderObjClass.

Definition at line 524 of file distlod.cpp.

◆ Scale() [1/2]

void DistLODClass::Scale ( float scale)
virtual

Reimplemented from RenderObjClass.

Definition at line 1055 of file distlod.cpp.

◆ Scale() [2/2]

void DistLODClass::Scale ( float scalex,
float scaley,
float scalez )
virtual

Reimplemented from RenderObjClass.

Definition at line 1076 of file distlod.cpp.

◆ Set_Animation() [1/4]

void DistLODClass::Set_Animation ( HAnimClass * motion,
float frame,
int anim_mode = ANIM_MODE_MANUAL )
virtual

Reimplemented from RenderObjClass.

Definition at line 694 of file distlod.cpp.

◆ Set_Animation() [2/4]

void DistLODClass::Set_Animation ( HAnimClass * motion0,
float frame0,
HAnimClass * motion1,
float frame1,
float percentage )
virtual

Reimplemented from RenderObjClass.

Definition at line 715 of file distlod.cpp.

◆ Set_Animation() [3/4]

void DistLODClass::Set_Animation ( HAnimComboClass * anim_combo)
virtual

Reimplemented from RenderObjClass.

Definition at line 736 of file distlod.cpp.

◆ Set_Animation() [4/4]

void DistLODClass::Set_Animation ( void )
virtual

Reimplemented from RenderObjClass.

Definition at line 673 of file distlod.cpp.

◆ Set_Position()

void DistLODClass::Set_Position ( const Vector3 & v)
virtual

Reimplemented from RenderObjClass.

Definition at line 651 of file distlod.cpp.

◆ Set_Switch_Down_Dist()

virtual void DistLODClass::Set_Switch_Down_Dist ( int index,
float dist )
inlinevirtual

Definition at line 140 of file distlod.h.

◆ Set_Switch_Up_Dist()

virtual void DistLODClass::Set_Switch_Up_Dist ( int index,
float dist )
inlinevirtual

Definition at line 139 of file distlod.h.

◆ Set_Transform()

void DistLODClass::Set_Transform ( const Matrix3D & m)
virtual

Reimplemented from RenderObjClass.

Definition at line 627 of file distlod.cpp.

◆ Special_Render()

void DistLODClass::Special_Render ( SpecialRenderInfoClass & rinfo)
virtual

Reimplemented from RenderObjClass.

Definition at line 547 of file distlod.cpp.


The documentation for this class was generated from the following files: