a class to quickly render a bunch of basic primitives as debugging aids basic overview, create an adapter that inherits from DtDebugDrawCallbackInterface then call DtOsgGizmoRenderer::addDebugDrawerCallback() to register it with the system. Your code will then get called while the system is drawing, user should then add various primitives that will get rendered in one big batch after all the callbacks. See DtOsgLightDebugAdapter::drawDebugLines() for an example.
|
| | DtOsgGizmoRenderer (DtDe &de) |
| |
| | ~DtOsgGizmoRenderer () |
| |
| virtual void | releaseGLObjects (osg::State *state=0) const |
| |
| virtual void | drawImplementation (osg::RenderInfo &renderInfo) const |
| |
| virtual void | addDebugDrawerCallback (DtDebugDrawCallbackInterface *drawer) |
| |
| virtual void | addWsLine (const osg::Vec3d &p1, const osg::Vec3d &p2, const osg::Vec4f &color1, const osg::Vec4f &color2, bool depth_test=true) |
| |
| virtual void | renderWsBoxIntoVbo (const osg::Vec3d &p1, const osg::Vec3d &p2, const osg::Vec4f &color) |
| |
| virtual void | renderBoxFromPointsIntoVbo (const osg::Matrixf &model_matrix, const osg::Vec3f &pMin, const osg::Vec3f &pMax, const osg::Vec4f &color) |
| |
| virtual void | renderSphereIntoVbo (const osg::Vec3f &localCenter, const osg::Vec3f &radii, const osg::Matrixf &xform, const osg::Vec4f &force_color) |
| |
| virtual void | renderCircleIntoVbo (const osg::Vec3f &localCenter, const float radii, const osg::Matrixf &xform, const osg::Vec4f &force_color) |
| |
| virtual void | renderHemisphereIntoVbo (const osg::Vec3f &localCenter, const osg::Vec3f &radii, const osg::Matrixf &xform, const osg::Vec4f &force_color) |
| |
| virtual void | renderEllipseIntoVbo (const osg::Vec3f &localCenter, const osg::Vec2f &radii, const osg::Matrixf &xform, const osg::Vec4f &force_color) |
| |
| virtual void | renderBoxIntoVbo (const osg::Vec3f &localCenter, const osg::Vec3f &localMin, const osg::Vec3f &localMax, const osg::Matrixf &xform, const osg::Vec4f &force_color) |
| |
| virtual void | drawStreamedData (osg::RenderInfo &renderInfo, int primitive_type, const std::vector< osg::Vec3f > &verts, const std::vector< osg::Vec4f > *colors, const std::vector< osg::Vec3f > *normals, const std::vector< unsigned short > *index_buffer, const osg::Vec4f &default_color=osg::Vec4f(1, 1, 1, 1)) |
| |
| makVrv::DtOsgGizmoRenderer::DtOsgGizmoRenderer |
( |
DtDe & |
de | ) |
|
| makVrv::DtOsgGizmoRenderer::~DtOsgGizmoRenderer |
( |
| ) |
|
| virtual void makVrv::DtOsgGizmoRenderer::releaseGLObjects |
( |
osg::State * |
state = 0 | ) |
const |
|
virtual |
| virtual void makVrv::DtOsgGizmoRenderer::drawImplementation |
( |
osg::RenderInfo & |
renderInfo | ) |
const |
|
virtual |
adds a callback to have the gizmo call the module to draw things when it's ready.
| virtual void makVrv::DtOsgGizmoRenderer::addWsLine |
( |
const osg::Vec3d & |
p1, |
|
|
const osg::Vec3d & |
p2, |
|
|
const osg::Vec4f & |
color1, |
|
|
const osg::Vec4f & |
color2, |
|
|
bool |
depth_test = true |
|
) |
| |
|
virtual |
| virtual void makVrv::DtOsgGizmoRenderer::renderWsBoxIntoVbo |
( |
const osg::Vec3d & |
p1, |
|
|
const osg::Vec3d & |
p2, |
|
|
const osg::Vec4f & |
color |
|
) |
| |
|
virtual |
draws axis at pos
draws a box
| virtual void makVrv::DtOsgGizmoRenderer::renderBoxFromPointsIntoVbo |
( |
const osg::Matrixf & |
model_matrix, |
|
|
const osg::Vec3f & |
pMin, |
|
|
const osg::Vec3f & |
pMax, |
|
|
const osg::Vec4f & |
color |
|
) |
| |
|
virtual |
| virtual void makVrv::DtOsgGizmoRenderer::renderSphereIntoVbo |
( |
const osg::Vec3f & |
localCenter, |
|
|
const osg::Vec3f & |
radii, |
|
|
const osg::Matrixf & |
xform, |
|
|
const osg::Vec4f & |
force_color |
|
) |
| |
|
virtual |
| virtual void makVrv::DtOsgGizmoRenderer::renderCircleIntoVbo |
( |
const osg::Vec3f & |
localCenter, |
|
|
const float |
radii, |
|
|
const osg::Matrixf & |
xform, |
|
|
const osg::Vec4f & |
force_color |
|
) |
| |
|
virtual |
| virtual void makVrv::DtOsgGizmoRenderer::renderHemisphereIntoVbo |
( |
const osg::Vec3f & |
localCenter, |
|
|
const osg::Vec3f & |
radii, |
|
|
const osg::Matrixf & |
xform, |
|
|
const osg::Vec4f & |
force_color |
|
) |
| |
|
virtual |
| virtual void makVrv::DtOsgGizmoRenderer::renderEllipseIntoVbo |
( |
const osg::Vec3f & |
localCenter, |
|
|
const osg::Vec2f & |
radii, |
|
|
const osg::Matrixf & |
xform, |
|
|
const osg::Vec4f & |
force_color |
|
) |
| |
|
virtual |
| virtual void makVrv::DtOsgGizmoRenderer::renderBoxIntoVbo |
( |
const osg::Vec3f & |
localCenter, |
|
|
const osg::Vec3f & |
localMin, |
|
|
const osg::Vec3f & |
localMax, |
|
|
const osg::Matrixf & |
xform, |
|
|
const osg::Vec4f & |
force_color |
|
) |
| |
|
virtual |
adds a box around the center
| virtual void makVrv::DtOsgGizmoRenderer::drawStreamedData |
( |
osg::RenderInfo & |
renderInfo, |
|
|
int |
primitive_type, |
|
|
const std::vector< osg::Vec3f > & |
verts, |
|
|
const std::vector< osg::Vec4f > * |
colors, |
|
|
const std::vector< osg::Vec3f > * |
normals, |
|
|
const std::vector< unsigned short > * |
index_buffer, |
|
|
const osg::Vec4f & |
default_color = osg::Vec4f(1, 1, 1, 1) |
|
) |
| |
|
virtual |
draws vert/color data, vert are required, colors, normals and index buffer is optional.
| virtual void makVrv::DtOsgGizmoRenderer::setCameraPos |
( |
const osg::Vec3 & |
pos | ) |
|
|
protectedvirtual |
used to modify the input verts for worldspace functions
| virtual void makVrv::DtOsgGizmoRenderer::drawImplementationNonConst |
( |
osg::RenderInfo & |
renderInfo | ) |
|
|
protectedvirtual |
| virtual bool makVrv::DtOsgGizmoRenderer::anythingToDraw |
( |
void |
| ) |
const |
|
protectedvirtual |
| DtDe& makVrv::DtOsgGizmoRenderer::myDe |
|
protected |
| std::vector<osg::Vec3f> makVrv::DtOsgGizmoRenderer::myLineStripVerts |
|
protected |
| std::vector<osg::Vec4f> makVrv::DtOsgGizmoRenderer::myLineStripColors |
|
protected |
| std::vector<unsigned short> makVrv::DtOsgGizmoRenderer::myLineStripIndexes |
|
protected |
| GLuint makVrv::DtOsgGizmoRenderer::myVao |
|
mutableprotected |
| osg::Vec3d makVrv::DtOsgGizmoRenderer::myCameraPosition |
|
protected |
| std::array< std::vector<osg::Vec3f>, 2> makVrv::DtOsgGizmoRenderer::myScratchVerts |
|
protected |
| std::array< std::vector<osg::Vec4f>, 2> makVrv::DtOsgGizmoRenderer::myScratchColors |
|
protected |
The documentation for this class was generated from the following file: