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

#include <boxrobj.h>

Inherits W3DMPO, and BoxRenderObjClass.

Public Member Functions

 OBBoxRenderObjClass (void)
 
 OBBoxRenderObjClass (const W3dBoxStruct &def)
 
 OBBoxRenderObjClass (const OBBoxRenderObjClass &src)
 
 OBBoxRenderObjClass (const OBBoxClass &box)
 
OBBoxRenderObjClassoperator= (const OBBoxRenderObjClass &)
 
virtual RenderObjClassClone (void) const
 
virtual int Class_ID (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 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 void Get_Obj_Space_Bounding_Sphere (SphereClass &sphere) const
 
virtual void Get_Obj_Space_Bounding_Box (AABoxClass &box) const
 
OBBoxClassGet_Box (void)
 
- Public Member Functions inherited from W3DMPO
virtual ~W3DMPO ()
 
- Public Member Functions inherited from BoxRenderObjClass
 BoxRenderObjClass (void)
 
 BoxRenderObjClass (const W3dBoxStruct &def)
 
 BoxRenderObjClass (const BoxRenderObjClass &src)
 
BoxRenderObjClassoperator= (const BoxRenderObjClass &)
 
virtual int Get_Num_Polys (void) const
 
virtual const char * Get_Name (void) const
 
virtual void Set_Name (const char *name)
 
void Set_Color (const Vector3 &color)
 
void Set_Opacity (float opacity)
 
void Set_Local_Center_Extent (const Vector3 &center, const Vector3 &extent)
 
void Set_Local_Min_Max (const Vector3 &min, const Vector3 &max)
 
const Vector3Get_Local_Center (void)
 
const Vector3Get_Local_Extent (void)
 
- Public Member Functions inherited from RenderObjClass
 RenderObjClass (void)
 
 RenderObjClass (const RenderObjClass &src)
 
RenderObjClassoperator= (const RenderObjClass &)
 
virtual ~RenderObjClass (void)
 
virtual const char * Get_Base_Model_Name (void) const
 
virtual void Set_Base_Model_Name (const char *name)
 
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
 
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 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 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)
 

Protected Member Functions

virtual void update_cached_box (void)
 
- Protected Member Functions inherited from W3DMPO
virtual int glueEnforcer () const =0
 
- Protected Member Functions inherited from BoxRenderObjClass
void render_box (RenderInfoClass &rinfo, const Vector3 &center, const Vector3 &extent)
 
void vis_render_box (SpecialRenderInfoClass &rinfo, const Vector3 &center, const Vector3 &extent)
 
- 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

OBBoxClass CachedBox
 
- Protected Attributes inherited from BoxRenderObjClass
char Name [2 *W3D_NAME_LEN]
 
Vector3 Color
 
Vector3 ObjSpaceCenter
 
Vector3 ObjSpaceExtent
 
float Opacity
 
- 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
 

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 BoxRenderObjClass
static void Init (void)
 
static void Shutdown (void)
 
static void Set_Box_Display_Mask (int mask)
 
static int Get_Box_Display_Mask (void)
 
- 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
}
 
- Static Protected Attributes inherited from BoxRenderObjClass
static bool IsInitted = false
 
static int DisplayMask = 0
 

Detailed Description

Definition at line 188 of file boxrobj.h.

Constructor & Destructor Documentation

◆ OBBoxRenderObjClass() [1/4]

OBBoxRenderObjClass::OBBoxRenderObjClass ( void )

Definition at line 955 of file boxrobj.cpp.

◆ OBBoxRenderObjClass() [2/4]

OBBoxRenderObjClass::OBBoxRenderObjClass ( const W3dBoxStruct & def)

Definition at line 973 of file boxrobj.cpp.

◆ OBBoxRenderObjClass() [3/4]

OBBoxRenderObjClass::OBBoxRenderObjClass ( const OBBoxRenderObjClass & src)

Definition at line 992 of file boxrobj.cpp.

◆ OBBoxRenderObjClass() [4/4]

OBBoxRenderObjClass::OBBoxRenderObjClass ( const OBBoxClass & box)

Definition at line 1010 of file boxrobj.cpp.

Member Function Documentation

◆ Cast_AABox()

bool OBBoxRenderObjClass::Cast_AABox ( AABoxCollisionTestClass & boxtest)
virtual

Reimplemented from RenderObjClass.

Definition at line 1214 of file boxrobj.cpp.

◆ Cast_OBBox()

bool OBBoxRenderObjClass::Cast_OBBox ( OBBoxCollisionTestClass & boxtest)
virtual

Reimplemented from RenderObjClass.

Definition at line 1239 of file boxrobj.cpp.

◆ Cast_Ray()

bool OBBoxRenderObjClass::Cast_Ray ( RayCollisionTestClass & raytest)
virtual

Reimplemented from RenderObjClass.

Definition at line 1188 of file boxrobj.cpp.

◆ Class_ID()

int OBBoxRenderObjClass::Class_ID ( void ) const
virtual

Reimplemented from RenderObjClass.

Definition at line 1071 of file boxrobj.cpp.

◆ Clone()

RenderObjClass * OBBoxRenderObjClass::Clone ( void ) const
virtual

Implements RenderObjClass.

Definition at line 1053 of file boxrobj.cpp.

◆ Get_Box()

OBBoxClass & OBBoxRenderObjClass::Get_Box ( void )

Definition at line 1338 of file boxrobj.cpp.

◆ Get_Obj_Space_Bounding_Box()

void OBBoxRenderObjClass::Get_Obj_Space_Bounding_Box ( AABoxClass & box) const
virtual

Reimplemented from RenderObjClass.

Definition at line 1320 of file boxrobj.cpp.

◆ Get_Obj_Space_Bounding_Sphere()

void OBBoxRenderObjClass::Get_Obj_Space_Bounding_Sphere ( SphereClass & sphere) const
virtual

Reimplemented from RenderObjClass.

Definition at line 1302 of file boxrobj.cpp.

◆ Intersect_AABox()

bool OBBoxRenderObjClass::Intersect_AABox ( AABoxIntersectionTestClass & boxtest)
virtual

Reimplemented from RenderObjClass.

Definition at line 1264 of file boxrobj.cpp.

◆ Intersect_OBBox()

bool OBBoxRenderObjClass::Intersect_OBBox ( OBBoxIntersectionTestClass & boxtest)
virtual

Reimplemented from RenderObjClass.

Definition at line 1283 of file boxrobj.cpp.

◆ operator=()

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

Definition at line 1031 of file boxrobj.cpp.

◆ Render()

void OBBoxRenderObjClass::Render ( RenderInfoClass & rinfo)
virtual

Implements RenderObjClass.

Definition at line 1089 of file boxrobj.cpp.

◆ Set_Position()

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

Reimplemented from RenderObjClass.

Definition at line 1149 of file boxrobj.cpp.

◆ Set_Transform()

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

Reimplemented from RenderObjClass.

Definition at line 1130 of file boxrobj.cpp.

◆ Special_Render()

void OBBoxRenderObjClass::Special_Render ( SpecialRenderInfoClass & rinfo)
virtual

Reimplemented from RenderObjClass.

Definition at line 1108 of file boxrobj.cpp.

◆ update_cached_box()

void OBBoxRenderObjClass::update_cached_box ( void )
protectedvirtual

Implements BoxRenderObjClass.

Definition at line 1168 of file boxrobj.cpp.

Member Data Documentation

◆ CachedBox

OBBoxClass OBBoxRenderObjClass::CachedBox
protected

Definition at line 225 of file boxrobj.h.


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