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

#include <rendobj.h>

Inherits RefCountClass, PersistClass, and MultiListObjectClass.

Inherited by BaseHeightMapRenderObjClass, BoxRenderObjClass, CameraClass, CompositeRenderObjClass, DazzleRenderObjClass, DrawObject, DynamicMeshClass, LightClass, Line3DClass, MeshClass, MirrorRenderObjClass, Null3DObjClass, ParticleBufferClass, ParticleEmitterClass, RingRenderObjClass, SegmentedLineClass, ShdMeshClass, SphereRenderObjClass, StreakLineClass, TerrainTracksRenderObjClass, W3DStatusCircle, and WaterRenderObjClass.

Classes

struct  Material_Override
 

Public Types

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
}
 

Public Member Functions

 RenderObjClass (void)
 
 RenderObjClass (const RenderObjClass &src)
 
RenderObjClassoperator= (const RenderObjClass &)
 
virtual ~RenderObjClass (void)
 
virtual RenderObjClassClone (void) const =0
 
virtual int Class_ID (void) const
 
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 int Get_Num_Polys (void) const
 
virtual void Render (RenderInfoClass &rinfo)=0
 
virtual void Special_Render (SpecialRenderInfoClass &rinfo)
 
virtual void On_Frame_Update ()
 
virtual void Restart (void)
 
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
 
virtual void Set_Transform (const Matrix3D &m)
 
virtual void Set_Position (const Vector3 &v)
 
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 void Notify_Added (SceneClass *scene)
 
virtual void Notify_Removed (SceneClass *scene)
 
virtual int Get_Num_Sub_Objects (void) const
 
virtual RenderObjClassGet_Sub_Object (int index) 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, int bone_index)
 
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 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 &objtm, bool world_space_translation=false)
 
virtual const HTreeClassGet_HTree (void) const
 
virtual bool Cast_Ray (RayCollisionTestClass &raytest)
 
virtual bool Cast_AABox (AABoxCollisionTestClass &boxtest)
 
virtual bool Cast_OBBox (OBBoxCollisionTestClass &boxtest)
 
virtual bool Intersect_AABox (AABoxIntersectionTestClass &boxtest)
 
virtual bool Intersect_OBBox (OBBoxIntersectionTestClass &boxtest)
 
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 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 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 void Create_Decal (DecalGeneratorClass *generator)
 
virtual void Delete_Decal (uint32 decal_id)
 
virtual MaterialInfoClassGet_Material_Info (void)
 
virtual void Set_User_Data (void *value, bool recursive=false)
 
virtual void * Get_User_Data ()
 
virtual int Get_Num_Snap_Points (void)
 
virtual void Get_Snap_Point (int index, Vector3 *set)
 
virtual float Get_Screen_Size (CameraClass &camera)
 
virtual void Scale (float scale)
 
virtual void Scale (float scalex, float scaley, float scalez)
 
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)
 

Static Public Attributes

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

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

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

unsigned long Bits
 
Matrix3D Transform
 
float ObjectScale
 
unsigned int ObjectColor
 
SphereClass CachedBoundingSphere
 
AABoxClass CachedBoundingBox
 
float NativeScreenSize
 
bool IsTransformIdentity
 
SceneClassScene
 
RenderObjClassContainer
 
void * User_Data
 
RenderHookClassRenderHook
 

Friends

class SceneClass
 
class RenderObjProxyClass
 

Additional Inherited Members

- 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
 

Detailed Description

Definition at line 172 of file rendobj.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protected
Enumerator
COLL_TYPE_MASK 
IS_VISIBLE 
IS_NOT_HIDDEN 
IS_NOT_ANIMATION_HIDDEN 
IS_FORCE_VISIBLE 
BOUNDING_VOLUMES_VALID 
IS_TRANSLUCENT 
IGNORE_LOD_COST 
SUBOBJS_MATCH_LOD 
SUBOBJ_TRANSFORMS_DIRTY 
IS_ALPHA 
IS_ADDITIVE 
IS_SELF_SHADOWED 
IS_CHEATER 
IS_REALLY_VISIBLE 
IS_NOT_HIDDEN_AT_ALL 
DEFAULT_BITS 

Definition at line 526 of file rendobj.h.

◆ anonymous enum

anonymous enum
Enumerator
USER_DATA_MATERIAL_OVERRIDE 

Definition at line 179 of file rendobj.h.

◆ anonymous enum

anonymous enum
Enumerator
CLASSID_UNKNOWN 
CLASSID_MESH 
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 

Definition at line 196 of file rendobj.h.

◆ AnimMode

Enumerator
ANIM_MODE_MANUAL 
ANIM_MODE_LOOP 
ANIM_MODE_ONCE 
ANIM_MODE_LOOP_PINGPONG 
ANIM_MODE_LOOP_BACKWARDS 
ANIM_MODE_ONCE_BACKWARDS 

Definition at line 331 of file rendobj.h.

Constructor & Destructor Documentation

◆ RenderObjClass() [1/2]

RenderObjClass::RenderObjClass ( void )

Definition at line 170 of file rendobj.cpp.

◆ RenderObjClass() [2/2]

RenderObjClass::RenderObjClass ( const RenderObjClass & src)

Definition at line 199 of file rendobj.cpp.

◆ ~RenderObjClass()

virtual RenderObjClass::~RenderObjClass ( void )
inlinevirtual

Definition at line 242 of file rendobj.h.

Member Function Documentation

◆ Add()

void RenderObjClass::Add ( SceneClass * scene)
virtual

Definition at line 795 of file rendobj.cpp.

◆ Add_Dependencies_To_List()

void RenderObjClass::Add_Dependencies_To_List ( DynamicVectorClass< StringClass > & file_list,
bool textures_only = false )
protectedvirtual

Reimplemented in MeshClass, ParticleEmitterClass, and ShdMeshClass.

Definition at line 1135 of file rendobj.cpp.

◆ Add_Sub_Object()

virtual int RenderObjClass::Add_Sub_Object ( RenderObjClass * subobj)
inlinevirtual

Reimplemented in CollectionClass, and HLodClass.

Definition at line 311 of file rendobj.h.

◆ Add_Sub_Object_To_Bone() [1/2]

int RenderObjClass::Add_Sub_Object_To_Bone ( RenderObjClass * subobj,
const char * bname )
virtual

Definition at line 583 of file rendobj.cpp.

◆ Add_Sub_Object_To_Bone() [2/2]

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

Reimplemented in DistLODClass, and HLodClass.

Definition at line 319 of file rendobj.h.

◆ Are_Sub_Object_Transforms_Dirty()

bool RenderObjClass::Are_Sub_Object_Transforms_Dirty ( void )
inline

Definition at line 495 of file rendobj.h.

◆ Bounding_Volumes_Valid()

bool RenderObjClass::Bounding_Volumes_Valid ( void ) const
inlineprotected

Definition at line 522 of file rendobj.h.

◆ Build_Dependency_List()

bool RenderObjClass::Build_Dependency_List ( DynamicVectorClass< StringClass > & file_list,
bool recursive = true )
virtual

Definition at line 1052 of file rendobj.cpp.

◆ Build_Texture_List()

bool RenderObjClass::Build_Texture_List ( DynamicVectorClass< StringClass > & texture_file_list,
bool recursive = true )
virtual

Definition at line 1089 of file rendobj.cpp.

◆ Calculate_Cost_Value_Arrays()

int RenderObjClass::Calculate_Cost_Value_Arrays ( float screen_area,
float * values,
float * costs ) const
virtual

Reimplemented in HLodClass, ParticleBufferClass, RingRenderObjClass, and SphereRenderObjClass.

Definition at line 703 of file rendobj.cpp.

◆ Capture_Bone()

virtual void RenderObjClass::Capture_Bone ( int bindex)
inlinevirtual

Reimplemented in Animatable3DObjClass, and DistLODClass.

Definition at line 357 of file rendobj.h.

◆ Cast_AABox()

virtual bool RenderObjClass::Cast_AABox ( AABoxCollisionTestClass & boxtest)
inlinevirtual

◆ Cast_OBBox()

virtual bool RenderObjClass::Cast_OBBox ( OBBoxCollisionTestClass & boxtest)
inlinevirtual

◆ Cast_Ray()

◆ Class_ID()

◆ Clone()

◆ Control_Bone()

virtual void RenderObjClass::Control_Bone ( int bindex,
const Matrix3D & objtm,
bool world_space_translation = false )
inlinevirtual

Reimplemented in Animatable3DObjClass, and DistLODClass.

Definition at line 362 of file rendobj.h.

◆ Create_Decal()

virtual void RenderObjClass::Create_Decal ( DecalGeneratorClass * generator)
inlinevirtual

Reimplemented in CompositeRenderObjClass, HLodClass, and MeshClass.

Definition at line 438 of file rendobj.h.

◆ Decrement_LOD()

virtual void RenderObjClass::Decrement_LOD ( void )
inlinevirtual

◆ Delete_Decal()

virtual void RenderObjClass::Delete_Decal ( uint32 decal_id)
inlinevirtual

Reimplemented in CompositeRenderObjClass, HLodClass, and MeshClass.

Definition at line 439 of file rendobj.h.

◆ Get_Base_Model_Name()

virtual const char * RenderObjClass::Get_Base_Model_Name ( void ) const
inlinevirtual

Reimplemented in CompositeRenderObjClass.

Definition at line 252 of file rendobj.h.

◆ Get_Bone_Index()

virtual int RenderObjClass::Get_Bone_Index ( const char * bonename)
inlinevirtual

Reimplemented in Animatable3DObjClass, and DistLODClass.

Definition at line 354 of file rendobj.h.

◆ Get_Bone_Name()

virtual const char * RenderObjClass::Get_Bone_Name ( int bone_index)
inlinevirtual

Reimplemented in Animatable3DObjClass, and DistLODClass.

Definition at line 353 of file rendobj.h.

◆ Get_Bone_Transform() [1/2]

virtual const Matrix3D & RenderObjClass::Get_Bone_Transform ( const char * bonename)
inlinevirtual

Reimplemented in Animatable3DObjClass, and DistLODClass.

Definition at line 355 of file rendobj.h.

◆ Get_Bone_Transform() [2/2]

virtual const Matrix3D & RenderObjClass::Get_Bone_Transform ( int boneindex)
inlinevirtual

Reimplemented in Animatable3DObjClass, and DistLODClass.

Definition at line 356 of file rendobj.h.

◆ Get_Bounding_Box()

WWINLINE const AABoxClass & RenderObjClass::Get_Bounding_Box ( void ) const
virtual

Reimplemented in HLodClass.

Definition at line 575 of file rendobj.h.

◆ Get_Bounding_Sphere()

WWINLINE const SphereClass & RenderObjClass::Get_Bounding_Sphere ( void ) const
virtual

Reimplemented in HLodClass.

Definition at line 567 of file rendobj.h.

◆ Get_Collision_Type()

virtual int RenderObjClass::Get_Collision_Type ( void ) const
inlinevirtual

Definition at line 484 of file rendobj.h.

◆ Get_Container()

RenderObjClass * RenderObjClass::Get_Container ( void ) const
inline

Definition at line 291 of file rendobj.h.

◆ Get_Cost()

float RenderObjClass::Get_Cost ( void ) const
virtual

◆ Get_Current_LOD()

virtual RenderObjClass * RenderObjClass::Get_Current_LOD ( void )
inlinevirtual

Reimplemented in HLodClass.

Definition at line 419 of file rendobj.h.

◆ Get_Factory()

const PersistFactoryClass & RenderObjClass::Get_Factory ( void ) const
virtual

Implements PersistClass.

Reimplemented in DazzleRenderObjClass, and LightClass.

Definition at line 1297 of file rendobj.cpp.

◆ Get_HTree()

virtual const HTreeClass * RenderObjClass::Get_HTree ( void ) const
inlinevirtual

Reimplemented in Animatable3DObjClass.

Definition at line 363 of file rendobj.h.

◆ Get_LOD_Count()

virtual int RenderObjClass::Get_LOD_Count ( void ) const
inlinevirtual

◆ Get_LOD_Level()

virtual int RenderObjClass::Get_LOD_Level ( void ) const
inlinevirtual

◆ Get_Material_Info()

virtual MaterialInfoClass * RenderObjClass::Get_Material_Info ( void )
inlinevirtual

Reimplemented in DynamicMeshClass, and MeshClass.

Definition at line 444 of file rendobj.h.

◆ Get_Name()

virtual const char * RenderObjClass::Get_Name ( void ) const
inlinevirtual

◆ Get_Native_Screen_Size()

virtual float RenderObjClass::Get_Native_Screen_Size ( void ) const
inlinevirtual

Definition at line 488 of file rendobj.h.

◆ Get_Num_Bones()

virtual int RenderObjClass::Get_Num_Bones ( void )
inlinevirtual

Reimplemented in Animatable3DObjClass, and DistLODClass.

Definition at line 352 of file rendobj.h.

◆ Get_Num_Polys()

virtual int RenderObjClass::Get_Num_Polys ( void ) const
inlinevirtual

◆ Get_Num_Snap_Points()

virtual int RenderObjClass::Get_Num_Snap_Points ( void )
inlinevirtual

Reimplemented in DistLODClass, and HLodClass.

Definition at line 447 of file rendobj.h.

◆ Get_Num_Sub_Objects()

virtual int RenderObjClass::Get_Num_Sub_Objects ( void ) const
inlinevirtual

Reimplemented in CollectionClass, DistLODClass, and HLodClass.

Definition at line 309 of file rendobj.h.

◆ Get_Num_Sub_Objects_On_Bone()

virtual int RenderObjClass::Get_Num_Sub_Objects_On_Bone ( int boneindex) const
inlinevirtual

Reimplemented in HLodClass.

Definition at line 315 of file rendobj.h.

◆ Get_Obj_Space_Bounding_Box()

◆ Get_Obj_Space_Bounding_Sphere()

◆ Get_ObjectColor()

const unsigned int RenderObjClass::Get_ObjectColor ( void ) const
inline

Definition at line 457 of file rendobj.h.

◆ Get_ObjectScale()

const float RenderObjClass::Get_ObjectScale ( void ) const
inline

Definition at line 455 of file rendobj.h.

◆ Get_Position()

Vector3 RenderObjClass::Get_Position ( void ) const

Definition at line 508 of file rendobj.cpp.

◆ Get_Post_Increment_Value()

virtual float RenderObjClass::Get_Post_Increment_Value ( void ) const
inlinevirtual

◆ Get_Render_Hook()

RenderHookClass * RenderObjClass::Get_Render_Hook ( void )
inline

Definition at line 512 of file rendobj.h.

◆ Get_Scene()

SceneClass * RenderObjClass::Get_Scene ( void )
virtual

Definition at line 361 of file rendobj.cpp.

◆ Get_Screen_Size()

float RenderObjClass::Get_Screen_Size ( CameraClass & camera)
virtual

Definition at line 324 of file rendobj.cpp.

◆ Get_Snap_Point()

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

Reimplemented in CollectionClass, DistLODClass, and HLodClass.

Definition at line 448 of file rendobj.h.

◆ Get_Sort_Level()

virtual int RenderObjClass::Get_Sort_Level ( void ) const
inlinevirtual

Reimplemented in DynamicMeshClass, Line3DClass, MeshClass, and WaterRenderObjClass.

Definition at line 459 of file rendobj.h.

◆ Get_Sub_Object()

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

Reimplemented in CollectionClass, DistLODClass, and HLodClass.

Definition at line 310 of file rendobj.h.

◆ Get_Sub_Object_Bone_Index() [1/2]

virtual int RenderObjClass::Get_Sub_Object_Bone_Index ( int LodIndex,
int ModelIndex ) const
inlinevirtual

Reimplemented in HLodClass.

Definition at line 318 of file rendobj.h.

◆ Get_Sub_Object_Bone_Index() [2/2]

virtual int RenderObjClass::Get_Sub_Object_Bone_Index ( RenderObjClass * subobj) const
inlinevirtual

Reimplemented in HLodClass.

Definition at line 317 of file rendobj.h.

◆ Get_Sub_Object_By_Name()

RenderObjClass * RenderObjClass::Get_Sub_Object_By_Name ( const char * name,
int * index = NULL ) const
virtual

Definition at line 527 of file rendobj.cpp.

◆ Get_Sub_Object_On_Bone()

virtual RenderObjClass * RenderObjClass::Get_Sub_Object_On_Bone ( int index,
int boneindex ) const
inlinevirtual

Reimplemented in HLodClass.

Definition at line 316 of file rendobj.h.

◆ Get_Transform() [1/2]

WWINLINE const Matrix3D & RenderObjClass::Get_Transform ( bool & is_transform_identity) const

Definition at line 623 of file rendobj.h.

◆ Get_Transform() [2/2]

WWINLINE const Matrix3D & RenderObjClass::Get_Transform ( void ) const

Definition at line 617 of file rendobj.h.

◆ Get_Transform_No_Validity_Check() [1/2]

WWINLINE const Matrix3D & RenderObjClass::Get_Transform_No_Validity_Check ( bool & is_transform_identity) const

Definition at line 643 of file rendobj.h.

◆ Get_Transform_No_Validity_Check() [2/2]

WWINLINE const Matrix3D & RenderObjClass::Get_Transform_No_Validity_Check ( void ) const

Definition at line 637 of file rendobj.h.

◆ Get_User_Data()

virtual void * RenderObjClass::Get_User_Data ( )
inlinevirtual

Definition at line 446 of file rendobj.h.

◆ Get_Value()

virtual float RenderObjClass::Get_Value ( void ) const
inlinevirtual

◆ Increment_LOD()

virtual void RenderObjClass::Increment_LOD ( void )
inlinevirtual

◆ Intersect()

bool RenderObjClass::Intersect ( IntersectionClass * Intersection,
IntersectionResultClass * Final_Result )
virtual

Definition at line 972 of file rendobj.cpp.

◆ Intersect_AABox()

virtual bool RenderObjClass::Intersect_AABox ( AABoxIntersectionTestClass & boxtest)
inlinevirtual

◆ Intersect_OBBox()

virtual bool RenderObjClass::Intersect_OBBox ( OBBoxIntersectionTestClass & boxtest)
inlinevirtual

◆ Intersect_Sphere()

bool RenderObjClass::Intersect_Sphere ( IntersectionClass * Intersection,
IntersectionResultClass * Final_Result )
virtual

Definition at line 1015 of file rendobj.cpp.

◆ Intersect_Sphere_Quick()

bool RenderObjClass::Intersect_Sphere_Quick ( IntersectionClass * Intersection,
IntersectionResultClass * Final_Result )
virtual

Definition at line 1034 of file rendobj.cpp.

◆ Invalidate_Cached_Bounding_Volumes()

void RenderObjClass::Invalidate_Cached_Bounding_Volumes ( void ) const
inlineprotected

Definition at line 523 of file rendobj.h.

◆ Is_Additive()

virtual int RenderObjClass::Is_Additive ( void ) const
inlinevirtual

Definition at line 482 of file rendobj.h.

◆ Is_Alpha()

virtual int RenderObjClass::Is_Alpha ( void ) const
inlinevirtual

Definition at line 480 of file rendobj.h.

◆ Is_Animation_Hidden()

virtual int RenderObjClass::Is_Animation_Hidden ( void ) const
inlinevirtual

Definition at line 473 of file rendobj.h.

◆ Is_Bone_Captured()

virtual bool RenderObjClass::Is_Bone_Captured ( int bindex) const
inlinevirtual

Reimplemented in Animatable3DObjClass, and DistLODClass.

Definition at line 361 of file rendobj.h.

◆ Is_Complete()

virtual bool RenderObjClass::Is_Complete ( void )
inlinevirtual

Reimplemented in ParticleBufferClass, and ParticleEmitterClass.

Definition at line 486 of file rendobj.h.

◆ Is_Force_Visible()

virtual int RenderObjClass::Is_Force_Visible ( void ) const
inlinevirtual

Definition at line 475 of file rendobj.h.

◆ Is_Hidden()

virtual int RenderObjClass::Is_Hidden ( void ) const
inlinevirtual

Definition at line 471 of file rendobj.h.

◆ Is_Ignoring_LOD_Cost()

bool RenderObjClass::Is_Ignoring_LOD_Cost ( void )
inline

Definition at line 498 of file rendobj.h.

◆ Is_In_Scene()

virtual bool RenderObjClass::Is_In_Scene ( void )
inlinevirtual

Definition at line 487 of file rendobj.h.

◆ Is_Not_Hidden_At_All()

virtual int RenderObjClass::Is_Not_Hidden_At_All ( void )
inlinevirtual

Definition at line 463 of file rendobj.h.

◆ Is_Really_Visible()

virtual int RenderObjClass::Is_Really_Visible ( void )
inlinevirtual

Definition at line 462 of file rendobj.h.

◆ Is_Self_Shadowed()

int RenderObjClass::Is_Self_Shadowed ( ) const
inline

Definition at line 502 of file rendobj.h.

◆ Is_Sub_Objects_Match_LOD_Enabled()

int RenderObjClass::Is_Sub_Objects_Match_LOD_Enabled ( void )
inline

Definition at line 492 of file rendobj.h.

◆ Is_Transform_Identity()

WWINLINE bool RenderObjClass::Is_Transform_Identity ( ) const

Definition at line 630 of file rendobj.h.

◆ Is_Transform_Identity_No_Validity_Check()

WWINLINE bool RenderObjClass::Is_Transform_Identity_No_Validity_Check ( ) const

Definition at line 650 of file rendobj.h.

◆ Is_Translucent()

virtual int RenderObjClass::Is_Translucent ( void ) const
inlinevirtual

Definition at line 478 of file rendobj.h.

◆ Is_Visible()

virtual int RenderObjClass::Is_Visible ( void ) const
inlinevirtual

Definition at line 464 of file rendobj.h.

◆ Load()

bool RenderObjClass::Load ( ChunkLoadClass & cload)
virtual

Reimplemented from PersistClass.

Reimplemented in LightClass.

Definition at line 1313 of file rendobj.cpp.

◆ Notify_Added()

void RenderObjClass::Notify_Added ( SceneClass * scene)
virtual

◆ Notify_Removed()

void RenderObjClass::Notify_Removed ( SceneClass * scene)
virtual

◆ On_Frame_Update()

virtual void RenderObjClass::On_Frame_Update ( void )
inlinevirtual

◆ operator=()

RenderObjClass & RenderObjClass::operator= ( const RenderObjClass & that)

Definition at line 232 of file rendobj.cpp.

◆ Peek_Animation()

virtual HAnimClass * RenderObjClass::Peek_Animation ( void )
inlinevirtual

Reimplemented in Animatable3DObjClass, and DistLODClass.

Definition at line 351 of file rendobj.h.

◆ Peek_Scene()

virtual SceneClass * RenderObjClass::Peek_Scene ( void )
inlinevirtual

Definition at line 284 of file rendobj.h.

◆ Prepare_LOD()

void RenderObjClass::Prepare_LOD ( CameraClass & camera)
virtual

◆ Recalculate_Static_LOD_Factors()

virtual void RenderObjClass::Recalculate_Static_LOD_Factors ( void )
inlinevirtual

Reimplemented in HLodClass.

Definition at line 408 of file rendobj.h.

◆ Release_Bone()

virtual void RenderObjClass::Release_Bone ( int bindex)
inlinevirtual

Reimplemented in Animatable3DObjClass, and DistLODClass.

Definition at line 360 of file rendobj.h.

◆ Remove()

void RenderObjClass::Remove ( void )
virtual

Definition at line 816 of file rendobj.cpp.

◆ Remove_Sub_Object()

virtual int RenderObjClass::Remove_Sub_Object ( RenderObjClass * robj)
inlinevirtual

Reimplemented in CollectionClass, and HLodClass.

Definition at line 312 of file rendobj.h.

◆ Remove_Sub_Objects_From_Bone() [1/2]

int RenderObjClass::Remove_Sub_Objects_From_Bone ( const char * bname)
virtual

Definition at line 629 of file rendobj.cpp.

◆ Remove_Sub_Objects_From_Bone() [2/2]

int RenderObjClass::Remove_Sub_Objects_From_Bone ( int boneindex)
virtual

Definition at line 602 of file rendobj.cpp.

◆ Render()

◆ Restart()

virtual void RenderObjClass::Restart ( void )
inlinevirtual

Reimplemented in CompositeRenderObjClass, and ParticleEmitterClass.

Definition at line 271 of file rendobj.h.

◆ Save()

bool RenderObjClass::Save ( ChunkSaveClass & csave)
virtual

Reimplemented from PersistClass.

Reimplemented in LightClass.

Definition at line 1302 of file rendobj.cpp.

◆ Scale() [1/2]

virtual void RenderObjClass::Scale ( float scale)
inlinevirtual

◆ Scale() [2/2]

virtual void RenderObjClass::Scale ( float scalex,
float scaley,
float scalez )
inlinevirtual

◆ Set_Additive()

virtual void RenderObjClass::Set_Additive ( int onoff)
inlinevirtual

Definition at line 483 of file rendobj.h.

◆ Set_Alpha()

virtual void RenderObjClass::Set_Alpha ( int onoff)
inlinevirtual

Definition at line 481 of file rendobj.h.

◆ Set_Animation() [1/4]

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

Reimplemented in Animatable3DObjClass, DistLODClass, and HLodClass.

Definition at line 342 of file rendobj.h.

◆ Set_Animation() [2/4]

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

Reimplemented in Animatable3DObjClass, DistLODClass, and HLodClass.

Definition at line 344 of file rendobj.h.

◆ Set_Animation() [3/4]

virtual void RenderObjClass::Set_Animation ( HAnimComboClass * anim_combo)
inlinevirtual

Reimplemented in Animatable3DObjClass, DistLODClass, and HLodClass.

Definition at line 349 of file rendobj.h.

◆ Set_Animation() [4/4]

virtual void RenderObjClass::Set_Animation ( void )
inlinevirtual

Reimplemented in Animatable3DObjClass, DistLODClass, and HLodClass.

Definition at line 341 of file rendobj.h.

◆ Set_Animation_Hidden()

virtual void RenderObjClass::Set_Animation_Hidden ( int onoff)
inlinevirtual

Reimplemented in ParticleEmitterClass, RingRenderObjClass, and SphereRenderObjClass.

Definition at line 474 of file rendobj.h.

◆ Set_Base_Model_Name()

virtual void RenderObjClass::Set_Base_Model_Name ( const char * name)
inlinevirtual

Reimplemented in CompositeRenderObjClass.

Definition at line 253 of file rendobj.h.

◆ Set_Collision_Type()

virtual void RenderObjClass::Set_Collision_Type ( int type)
inlinevirtual

Definition at line 485 of file rendobj.h.

◆ Set_Container()

void RenderObjClass::Set_Container ( RenderObjClass * con)
virtual

Definition at line 382 of file rendobj.cpp.

◆ Set_Force_Visible()

virtual void RenderObjClass::Set_Force_Visible ( int onoff)
inlinevirtual

Reimplemented in ParticleEmitterClass, RingRenderObjClass, and SphereRenderObjClass.

Definition at line 476 of file rendobj.h.

◆ Set_Hidden()

virtual void RenderObjClass::Set_Hidden ( int onoff)
inlinevirtual

Reimplemented in HLodClass, ParticleEmitterClass, RingRenderObjClass, and SphereRenderObjClass.

Definition at line 472 of file rendobj.h.

◆ Set_Ignore_LOD_Cost()

void RenderObjClass::Set_Ignore_LOD_Cost ( bool onoff)
inline

Definition at line 497 of file rendobj.h.

◆ Set_Is_Self_Shadowed()

void RenderObjClass::Set_Is_Self_Shadowed ( )
inline

Definition at line 500 of file rendobj.h.

◆ Set_LOD_Bias()

virtual void RenderObjClass::Set_LOD_Bias ( float bias)
inlinevirtual

◆ Set_LOD_Level()

virtual void RenderObjClass::Set_LOD_Level ( int lod)
inlinevirtual

◆ Set_Name()

virtual void RenderObjClass::Set_Name ( const char * name)
inlinevirtual

◆ Set_Native_Screen_Size()

virtual void RenderObjClass::Set_Native_Screen_Size ( float screensize)
inlinevirtual

Definition at line 489 of file rendobj.h.

◆ Set_ObjectColor()

void RenderObjClass::Set_ObjectColor ( unsigned int color)
inline

Definition at line 456 of file rendobj.h.

◆ Set_ObjectScale()

virtual void RenderObjClass::Set_ObjectScale ( float scale)
inlinevirtual

Definition at line 454 of file rendobj.h.

◆ Set_Position()

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

◆ Set_Render_Hook()

void RenderObjClass::Set_Render_Hook ( RenderHookClass * hook)
inline

Definition at line 513 of file rendobj.h.

◆ Set_Sort_Level()

virtual void RenderObjClass::Set_Sort_Level ( int level)
inlinevirtual

Reimplemented in DynamicMeshClass, Line3DClass, MeshClass, and WaterRenderObjClass.

Definition at line 460 of file rendobj.h.

◆ Set_Sub_Object_Transforms_Dirty()

void RenderObjClass::Set_Sub_Object_Transforms_Dirty ( bool onoff)
inline

Definition at line 494 of file rendobj.h.

◆ Set_Sub_Objects_Match_LOD()

void RenderObjClass::Set_Sub_Objects_Match_LOD ( int onoff)
inline

Definition at line 491 of file rendobj.h.

◆ Set_Transform()

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

◆ Set_Translucent()

virtual void RenderObjClass::Set_Translucent ( int onoff)
inlinevirtual

Definition at line 479 of file rendobj.h.

◆ Set_User_Data()

virtual void RenderObjClass::Set_User_Data ( void * value,
bool recursive = false )
inlinevirtual

Reimplemented in CompositeRenderObjClass.

Definition at line 445 of file rendobj.h.

◆ Set_Visible()

virtual void RenderObjClass::Set_Visible ( int onoff)
inlinevirtual

Reimplemented in ParticleEmitterClass, RingRenderObjClass, and SphereRenderObjClass.

Definition at line 465 of file rendobj.h.

◆ Special_Render()

virtual void RenderObjClass::Special_Render ( SpecialRenderInfoClass & rinfo)
inlinevirtual

◆ Unset_Is_Self_Shadowed()

void RenderObjClass::Unset_Is_Self_Shadowed ( )
inline

Definition at line 501 of file rendobj.h.

◆ Update_Cached_Bounding_Volumes()

void RenderObjClass::Update_Cached_Bounding_Volumes ( void ) const
protectedvirtual

Reimplemented in MeshClass, ParticleBufferClass, ShdMeshClass, and SphereRenderObjClass.

Definition at line 902 of file rendobj.cpp.

◆ Update_Obj_Space_Bounding_Volumes()

virtual void RenderObjClass::Update_Obj_Space_Bounding_Volumes ( void )
inlinevirtual

Reimplemented in CollectionClass, CompositeRenderObjClass, and HLodClass.

Definition at line 394 of file rendobj.h.

◆ Update_Sub_Object_Bits()

void RenderObjClass::Update_Sub_Object_Bits ( void )
protectedvirtual

Definition at line 730 of file rendobj.cpp.

◆ Update_Sub_Object_Transforms()

void RenderObjClass::Update_Sub_Object_Transforms ( void )
virtual

Reimplemented in Animatable3DObjClass, CollectionClass, and HLodClass.

Definition at line 777 of file rendobj.cpp.

◆ Validate_Cached_Bounding_Volumes()

void RenderObjClass::Validate_Cached_Bounding_Volumes ( void ) const
inlineprotected

Definition at line 524 of file rendobj.h.

◆ Validate_Transform()

void RenderObjClass::Validate_Transform ( void ) const
virtual

Definition at line 464 of file rendobj.cpp.

Friends And Related Symbol Documentation

◆ RenderObjProxyClass

friend class RenderObjProxyClass
friend

Definition at line 564 of file rendobj.h.

◆ SceneClass

friend class SceneClass
friend

Definition at line 563 of file rendobj.h.

Member Data Documentation

◆ AT_MAX_LOD

const float RenderObjClass::AT_MAX_LOD = -1.0f
static

Definition at line 405 of file rendobj.h.

◆ AT_MIN_LOD

const float RenderObjClass::AT_MIN_LOD = FLT_MAX
static

Definition at line 404 of file rendobj.h.

◆ Bits

unsigned long RenderObjClass::Bits
mutableprotected

Definition at line 548 of file rendobj.h.

◆ CachedBoundingBox

AABoxClass RenderObjClass::CachedBoundingBox
mutableprotected

Definition at line 553 of file rendobj.h.

◆ CachedBoundingSphere

SphereClass RenderObjClass::CachedBoundingSphere
mutableprotected

Definition at line 552 of file rendobj.h.

◆ Container

RenderObjClass* RenderObjClass::Container
protected

Definition at line 558 of file rendobj.h.

◆ IsTransformIdentity

bool RenderObjClass::IsTransformIdentity
mutableprotected

Definition at line 555 of file rendobj.h.

◆ NativeScreenSize

float RenderObjClass::NativeScreenSize
protected

Definition at line 554 of file rendobj.h.

◆ ObjectColor

unsigned int RenderObjClass::ObjectColor
protected

Definition at line 551 of file rendobj.h.

◆ ObjectScale

float RenderObjClass::ObjectScale
protected

Definition at line 550 of file rendobj.h.

◆ RenderHook

RenderHookClass* RenderObjClass::RenderHook
protected

Definition at line 561 of file rendobj.h.

◆ Scene

SceneClass* RenderObjClass::Scene
protected

Definition at line 557 of file rendobj.h.

◆ Transform

Matrix3D RenderObjClass::Transform
protected

Definition at line 549 of file rendobj.h.

◆ User_Data

void* RenderObjClass::User_Data
protected

Definition at line 559 of file rendobj.h.


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