#include <osg/Vec3>
#include <osg/Vec4>
+#include "TreeBin.hxx"
+
namespace simgear
{
{
setUseDisplayList(false);
}
+
+ ShaderGeometry(int v) :
+ varieties(v)
+ {
+ setUseDisplayList(false);
+ }
/** Copy constructor using CopyOp to manage deep vs shallow copy.*/
ShaderGeometry(const ShaderGeometry& ShaderGeometry,const osg::CopyOp& copyop=osg::CopyOp::SHALLOW_COPY):
osg::Drawable(ShaderGeometry,copyop) {}
- META_Object(osg,ShaderGeometry);
+ META_Object(flightgear, ShaderGeometry);
typedef std::vector<osg::Vec4> PositionSizeList;
virtual osg::BoundingBox computeBound() const;
- void setGeometry(osg::Geometry* geometry)
+ void setGeometry(osg::Drawable* geometry)
{
_geometry = geometry;
}
- void addTree(const osg::Vec3& position, float scale)
+ void addTree(TreeBin::Tree tree)
{
- _trees.push_back(osg::Vec4(position, scale));
+ _trees.push_back(tree);
}
- osg::ref_ptr<osg::Geometry> _geometry;
+ osg::ref_ptr<osg::Drawable> _geometry;
- PositionSizeList _trees;
+ TreeBin::TreeList _trees;
+ int varieties;
protected: