16 #include <osg/ref_ptr>
17 #include <osg/PrimitiveSet>
18 #include <boost/unordered_map.hpp>
52 void releaseResources();
55 void ts_clearInstancingCache();
58 osg::Drawable* getShapeInstance(ShapeType,
unsigned int faceCount);
64 osg::DrawElementsUInt* getCircularIndexBuffer(
int vertexCount,
65 int firstIndex,
int indexStep);
70 virtual osg::Drawable* createShapeInstance(ShapeType,
unsigned int faceCount);
85 std::size_t operator()(
ShapeKey const& p)
const
88 boost::hash_combine(seed, p.
type);
95 typedef boost::unordered_map<ShapeKey, osg::ref_ptr<osg::Drawable>,
108 return count == other.
count && initial == other.
initial &&
118 std::size_t seed = 0;
119 boost::hash_combine(seed, p.
count);
120 boost::hash_combine(seed, p.
initial);
121 boost::hash_combine(seed, p.
step);
126 typedef boost::unordered_map<IndexBufferKey, osg::ref_ptr<osg::DrawElementsUInt>,