Added Camera::s/getClearAccum, s/getClearStencil and s/getClearDepth.

This commit is contained in:
Robert Osfield
2008-03-31 11:44:31 +00:00
parent 225e1957b3
commit 64f8631d9d
6 changed files with 99 additions and 26 deletions

View File

@@ -19,8 +19,11 @@ using namespace osg;
Camera::Camera():
_view(0),
_allowEventFocus(true),
_clearColor(osg::Vec4(0.0f,0.0f,0.0f,1.0f)),
_clearMask(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT),
_clearColor(osg::Vec4(0.0f,0.0f,0.0f,1.0f)),
_clearAccum(osg::Vec4(0.0f,0.0f,0.0f,1.0f)),
_clearDepth(1.0),
_clearStencil(0),
_transformOrder(PRE_MULTIPLY),
_projectionResizePolicy(HORIZONTAL),
_renderOrder(POST_RENDER),
@@ -39,8 +42,11 @@ Camera::Camera(const Camera& camera,const CopyOp& copyop):
_view(camera._view),
_allowEventFocus(camera._allowEventFocus),
_displaySettings(camera._displaySettings),
_clearColor(camera._clearColor),
_clearMask(camera._clearMask),
_clearColor(camera._clearColor),
_clearAccum(camera._clearAccum),
_clearDepth(camera._clearDepth),
_clearStencil(camera._clearStencil),
_colorMask(camera._colorMask),
_viewport(camera._viewport),
_transformOrder(camera._transformOrder),

View File

@@ -780,7 +780,10 @@ bool SceneView::cullStage(const osg::Matrixd& projection,const osg::Matrixd& mod
rendergraph->clean();
renderStage->setViewport(getViewport());
renderStage->setClearColor(getClearColor());
renderStage->setClearColor(_camera->getClearColor());
renderStage->setClearDepth(_camera->getClearDepth());
renderStage->setClearAccum(_camera->getClearAccum());
renderStage->setClearStencil(_camera->getClearStencil());
renderStage->setClearMask(_camera->getClearMask());
#if 1

View File

@@ -184,16 +184,6 @@ BEGIN_OBJECT_REFLECTOR(osg::Camera)
__C5_osg_DisplaySettings_P1__getDisplaySettings,
"Set the DsplaySettings object associated with this view. ",
"");
I_Method1(void, setClearColor, IN, const osg::Vec4 &, color,
Properties::NON_VIRTUAL,
__void__setClearColor__C5_Vec4_R1,
"Sets the clear color. ",
"");
I_Method0(const osg::Vec4 &, getClearColor,
Properties::NON_VIRTUAL,
__C5_Vec4_R1__getClearColor,
"Returns the clear color. ",
"");
I_Method1(void, setClearMask, IN, GLbitfield, mask,
Properties::NON_VIRTUAL,
__void__setClearMask__GLbitfield,
@@ -204,6 +194,46 @@ BEGIN_OBJECT_REFLECTOR(osg::Camera)
__GLbitfield__getClearMask,
"Get the clear mask. ",
"");
I_Method1(void, setClearColor, IN, const osg::Vec4 &, color,
Properties::NON_VIRTUAL,
__void__setClearColor__C5_osg_Vec4_R1,
"Set the clear color used in glClearColor(. ",
".). glClearColor is only called if mask & GL_COLOR_BUFFER_BIT is true ");
I_Method0(const osg::Vec4 &, getClearColor,
Properties::NON_VIRTUAL,
__C5_osg_Vec4_R1__getClearColor,
"Get the clear color. ",
"");
I_Method1(void, setClearAccum, IN, const osg::Vec4 &, color,
Properties::NON_VIRTUAL,
__void__setClearAccum__C5_osg_Vec4_R1,
"Set the clear accum used in glClearAccum(. ",
".). glClearAcumm is only called if mask & GL_ACCUM_BUFFER_BIT is true. ");
I_Method0(const osg::Vec4 &, getClearAccum,
Properties::NON_VIRTUAL,
__C5_osg_Vec4_R1__getClearAccum,
"Get the clear accum value. ",
"");
I_Method1(void, setClearDepth, IN, double, depth,
Properties::NON_VIRTUAL,
__void__setClearDepth__double,
"Set the clear depth used in glClearDepth(. ",
".). Defaults to 1.0 glClearDepth is only called if mask & GL_DEPTH_BUFFER_BIT is true. ");
I_Method0(double, getClearDepth,
Properties::NON_VIRTUAL,
__double__getClearDepth,
"Get the clear depth value. ",
"");
I_Method1(void, setClearStencil, IN, int, stencil,
Properties::NON_VIRTUAL,
__void__setClearStencil__int,
"Set the clear stencil value used in glClearStencil(). ",
"Defaults to 0; glClearStencil is only called if mask & GL_STENCIL_BUFFER_BIT is true ");
I_Method0(int, getClearStencil,
Properties::NON_VIRTUAL,
__int__getClearStencil,
"Get the clear stencil value. ",
"");
I_Method1(void, setColorMask, IN, osg::ColorMask *, colorMask,
Properties::NON_VIRTUAL,
__void__setColorMask__osg_ColorMask_P1,
@@ -608,12 +638,21 @@ BEGIN_OBJECT_REFLECTOR(osg::Camera)
I_SimpleProperty(osg::OperationThread *, CameraThread,
__OperationThread_P1__getCameraThread,
__void__setCameraThread__OperationThread_P1);
I_SimpleProperty(const osg::Vec4 &, ClearAccum,
__C5_osg_Vec4_R1__getClearAccum,
__void__setClearAccum__C5_osg_Vec4_R1);
I_SimpleProperty(const osg::Vec4 &, ClearColor,
__C5_Vec4_R1__getClearColor,
__void__setClearColor__C5_Vec4_R1);
__C5_osg_Vec4_R1__getClearColor,
__void__setClearColor__C5_osg_Vec4_R1);
I_SimpleProperty(double, ClearDepth,
__double__getClearDepth,
__void__setClearDepth__double);
I_SimpleProperty(GLbitfield, ClearMask,
__GLbitfield__getClearMask,
__void__setClearMask__GLbitfield);
I_SimpleProperty(int, ClearStencil,
__int__getClearStencil,
__void__setClearStencil__int);
I_SimpleProperty(osg::ColorMask *, ColorMask,
__ColorMask_P1__getColorMask,
__void__setColorMask__osg_ColorMask_P1);