28 #ifndef __StaticGeometry_H__
29 #define __StaticGeometry_H__
212 void copyIndexes(
const T* src, T* dst,
size_t count,
size_t indexOffset)
214 if (indexOffset == 0)
216 memcpy(dst, src,
sizeof(T) * count);
222 *dst++ =
static_cast<T
>(*src++ + indexOffset);
239 void getWorldTransforms(
Matrix4* xform)
const;
240 Real getSquaredViewDepth(
const Camera* cam)
const;
242 bool getCastsShadows(
void)
const;
249 void build(
bool stencilShadows);
251 void dump(std::ofstream& of)
const;
287 void build(
bool stencilShadows);
300 void dump(std::ofstream& of)
const;
327 bool createSeparateLightCap,
bool isLightCap =
false);
330 void getWorldTransforms(
Matrix4* xform)
const;
364 void build(
bool stencilShadows);
373 void dump(std::ofstream& of)
const;
378 void updateShadowRenderables(
381 bool extrudeVertices,
Real extrusionDistance,
unsigned long flags = 0 );
444 void build(
bool stencilShadows);
449 const String& getMovableType(
void)
const;
450 void _notifyCurrentCamera(
Camera* cam);
452 Real getBoundingRadius(
void)
const;
456 bool debugRenderables =
false);
457 bool isVisible(
void)
const;
458 uint32 getTypeFlags(
void)
const;
467 bool extrudeVertices,
Real extrusionDistance,
unsigned long flags = 0 );
471 bool hasEdgeList(
void);
474 void dump(std::ofstream& of)
const;
524 virtual Region* getRegion(
const Vector3& point,
bool autoCreate);
531 virtual void getRegionIndexes(
const Vector3& point,
561 template <
typename T>
565 for (
size_t i = 0; i < numIndexes; ++i)
568 remap.insert(IndexRemap::value_type(*pBuffer++, remap.size()));
574 template <
typename T>
578 for (
size_t i = 0; i < numIndexes; ++i)
581 IndexRemap::const_iterator ix = remap.find(*src++);
582 assert(ix != remap.end());
583 *dst++ =
static_cast<T
>(ix->second);
635 virtual void addSceneNode(
const SceneNode* node);
647 virtual void build(
void);
654 virtual void destroy(
void);
659 virtual void reset(
void);
671 mUpperDistance = dist;
672 mSquaredUpperDistance = mUpperDistance * mUpperDistance;
680 {
return mSquaredUpperDistance; }
683 virtual void setVisible(
bool visible);
705 virtual void setCastShadows(
bool castShadows);
720 mRegionDimensions = size;
721 mHalfRegionDimensions = size * 0.5;
741 void setVisibilityFlags(
uint32 flags);
743 uint32 getVisibilityFlags()
const;
756 virtual void setRenderQueueGroup(
uint8 queueID);
759 virtual uint8 getRenderQueueGroup(
void)
const;
762 bool debugRenderables =
false);
772 virtual void dump(
const String& filename)
const;