3 #include "TileObject.h" 21 virtual CBaseObject::_SceneObjectType GetType(){
return CBaseObject::PortalNode;};
22 virtual string ToString(DWORD nMethod);
28 virtual bool TestCollisionSphere(
CBaseCamera* pCamera,
float fFarPlaneDistance);
36 virtual void GetVertices(
Vector3 * pVertices,
int* nNumber);
50 ATTRIBUTE_METHOD1(
CPortalNode, GetHomeZone_s,
const char**) {*p1 = cls->GetHomeZone();
return S_OK;}
51 ATTRIBUTE_METHOD1(
CPortalNode, SetHomeZone_s,
const char*) {cls->SetHomeZone(p1);
return S_OK;}
53 ATTRIBUTE_METHOD1(
CPortalNode, GetTargetZone_s,
const char**) {*p1 = cls->GetTargetZone();
return S_OK;}
54 ATTRIBUTE_METHOD1(
CPortalNode, SetTargetZone_s,
const char*) {cls->SetTargetZone(p1);
return S_OK;}
56 ATTRIBUTE_METHOD1(
CPortalNode, GetPortalPoints_s,
const char**) {*p1 = cls->GetPortalPoints();
return S_OK;}
57 ATTRIBUTE_METHOD1(
CPortalNode, SetPortalPoints_s,
const char*) {cls->SetPortalPoints(p1);
return S_OK;}
59 ATTRIBUTE_METHOD(
CPortalNode, AutoGenPortalPoints_s) {cls->AutoGenPortalPoints();
return S_OK;}
74 bool IsOpen() {
return m_bOpen;}
78 void SetCorner(
int nIndex,
const Vector3& vPos);
82 Vector3 & getCorner(
int nIndex);
86 Vector3 & getDerivedCorner(
int nIndex);
90 Vector3 & getDerivedDirection(
void );
98 void updateDerivedValues();
103 void calcDirectionAndRadius(
void );
106 virtual HRESULT Draw(
SceneState * sceneState);
113 virtual void UpdateFrameNumber(
int nFrameNumber);
116 void SetHomeZone(
const char* sName);
117 const char* GetHomeZone();
120 void SetTargetZone(
const char* sName);
121 const char* GetTargetZone();
126 void SetPortalPoints(
const char* sVertices);
128 const char* GetPortalPoints();
131 void AutoGenPortalPoints();
137 bool m_LocalsUpToDate;
an attribute class is a collection of attribute fields.
Definition: AttributeClass.h:10
It's used as parameter to Draw method of each scene object.
Definition: SceneState.h:284
virtual const char * GetAttributeClassDescription()
a static string, describing the attribute class object
Definition: PortalNode.h:46
different physics engine has different winding order.
Definition: EventBinding.h:32
virtual const char * GetAttributeClassName()
a static string, describing the attribute class object's name
Definition: PortalNode.h:44
virtual int GetAttributeClassID()
attribute class ID should be identical, unless one knows how overriding rules work.
Definition: PortalNode.h:42
Standard 3-dimensional vector.
Definition: ParaVector3.h:16
Definition: BaseCamera.h:70
a zone in portal rendering.
Definition: ZoneNode.h:17
Tile Object have position and bounding rect and can usually be attached to quad-tree terrain tile...
Definition: TileObject.h:10
Portal rendering: portal class a portal can be connected to one or two zones.
Definition: PortalNode.h:15