diff --git a/src/osgWrappers/osg/Camera.cpp b/src/osgWrappers/osg/Camera.cpp index 0c2509b51..e6bd98560 100644 --- a/src/osgWrappers/osg/Camera.cpp +++ b/src/osgWrappers/osg/Camera.cpp @@ -96,8 +96,18 @@ BEGIN_ENUM_REFLECTOR(osg::Camera::BufferComponent) I_EnumLabel(osg::Camera::COLOR_BUFFER15); END_REFLECTOR +BEGIN_ENUM_REFLECTOR(osg::Camera::ImplicitBufferAttachment) + I_DeclaringFile("osg/Camera"); + I_EnumLabel(osg::Camera::IMPLICIT_DEPTH_BUFFER_ATTACHMENT); + I_EnumLabel(osg::Camera::IMPLICIT_STENCIL_BUFFER_ATTACHMENT); + I_EnumLabel(osg::Camera::IMPLICIT_COLOR_BUFFER_ATTACHMENT); + I_EnumLabel(osg::Camera::USE_DISPLAY_SETTINGS_MASK); +END_REFLECTOR + TYPE_NAME_ALIAS(std::map< osg::Camera::BufferComponent COMMA osg::Camera::Attachment >, osg::Camera::BufferAttachmentMap) +TYPE_NAME_ALIAS(int, osg::Camera::ImplicitBufferAttachmentMask) + BEGIN_OBJECT_REFLECTOR(osg::Camera) I_DeclaringFile("osg/Camera"); I_BaseType(osg::Transform); @@ -489,6 +499,31 @@ BEGIN_OBJECT_REFLECTOR(osg::Camera) __C5_BufferAttachmentMap_R1__getBufferAttachmentMap, "Get the const BufferAttachmentMap, used to configure frame buffer objects, pbuffers and texture reads. ", ""); + I_MethodWithDefaults2(void, setImplicitBufferAttachmentMask, IN, osg::Camera::ImplicitBufferAttachmentMask, renderMask, osg::DisplaySettings::DEFAULT_IMPLICIT_BUFFER_ATTACHMENT, IN, osg::Camera::ImplicitBufferAttachmentMask, resolveMask, osg::DisplaySettings::DEFAULT_IMPLICIT_BUFFER_ATTACHMENT, + Properties::NON_VIRTUAL, + __void__setImplicitBufferAttachmentMask__ImplicitBufferAttachmentMask__ImplicitBufferAttachmentMask, + "", + ""); + I_Method1(void, setImplicitBufferAttachmentRenderMask, IN, osg::Camera::ImplicitBufferAttachmentMask, implicitBufferAttachmentRenderMask, + Properties::NON_VIRTUAL, + __void__setImplicitBufferAttachmentRenderMask__ImplicitBufferAttachmentMask, + "", + ""); + I_Method1(void, setImplicitBufferAttachmentResolveMask, IN, osg::Camera::ImplicitBufferAttachmentMask, implicitBufferAttachmentResolveMask, + Properties::NON_VIRTUAL, + __void__setImplicitBufferAttachmentResolveMask__ImplicitBufferAttachmentMask, + "", + ""); + I_MethodWithDefaults1(osg::Camera::ImplicitBufferAttachmentMask, getImplicitBufferAttachmentRenderMask, IN, bool, effectiveMask, false, + Properties::NON_VIRTUAL, + __ImplicitBufferAttachmentMask__getImplicitBufferAttachmentRenderMask__bool, + "Get mask selecting implict buffer attachments for Camera primary FBO if effectiveMask parameter is set, method follows USE_DISPLAY_SETTINGS_MASK dependence and returns effective mask if effectiveMask parameter is reset, method returns nominal mask set by the Camera. ", + ""); + I_MethodWithDefaults1(osg::Camera::ImplicitBufferAttachmentMask, getImplicitBufferAttachmentResolveMask, IN, bool, effectiveMask, false, + Properties::NON_VIRTUAL, + __ImplicitBufferAttachmentMask__getImplicitBufferAttachmentResolveMask__bool, + "Get mask selecting implict buffer attachments for Camera secondary MULTISAMPLE FBO if effectiveMask parameter is set, method follows USE_DISPLAY_SETTINGS_MASK dependence and returns effective mask if effectiveMask parameter is reset, method returns nominal mask set by the Camera. ", + ""); I_Method0(void, createCameraThread, Properties::NON_VIRTUAL, __void__createCameraThread, @@ -686,6 +721,12 @@ BEGIN_OBJECT_REFLECTOR(osg::Camera) I_SimpleProperty(osg::GraphicsContext *, GraphicsContext, __GraphicsContext_P1__getGraphicsContext, __void__setGraphicsContext__GraphicsContext_P1); + I_SimpleProperty(osg::Camera::ImplicitBufferAttachmentMask, ImplicitBufferAttachmentRenderMask, + 0, + __void__setImplicitBufferAttachmentRenderMask__ImplicitBufferAttachmentMask); + I_SimpleProperty(osg::Camera::ImplicitBufferAttachmentMask, ImplicitBufferAttachmentResolveMask, + 0, + __void__setImplicitBufferAttachmentResolveMask__ImplicitBufferAttachmentMask); I_SimpleProperty(osg::Camera::DrawCallback *, InitialDrawCallback, __DrawCallback_P1__getInitialDrawCallback, __void__setInitialDrawCallback__DrawCallback_P1); diff --git a/src/osgWrappers/osg/DisplaySettings.cpp b/src/osgWrappers/osg/DisplaySettings.cpp index 44ac1a02b..20f499161 100644 --- a/src/osgWrappers/osg/DisplaySettings.cpp +++ b/src/osgWrappers/osg/DisplaySettings.cpp @@ -54,6 +54,16 @@ BEGIN_ENUM_REFLECTOR(osg::DisplaySettings::SplitStereoVerticalEyeMapping) I_EnumLabel(osg::DisplaySettings::LEFT_EYE_BOTTOM_VIEWPORT); END_REFLECTOR +BEGIN_ENUM_REFLECTOR(osg::DisplaySettings::ImplicitBufferAttachment) + I_DeclaringFile("osg/DisplaySettings"); + I_EnumLabel(osg::DisplaySettings::IMPLICIT_DEPTH_BUFFER_ATTACHMENT); + I_EnumLabel(osg::DisplaySettings::IMPLICIT_STENCIL_BUFFER_ATTACHMENT); + I_EnumLabel(osg::DisplaySettings::IMPLICIT_COLOR_BUFFER_ATTACHMENT); + I_EnumLabel(osg::DisplaySettings::DEFAULT_IMPLICIT_BUFFER_ATTACHMENT); +END_REFLECTOR + +TYPE_NAME_ALIAS(int, osg::DisplaySettings::ImplicitBufferAttachmentMask) + BEGIN_OBJECT_REFLECTOR(osg::DisplaySettings) I_DeclaringFile("osg/DisplaySettings"); I_BaseType(osg::Referenced); @@ -404,6 +414,31 @@ BEGIN_OBJECT_REFLECTOR(osg::DisplaySettings) __unsigned_int__getMaxBufferObjectPoolSize, "", ""); + I_MethodWithDefaults2(void, setImplicitBufferAttachmentMask, IN, osg::DisplaySettings::ImplicitBufferAttachmentMask, renderMask, osg::DisplaySettings::DEFAULT_IMPLICIT_BUFFER_ATTACHMENT, IN, osg::DisplaySettings::ImplicitBufferAttachmentMask, resolveMask, osg::DisplaySettings::DEFAULT_IMPLICIT_BUFFER_ATTACHMENT, + Properties::NON_VIRTUAL, + __void__setImplicitBufferAttachmentMask__ImplicitBufferAttachmentMask__ImplicitBufferAttachmentMask, + "", + ""); + I_Method1(void, setImplicitBufferAttachmentRenderMask, IN, osg::DisplaySettings::ImplicitBufferAttachmentMask, implicitBufferAttachmentRenderMask, + Properties::NON_VIRTUAL, + __void__setImplicitBufferAttachmentRenderMask__ImplicitBufferAttachmentMask, + "", + ""); + I_Method1(void, setImplicitBufferAttachmentResolveMask, IN, osg::DisplaySettings::ImplicitBufferAttachmentMask, implicitBufferAttachmentResolveMask, + Properties::NON_VIRTUAL, + __void__setImplicitBufferAttachmentResolveMask__ImplicitBufferAttachmentMask, + "", + ""); + I_Method0(osg::DisplaySettings::ImplicitBufferAttachmentMask, getImplicitBufferAttachmentRenderMask, + Properties::NON_VIRTUAL, + __ImplicitBufferAttachmentMask__getImplicitBufferAttachmentRenderMask, + "Get mask selecting default implict buffer attachments for Cameras primary FBOs. ", + ""); + I_Method0(osg::DisplaySettings::ImplicitBufferAttachmentMask, getImplicitBufferAttachmentResolveMask, + Properties::NON_VIRTUAL, + __ImplicitBufferAttachmentMask__getImplicitBufferAttachmentResolveMask, + "Get mask selecting default implict buffer attachments for Cameras secondary MULTISAMPLE FBOs. ", + ""); I_Method1(void, setGLContextVersion, IN, const std::string &, version, Properties::NON_VIRTUAL, __void__setGLContextVersion__C5_std_string_R1, @@ -470,6 +505,12 @@ BEGIN_OBJECT_REFLECTOR(osg::DisplaySettings) I_SimpleProperty(const std::string &, GLContextVersion, 0, __void__setGLContextVersion__C5_std_string_R1); + I_SimpleProperty(osg::DisplaySettings::ImplicitBufferAttachmentMask, ImplicitBufferAttachmentRenderMask, + __ImplicitBufferAttachmentMask__getImplicitBufferAttachmentRenderMask, + __void__setImplicitBufferAttachmentRenderMask__ImplicitBufferAttachmentMask); + I_SimpleProperty(osg::DisplaySettings::ImplicitBufferAttachmentMask, ImplicitBufferAttachmentResolveMask, + __ImplicitBufferAttachmentMask__getImplicitBufferAttachmentResolveMask, + __void__setImplicitBufferAttachmentResolveMask__ImplicitBufferAttachmentMask); I_SimpleProperty(unsigned int, MaxBufferObjectPoolSize, __unsigned_int__getMaxBufferObjectPoolSize, __void__setMaxBufferObjectPoolSize__unsigned_int); diff --git a/src/osgWrappers/osg/State.cpp b/src/osgWrappers/osg/State.cpp index 52d3fe682..a76579e03 100644 --- a/src/osgWrappers/osg/State.cpp +++ b/src/osgWrappers/osg/State.cpp @@ -488,7 +488,7 @@ BEGIN_OBJECT_REFLECTOR(osg::State) __void__unbindPixelBufferObject, "", ""); - I_MethodWithDefaults3(void, drawQuads, IN, GLint, first, , IN, GLsizei, count, , IN, GLsizei, primCount, 1, + I_MethodWithDefaults3(void, drawQuads, IN, GLint, first, , IN, GLsizei, count, , IN, GLsizei, primCount, 0, Properties::NON_VIRTUAL, __void__drawQuads__GLint__GLsizei__GLsizei, "",