1 // Copyright 2001-2018 Crytek GmbH / Crytek Group. All rights reserved.
7 #define COPY_MEMBER_SAVE(_dst, _src, _name) { (_dst)->_name = (_src)->_name; }
8 #define COPY_MEMBER_LOAD(_dst, _src, _name) { (_dst)->_name = (_src)->_name; }
22 memset(this, 0, sizeof(*this));
25 SRNInfo(IRenderNode
* _pNode
)
27 fMaxViewDist
= _pNode
->m_fWSMaxViewDist
;
28 AABB aabbBox
= _pNode
->GetBBox();
29 objSphere
.center
= aabbBox
.GetCenter();
30 objSphere
.radius
= aabbBox
.GetRadius();
32 nRType
= _pNode
->GetRenderNodeType();
35 erType = _pNode->GetRenderNodeType();
36 cry_strcpy(szName, _pNode->GetName());
40 bool operator==(const IRenderNode
* _pNode
) const { return (pNode
== _pNode
); }
41 bool operator==(const SRNInfo
& rOther
) const { return (pNode
== rOther
.pNode
); }
53 #define UPDATE_PTR_AND_SIZE(_pData, _nDataSize, _SIZE_PLUS) \
55 _pData += (_SIZE_PLUS); \
56 _nDataSize -= (_SIZE_PLUS); \
57 assert(_nDataSize >= 0); \
67 struct CBasicArea
: public Cry3DEngineBase
71 m_boxArea
.min
= m_boxArea
.max
= Vec3(0, 0, 0);
72 m_pObjectsTree
= NULL
;
77 bool IsObjectsTreeValid() { return m_pObjectsTree
!= nullptr; }
78 COctreeNode
* GetObjectsTree() { return m_pObjectsTree
; }
79 void SetObjectsTree(COctreeNode
* node
) { m_pObjectsTree
= node
; }
81 AABB m_boxArea
; // bbox containing everything in sector including child sectors
82 AABB m_boxStatics
; // bbox containing only objects in STATIC_OBJECTS list of this node and height-map
86 COctreeNode
* m_pObjectsTree
;