OpenSceneGraph git repository
373204ef7f
Merge pull request #236 from mp3butcher/ScriptBranch
...
add ScriptNodeCallback serializer
2017-03-29 09:27:58 +01:00
Robert Osfield
1292724a27
Added Texture2D include to resolve VS build issue
2017-03-29 09:12:14 +01:00
mp3butcher
9d490bbf1c
add ScriptNodeCallback serializer
2017-03-28 22:37:34 +02:00
Robert Osfield
58c52a4cd4
Added TextBase::getMatrix() accessor
2017-03-28 14:43:07 +01:00
Robert Osfield
25e6fbb2ff
Fixed typo
2017-03-28 14:42:40 +01:00
Robert Osfield
13b5d247df
Fixed typo
2017-03-28 09:41:07 +01:00
Robert Osfield
6308b497f2
Replaced macro based selection of which shaders to use by default with DisplaySettings::setShaderHint() and OSG_SHADER=HINT=GL2|GL3|GLES2|GLES3|NONE controls
2017-03-27 11:44:41 +01:00
Robert Osfield
c6228fabbd
Added built-in shaders for shader_pipeline functionality
...
Added support for enabling shader_pipeline shaders using OSG_SHADER_PIPELINE=ON/OFF env var
Added support for setting the shader_pipeline shaders using OSG_SHADER_PIPELINE_FILES=shader.vert:shader.shaderpipeline_frag env var
Added support for setting the maximum number of texture units used by shader_pipeline shaders via OSG_SHADER_PIPELINE_MAX_TEXTURE_UNITS=<num> env var
2017-03-24 18:53:22 +00:00
Robert Osfield
7346831082
Added parameter to invocation of all GLSL TexEnv combinations and cleaned up debug output from new osg::UniformTemplate implementations
2017-03-24 10:08:51 +00:00
Robert Osfield
986674e547
Added CopyOp handling of Uniform.
2017-03-23 18:12:52 +00:00
Robert Osfield
d5e9a2c447
Added shader pipeline support to various Texture subclasses
2017-03-23 18:12:52 +00:00
Robert Osfield
3821f77c35
Added name of uniform to debug output
2017-03-23 17:59:39 +00:00
Robert Osfield
83372ff864
Added shader pipeline support to osg::TexEnv
2017-03-23 17:59:39 +00:00
Robert Osfield
59a28859ec
Added shader pipeline support to osg::TexGen.
2017-03-23 17:59:39 +00:00
Robert Osfield
2fc28a7f64
Added mapping of GL modes to 0 (disabled) or 1 (enabled) for the fixed function -> shaders mapping.
...
Added flags for hinting to StateAttribute::apply() implementations whether to toggling on/off the fixed function or shader equivilants.
2017-03-23 17:59:39 +00:00
Robert Osfield
2574894e17
Added TextureAttribute base class from Texture related StateAttribute that need texture unit information from StateSet::setTextureAttribute assigned to
...
help set configure the appropriate uniforms.
2017-03-23 17:58:34 +00:00
Robert Osfield
7d076d0407
Added UniformBase::setName(const std::string& baseName, unsigned int unit); declaration
2017-03-23 17:58:34 +00:00
Robert Osfield
7e43538c63
Added accessors for osg::State's ModeDefineMaps
2017-03-23 17:58:34 +00:00
Robert Osfield
7744c44c8a
Added convinience mathod for passing osg::Plane to glUniform
2017-03-23 17:58:34 +00:00
Robert Osfield
bbbfa19ce2
Added osg::PlaneUniform.
...
Added osg::UniformBase::setName(const std::string&) ability to be reset.
Added osg::UniformBase::setName(const std::string& baseName, unsigned int unit) so set the uniform name in the form "baseName[unit]".
2017-03-23 17:58:34 +00:00
Robert Osfield
5a996dd2d1
Added osg::MakeString class to make it easier to create std::string's using std::ostream style << usage.
2017-03-23 17:58:34 +00:00
Robert Osfield
c0b04cc37b
Introduced new osg::UniformBase class to enable an extensible uniform class hierachy
...
Added osg::UniformTemplate, osg::UniformArrayTemplate and a set of IntUniform, IntArrayUniform etc. to make it easier to interact with basic types more efficiently.
2017-03-23 17:58:34 +00:00
Robert Osfield
5bfefdae6a
Added mapping of texture modes to #define's to inject into shaders where required
2017-03-23 17:42:33 +00:00
Robert Osfield
6d531fd643
Moved the implementation of the State::setUseModelViewAndProjectionUniforms(bool) and State::setUseVertexAttributeAliasing(bool) into State.cpp and added initialization of the VertexArrayState array bindings to ensure that bindings get updated correctly.
...
Refined the State::popStateSet() method to make it more efficient
2017-03-23 17:42:33 +00:00
Robert Osfield
a99b05ff87
Added State::s/getRootStateSet() that enables applications to insert a StateSet above all rendering for a graphics context. Utilized in the new shadper pipeline functionality
2017-03-23 17:42:33 +00:00
Robert Osfield
172ca9bae5
Removed debug version of applyUniformList
2017-03-23 17:42:33 +00:00
Robert Osfield
d1222fc2ef
Added fallback textures to handle cases where no texture is provided
2017-03-23 17:42:33 +00:00
Robert Osfield
7e0551e7e8
Added #pragma import_texture_modes() -> #define into #pragma data structure a GLSL parsing
2017-03-23 17:42:33 +00:00
Robert Osfield
71da950cee
Standardized GLenum's on non EXT versions
2017-03-23 17:42:33 +00:00
Robert Osfield
5c2ea3ad1f
Intial work on providing mapping from OpenGL modes to #pragma(tic) shader composition defines.
...
Shader usage:
#pragma import_modes ( GL_LIGHTING, GL_TEXGTURE_2D )
Will provide #define in shaders for GL_LIGHTING and GL_TEXTURE_2D if these Modes are enabled via StateSet::setMode(..);
2017-03-23 17:42:33 +00:00
OpenSceneGraph git repository
602a6beda8
Merge pull request #225 from MPursche/add_texture2dmultisample_serializer
...
Added serializer for Texture2DMultisample
2017-03-22 10:31:45 +00:00
Marcel Pursche
422587a285
Added serializer for Texture2DMultisample
2017-03-22 10:47:58 +01:00
tomhog
423e14f92f
Merge branch 'master' into topic-gles3-ios
2017-03-21 15:33:13 +00:00
Robert Osfield
a74872c6bf
Refactored GlyphTexture so that it utlizes standard osg::Texture2D/osg::Image combinations rather than locally implemented per glyph subloading.
2017-03-21 13:10:45 +00:00
Thomas Hogarth
76fe572934
Added conditionals for GLES3, added correct gl headers for GLES3 on iOS and Android to GL.in
2017-03-20 18:33:08 +00:00
Robert Osfield
e6703e3cb0
Removed no longer supported code paths
2017-03-18 11:48:55 +00:00
Robert Osfield
feb0214ddc
Introduced streamlined text rendering dispatch code.
2017-03-18 11:48:55 +00:00
Robert Osfield
ffbc1167de
Added lazy state updating for vertex array object binding/unbinding
2017-03-13 11:44:34 +00:00
Robert Osfield
61782d8f29
Build fixes
2017-03-11 12:31:19 +00:00
OpenSceneGraph git repository
75e4d85681
Merge pull request #211 from D-A-Heitbrink/master
...
Added support for unsigned 64 bit ints + some code for bindless textures
2017-03-11 11:58:20 +00:00
OpenSceneGraph git repository
1d8efb1a3a
Merge pull request #203 from scrawl/optimizer
...
MergeGeometryVisitor fix
2017-03-11 11:34:16 +00:00
Robert Osfield
2cad221d80
Cleaned out old code paths
2017-03-09 17:33:38 +00:00
Robert Osfield
96760970ed
Added setDataVariance(DYNAMIC) to stats text labels that are dyanmically updated.
2017-03-09 17:01:33 +00:00
Robert Osfield
7868909f43
Improved the handling of array updates and support for VBO and VAO's.
2017-03-08 18:15:06 +00:00
Robert Osfield
b88be0fbda
Implemented better handling of VertexBufferObjects and ElementBufferObjects in osgText
2017-03-03 18:31:51 +00:00
Robert Osfield
59931d1591
Removed unneccessary mutable usage
2017-03-02 17:05:24 +00:00
Robert Osfield
a69216a79d
Refactored osgText::Tex3D to use a single vertex and normal arrays and a combined set of primitive sets. Deprecated Text3D::RenderMode as it's no longer used.
2017-03-02 16:11:10 +00:00
Robert Osfield
4721651dbe
Added NEW_APPROACH code path that merges the separate GlyphGeometry arrays and primitives into a single set of arrays and primitives
2017-03-02 11:12:55 +00:00
d-a-heitbrink
7b3fc0925c
Merge branch 'master' of https://github.com/openscenegraph/OpenSceneGraph
2017-03-01 16:12:49 -06:00
Robert Osfield
f233005988
Merged the decoration vertices with the same vertex arrays used for text glyphs
2017-03-01 16:43:05 +00:00
Robert Osfield
f4966a96d4
Replaced hardwired glDrawArrays calls with use of osg::DrawElementsUshort.
2017-03-01 11:51:27 +00:00
Robert Osfield
256441906f
Removed unused member variable
2017-02-28 17:12:58 +00:00
Robert Osfield
1290f1584a
Removed old Text::GlyphQuads array code paths
2017-02-28 17:02:02 +00:00
Robert Osfield
138af70bd8
Merged the Text::GlyphQuads cooordinate arrays
2017-02-28 16:34:33 +00:00
Robert Osfield
e5685dfca5
Removed old code paths
2017-02-27 15:15:37 +00:00
Robert Osfield
80c96cd54f
Added option for combining the GlyphQuad::backdropcoords into the GlyphQuad::coords.
2017-02-27 11:53:42 +00:00
Robert Osfield
8adbf322a0
Scaled back the primitives sets set up so they match the requirements of the osgText::Text accordinging to the BackdropType
2017-02-24 18:25:16 +00:00
Robert Osfield
a84a6bd309
Moved glyph quad setup into dedicated method
2017-02-24 17:08:48 +00:00
Robert Osfield
cefecaec10
Removed unused lineNumber
2017-02-24 11:17:22 +00:00
Robert Osfield
93f28d4eee
Moved to use of single vector of DrawElementsUShort for backdrops and foreground text quads
2017-02-24 10:07:01 +00:00
scrawl
e0f7d3241a
Fix MergeGeometryVisitor to work with a Group instead of Geode
2017-02-24 01:05:57 +01:00
Robert Osfield
b5048d3b74
Cleaned up types
2017-02-23 18:14:36 +00:00
Robert Osfield
8ff17ddf52
Restructed and unified the position computation
2017-02-23 15:45:43 +00:00
Robert Osfield
7b3ecefcfc
Removed the old code paths
2017-02-22 14:14:03 +00:00
Robert Osfield
f816436771
Removed the unncessary array.
2017-02-22 12:41:45 +00:00
Robert Osfield
04d23659b3
Added the option for changing the type of the GlyphQuads::Coords
2017-02-22 12:07:43 +00:00
Robert Osfield
cd991eaa97
Refactored the computation of the transforms for the osgText::Text
2017-02-21 17:07:53 +00:00
scrawl
6deefe0646
Remove seemingly redundant handling of Geode in GLObjectsVisitor
2017-02-03 18:10:37 +01:00
scrawl
e38c3d0303
Fix handling of in-scenegraph Drawables in SmoothingVisitor, TriStripVisitor and GraphicsCostEstimator
2017-02-03 17:55:55 +01:00
scrawl
4e1a2d3246
Fix handling of in-scenegraph Drawables in ShaderGenVisitor
2017-02-03 17:51:03 +01:00
scrawl
e48aa118b6
Fix handling of in-scenegraph Drawables in MeshOptimizers
2017-02-03 17:48:18 +01:00
scrawl
c901694290
Fix handling of in-scenegraph Drawables in DrawElementTypeSimplifier
2017-02-03 17:43:42 +01:00
scrawl
853418db94
Remove redundant handling of Geode in DisplayRequirementsVisitor
2017-02-03 17:42:21 +01:00
scrawl
a858b2a2cd
Add a comment explaining some confusing code in UpdateVisitor and EventVisitor
2017-02-03 17:39:56 +01:00
scrawl
09ca132102
Remove redundant handling of Geode in SharedStateManager
2017-02-03 17:35:40 +01:00
scrawl
a13b66135f
Fix handling of in-scenegraph drawables in osgUtil::Simplifier
2017-02-03 17:35:40 +01:00
scrawl
f13fbff251
Remove CheckGeometryVisitor which was a no-op
2017-01-20 23:02:15 +01:00
scrawl
4a05caf4f7
MakeFastGeometryVisitor: fix handling of Geometries that are directly in the scene graph not attached to a Geode
2017-01-20 23:01:04 +01:00
scrawl
833f37ea57
StateVisitor: remove redundant code for Geode handling
2017-01-20 22:49:17 +01:00
scrawl
f229b19496
TessellateVisitor: fix handling of Geometries that are directly in the scene graph not attached to a Geode
2017-01-20 22:47:51 +01:00
scrawl
41cbf9a45e
FlattenStaticTransformsVisitor: fix handling of Drawables that are directly in the scene graph not attached to a Geode
2017-01-20 22:43:58 +01:00
scrawl
ff1a9a195a
StaticObjectDetectionVisitor: make use of apply(Drawable) visitor function
2017-01-20 21:48:45 +01:00
scrawl
764b2f60c6
TextureAtlasVisitor: fix handling of Drawables that are directly in the scene graph not attached to a Geode
2017-01-20 21:47:21 +01:00
scrawl
dc2689f779
TextureVisitor: remove redundant code for Geode handling
2017-01-20 21:47:13 +01:00
scrawl
7611f95078
RemoveEmptyNodesVisitor: remove redundant code for Geode handling
2017-01-20 21:46:03 +01:00
Robert Osfield
255a86cbe2
Added public accessors
2017-01-17 10:52:26 +00:00
d-a-heitbrink
3d2f4ea404
Added support for Bindless texture extension,
...
64 bit uniforms, 64 bit buffers
Added new bindless texture example
2017-01-13 09:56:42 -06:00
Hartwig
5e0b3dacc6
Replaced tabs with spaces
2017-01-07 13:54:21 +01:00
Hartwig
7c1098c843
Addition of documentation for LOD and PagedLOD
...
Documentation has been added for their default constructors. Furthermore, the consequences of different center modes have been explained. A comment regarding the setting of the radius has been fixed.
2017-01-07 09:20:56 +01:00
blobfish
a41f498e1f
osgManiputor: TranslateInLineCommand wants Vec3d instead of Vec3
2016-12-08 10:12:17 -05:00
Robert Osfield
b04271f93e
Fixed crash in handling of an osg::Callback attached to a Drawable as update callback.
...
Added handling of osg::Callback when attavhed to a Drawable as a cull callback.
2016-11-23 18:19:59 +00:00
Robert Osfield
1abd99f084
Added support for glObjectLabel debugging
2016-11-15 14:35:47 +00:00
Robert Osfield
ddbb1cb064
Removed todo that is not required
2016-11-15 09:47:48 +00:00
Robert Osfield
87a3648e68
To avoid noise in documentation replaced nested namespaced enum with enum with FILE_COPY_ wording prefixed into enum values.
2016-11-15 08:57:24 +00:00
Robert Osfield
80f75bcbdd
Fixed doxygen warnings
2016-11-15 08:37:05 +00:00
Robert Osfield
5b375124cc
Added osg::Geometry::configureBufferObjects() and ConfigureBufferObjectsVisitor visitor to help with setting up buffer objects in a coherent fashion.
2016-11-14 17:59:25 +00:00
Robert Osfield
99cb8ebacf
Added more flexibility into the State::checkGLErrors() method, allowing calling code to pass in two strings.
...
Improved the StateSet::compileGLObjects() usage of checkGLErrors() to make the warning reports more meaningful.
2016-11-14 11:59:47 +00:00
Robert Osfield
e6052ef4b4
Added Dragger::applyAppropriateFrontFace(StateSet*) to make it easy to handle inverted matrices by toggling the FrontFace to sure the correct face is visible.
2016-11-11 17:18:13 +00:00
Robert Osfield
d16ca33f38
Fixed handling of Locator's with negative extents
2016-11-11 14:01:40 +00:00
Robert Osfield
b10d30242d
Fixed GLES build due to lack of GLclampd
2016-10-12 18:00:05 +01:00
Laurens Voerman
1a664b19de
add #define GL_TEXTURE0 for windows users previously provided by GLBeginEndAdapter
2016-10-12 13:29:58 +02:00
Robert Osfield
0314fd593a
Added VAO support to osgTerrain::GeometryPool
2016-10-11 20:11:39 +01:00
Robert Osfield
38ff11f8c5
Renamed ArrayDispatchers to AttributeDispatchers to better reflect it's role
2016-10-11 15:14:14 +01:00
Robert Osfield
e14ee80282
Streamlined the dispatch and activation of attribute dispatchers
2016-10-11 11:29:29 +01:00
Robert Osfield
364c838ea1
Removed unused vertex and texcoord array dispatchers
2016-10-11 11:29:29 +01:00
Fabian Wiesel
b13bbe3bdb
VAO id is a GLuint
2016-10-11 11:29:29 +01:00
Robert Osfield
0ee65c9d2f
Removed unneccessary parameter
2016-10-11 11:29:29 +01:00
Robert Osfield
e11e45a2e3
Removed GLBeginEndAdapter as it is no longer needed
2016-10-11 11:29:29 +01:00
Robert Osfield
0f3e61146d
Refactored osgText so that it no longer uses GLBeginEndAdapter
2016-10-11 11:29:29 +01:00
Robert Osfield
aa0c8fdefd
Added ApplyTextureModeProxy for temporarily applying a texture mode
2016-10-11 11:29:29 +01:00
Robert Osfield
53cdacd926
Refactored Text3D so that it no longer depends upon GLBeginEndAdapter
2016-10-11 11:29:29 +01:00
Robert Osfield
1914eb435b
Added State::ApplyModeProxy to help with temporarily applying a mode
2016-10-11 11:29:29 +01:00
Robert Osfield
a471973eab
Added missing export
2016-10-11 11:29:29 +01:00
Robert Osfield
5a4754deef
Refactored osgParticle so that it natives support vertex arrays, vertex buffer objects and vertex array objects
2016-10-11 11:29:29 +01:00
Robert Osfield
cd3a5f8097
Added osg::convertToRGBA8(Vec4f) convenience function
2016-10-11 11:29:29 +01:00
Robert Osfield
8febae1546
Fixed VertexArrayState::bind*BufferObject(..) methods so they correctly handle dirtied buffer objects
2016-10-11 11:29:29 +01:00
Robert Osfield
a5e0398a29
Fixed typo in comment
2016-10-11 11:29:29 +01:00
Robert Osfield
886b922596
Beginings of refactoring ParticleSystem so that it does uses vertex arrays rather than GLBeginEndAdapter
2016-10-11 11:29:29 +01:00
Robert Osfield
611b7afb07
Added OSG_EXPORT
2016-10-11 11:29:29 +01:00
Robert Osfield
56ed225f17
Removed Particle::Shape support for QUAD_TRIANGLESTRIP, HEXAGON, USER as these are unlikely to be used as their implementation prevents refactoring to use vertex array code paths
2016-10-11 11:29:29 +01:00
Robert Osfield
c637010c9d
Refactored ImpostorSprite so that it no longer uses GLBeginEndAdapter
2016-10-11 11:29:29 +01:00
Robert Osfield
7c432fbe11
Refactored osgSim::SphereSegment so that it no longer uses GLBeginEndAdapter
2016-10-11 11:29:29 +01:00
Robert Osfield
e5ab4355be
Added osg::convertShapeToGeometry(...) convinience functions for creating osg::Geometry from osg::Shape descriptions.
2016-10-11 11:29:29 +01:00
Robert Osfield
83b5cabac9
Refactored ShapeDrawable so that it is subclassed from osg::Geometry rather than osg::Drawable.
...
Created a BuildShapeGeometryVisitor visitor that can create osg::Geometry for osg::Shape objects
2016-10-11 11:29:29 +01:00
Robert Osfield
f842750342
Removed no longer used member variables
2016-10-11 11:29:29 +01:00
Robert Osfield
65884f296b
Removed no longer used data structures
2016-10-11 11:29:29 +01:00
Robert Osfield
16da432be3
Moved FOG_COORD and SECONDARY_COLOR #define's from State header into VertexArrayState.cpp
2016-10-11 11:29:29 +01:00
Robert Osfield
359b136b5e
Added check against State::useVertexBufferObjects(..) so that Display Lists are only used when VBO is OFF.
2016-10-11 11:29:29 +01:00
Robert Osfield
961bffcca4
Added automatic assignment of _markerObject to CompileSet.
2016-10-11 11:29:29 +01:00
Robert Osfield
94891778c4
Restructred the enabling of vertex array object support to allow one to set enable the default via osg::State.
...
Added OSG_VERTEX_BUFFER_HINT env var to osg::DisplaySettings with VERTEX_BUFFER_OBJECT/VBO, VERTEX_ARRAY_OBJECT/VAO and NO_PREFERENCE to allow one to foce on VBO or VAO usage.
Restructred BufferObject assigned in osg::Geometry
Added
2016-10-11 11:29:29 +01:00
Robert Osfield
ee31921520
Streamlined State::_is*Supported variables
2016-10-11 11:29:29 +01:00
Robert Osfield
1d75089bf8
Build fixes when compiling wuth CMake options OPENGL_PROFILE set to GLCORE
2016-10-11 11:29:29 +01:00
Robert Osfield
e3c663bb02
Removed deprecated code paths and moved implementations into headers
2016-10-11 11:29:29 +01:00
Robert Osfield
bf28e2d037
Refactored the VertexArrayState's handling of vertex attribute aliasing
2016-10-11 11:29:29 +01:00
Robert Osfield
1f147f6bc6
Moved implementations from .cpp's to headers as inline methods to improve performance.
2016-10-11 11:29:29 +01:00
Robert Osfield
97df15b205
Improved naming of createVertexArrayState(..) method
2016-10-11 11:29:29 +01:00
Robert Osfield
83f73df814
Added State::useVertexArrayObject() member to streamline toggling on/off of VAO usage
2016-10-11 11:29:29 +01:00
Robert Osfield
a4e682bb28
Added support for clean up Vertex Array Objects
2016-10-11 11:29:29 +01:00
Robert Osfield
4131d2da34
Added intialization of the VAO in Geometry::compileGLObjects() and refined the invocation of updates to the VAO
2016-10-11 11:29:29 +01:00
Robert Osfield
078598872f
Added lazy setting of arrays for osg::Geometry using vertex_array_object
2016-10-11 11:29:29 +01:00
Robert Osfield
4b4cd13d31
Implemented lighter weight setting of the CurrentVertexArrayState and introduced GlobalVertexArrayState.
2016-10-11 11:29:29 +01:00
Robert Osfield
7d83d735ad
Implemented a different approach to vertex array object support to enable creation of a single global vertex array object as well as provide individual vertex array objects per Drawable when required.
2016-10-11 11:29:29 +01:00
Robert Osfield
4d8a29b987
Added ability to initializer GL vertex array object id with Geometry::compileGLObjects().
...
Improved the handling of buffer object state when not using VAO's
2016-10-11 11:29:29 +01:00
Robert Osfield
14d1483b06
Experimental support for OpenGL Vertex Array Object
2016-10-11 11:29:29 +01:00
scrawl
295742c0d7
Fix typo in processor affinity API
2016-10-10 18:02:38 +02:00
Robert Osfield
7ba7b13aa0
Fixed VisualStudio warning
...
Added local implementation of asEventHandler()
2016-10-07 14:51:39 +01:00
Robert Osfield
268d89c426
Fixed VisualStudio warning
...
Added local implementation of asEventHandler()
2016-10-07 14:45:33 +01:00
Robert Osfield
91538d90f8
Added ViewerBase::s/getUseConfigureAffinity(bool flag) to allow users to toggle whether they want the ViewerBase::setUpThreads() method to call ViewerBase::configureAffinity() or not.
2016-10-07 12:17:03 +01:00
Robert Osfield
ee97db3488
Introduced OpenThreads::Affinity support into osg::Camera, osg::GraphicsContext::Traitse, osgDB::DatabasePager and osgViewer::ViewerBase/Viewer/CompositeViewer.
...
Added ViewerBase::configureAffinity() to help with the setting of the affinity of camera, graphics context and pager threads
2016-10-07 12:17:03 +01:00
Robert Osfield
77c5e96ccb
Added DatabasePager::setProcessorAffinity(const OpenThreads::Affinity&) support to allow the database threads to have affinity to user controls sets of CPU cores.
2016-10-07 12:17:03 +01:00
Robert Osfield
00aac43cdb
Added missing export
2016-10-07 12:17:03 +01:00
Robert Osfield
bc44da49e6
Introduced new OpenThreads::Affinity class to wrap up specification of thread affinity.
...
Simplified the OpenThreads::SetProcessorAffinityOfCurrentThread/Thread::SetProcessorAffinity() to utilize the new Affinity class
2016-10-07 12:17:03 +01:00
Robert Osfield
0f8a5a86e2
Introduced OpenThreads::SetProcessorAffinityMaskOfCurrentThread(unsigned long cpumask) and Threads::setProcessorAffinityMask(unsigned long cpumask) to allow finer grained control over the CPU affinity.
2016-10-07 12:17:03 +01:00
Robert Osfield
8de4c76582
Fixed crash and double call bug in handle event callbacks attached to Drawable
2016-10-06 18:27:23 +01:00
Robert Osfield
56a7208891
Removed Qt dependency examples, osgQt NodeKit and qfont plugin as these are now provided by the separate osgQt project
2016-09-26 09:31:22 +01:00
Robert Osfield
b0df75e674
Cleaned up the spacing and const of various method parameters.
...
Added non const versions of StateSet::getAttributePair() and getTextureAttributePair()
2016-09-20 17:01:26 +01:00
OpenSceneGraph git repository
b75546acaf
Merge pull request #131 from filnet/master
...
StandardManipulator: use proper bit mask when clearing a relative flag
2016-09-15 07:50:51 +01:00
Philippe Renon
e367792f6d
StandardManipulator: use proper bit mask when clearing a relative flag
2016-09-14 14:32:35 +02:00
Laurens Voerman
55b8c380d8
wrong Meta_Shape tag in ConvexHull
2016-09-12 16:49:35 +02:00
Robert Osfield
cb6e6ff2be
Fixed warnings, deprecated another out of date method
2016-09-05 15:35:54 +01:00
Robert Osfield
a494cd71e8
Fixed typo
2016-09-05 07:59:15 +01:00
Robert Osfield
79ff8ba273
Merge branch 'Submissions2e' of https://github.com/LaurensVoerman/OpenSceneGraph into LaurensVoerman-Submissions2e
2016-09-02 18:26:11 +01:00
OpenSceneGraph git repository
14bdadaf86
Merge pull request #123 from LaurensVoerman/Submissions2f
...
Submissions2f
2016-09-02 17:44:57 +01:00
OpenSceneGraph git repository
8d827ced1b
Merge pull request #117 from LaurensVoerman/Submissions2a
...
bugfix: wrong class name in META_Object macro for osg::Enablei /disable
2016-09-02 17:35:47 +01:00
OpenSceneGraph git repository
def6508308
Merge pull request #118 from LaurensVoerman/Submissions2b
...
fix colliding include guards and spurious #define OSGUI_EXPORT
2016-09-02 17:34:20 +01:00
Laurens Voerman
1da43a5960
added copyconstructor for osgAnimation::BasicAnimationManager
2016-08-29 13:03:36 +02:00
Laurens Voerman
628f8fd9dc
added call to copy constructor for virtual base classes in copy constructor of derived classes, removed these for abstract classes
2016-08-29 10:41:40 +02:00
Laurens Voerman
ca877a8424
fix colliding include guards and spurious #define OSGUI_EXPORT
2016-08-29 09:40:21 +02:00
Laurens Voerman
dd223002dd
bugfix: wrong class name in META_Object macro for osg::Enablei osg::Disablei
2016-08-29 09:37:14 +02:00
Robert Osfield
0ad09d6dad
Fixed unused variable warnings
2016-08-26 19:18:00 +01:00
Robert Osfield
322adc266c
Merge branch 'master' of https://github.com/openscenegraph/OpenSceneGraph
2016-08-26 18:00:52 +01:00
Robert Osfield
11ddd53eb4
Removed redundent Referenced::s/getThreadSafeReferenceCounting() and associated static and env vars as there are now inapprorpiate and no longer supported
2016-08-26 17:59:30 +01:00
James Turner
ea9f479674
Attempt to fix broken DLL exports from osgDB
...
Only export the osgDB method implementations, instead of the entire
class, and hence avoid exporting symbols from the base class, which
then conflict with other compilation units when linking.
This avoids the need for /FORCE:MULTIPLE linker option with MSVC.
2016-08-15 22:21:44 +01:00
Robert Osfield
9d9025a6b4
Changed the default paramter for the osgUtil::StateToCompile to retain the OSG-3.4 ABI and fixed indentation.
2016-08-15 12:13:07 +01:00
Robert Osfield
06cb31a3d2
Added automatic assignment of _markerObject to CompileSet.
2016-08-15 11:46:48 +01:00
Robert Osfield
fd0af1d9df
Added Optimizer::BufferObjectVisitor and associated BUFFER_OBJECT_SETTINGS value to enable it via the OSG_OPTIMZIER env var.
...
The BufferObjectVisitor enbales vertex buffer objects usage on Drawable in the scene graph.
2016-07-11 09:52:07 +01:00
Robert Osfield
74f1cc1ec4
Improved casting to address crashes when handling classes that use virtual inheritance.
2016-07-06 11:36:47 +01:00
Robert Osfield
dce1473a53
Seperated out the scene->requiresRedraw() method into a osgViewer::Viewer::requiresRedraw() method to make the functionality clearer and easier to override.
2016-07-05 11:54:31 +01:00
Philippe Renon
22d53357d3
split requiresUpdateSceneGraph() into requires update and requires redraw (wip)
2016-07-04 23:19:20 +02:00
Julien Valentin
36930dcd18
Added serializer support for RigTransforms
2016-07-04 20:19:58 +01:00
Robert Osfield
82ab389fd6
Added Vec2,3,4 for b, ub, s, us, i, ui.
2016-07-04 13:36:28 +01:00
Julien Valentin
50f6cf6a69
Added missing xzyw accessor to Vec4ub
2016-07-04 10:01:17 +01:00
Robert Osfield
b7bf94b4c6
Added const
2016-07-02 14:45:10 +01:00
Robert Osfield
7a63538fb9
Removed inappropriate use of Vec3us in osgAnimation as this relies upon nonexistant functionality in Vec3us and in general just doesn't make sense to attempt to use float point maths with a unsigned short.
2016-07-02 10:44:40 +01:00
OpenSceneGraph git repository
9ae4a4fc27
Merge pull request #95 from marchelbling/tristripvisitor_index_option
...
Adds an indexMesh option to disable mesh reindexation
2016-07-01 18:07:16 +01:00
Marc Helbling
da47f8a156
Adds an indexMesh option to disable mesh reindexation
...
This mainly breaks gles/osgjs when stripifying a MorphGeometry. It also
usually doesn't make sense to reindex an already indexed mesh.
2016-07-01 18:12:36 +02:00
Marc Helbling
43443928d0
Updates osgAnimation
...
This updates is mainly for the gles plugint to work correctly.
* adds Quaternion array
* reintroduces `KeyframeContainer::linearInterpolationDeduplicate`
* fixes MorphGeometry OSG serialization (target names)
2016-07-01 17:04:15 +02:00
Björn Blissing
ed7d49c5d2
CleanUpOperation added to Viewer
...
Sometimes there is need to do cleanup with valid graphic contexts
before closing these contexts. The added operation runs a graphics
operation on each context before closing them.
2016-06-30 22:09:22 +02:00
Robert Osfield
990c04d4b9
Moved the scene related requiresUpdateSceneGraph() implementation details from View into Scene.
...
Added check against the ImagePager.
2016-06-29 15:34:11 +01:00
OpenSceneGraph git repository
48c1d0e8da
Merge pull request #81 from filnet/checkneedtodoframe
...
refactor common code from CompositeViewer::checkNeedToDoFrame() and Viewer::checkNeedToDoFrame() into View
2016-06-29 15:15:31 +01:00
Robert Osfield
00b1173e70
Added osg::ScissorIndexed that wraps up glScissorIndexed function
2016-06-29 15:11:02 +01:00
Robert Osfield
412e9fc3dd
Added osg::DepthRangeIndexed class to wrap up glDepthRangeIndexed functionality.
2016-06-29 12:28:28 +01:00
Robert Osfield
8d7d5d12a1
Added osg::ViewportIndexed that adds support for glViewportIndexed
2016-06-29 11:26:54 +01:00
Laurens Voerman
ec74518868
Added glViewerArray, glSissorArray, glDepthRangeArray etc. GL extension support
2016-06-29 09:53:04 +01:00
Robert Osfield
5c25a3a0ea
Added initializers
2016-06-27 15:06:54 +01:00
Robert Osfield
27595e9f02
Added initializers
2016-06-27 14:53:32 +01:00
Julien Valentin
c8a7ce4e52
Rolbacked RigGeometry with the hackyfix (I just add the compute boundcallback in the copy consturctor)
...
Modified headers of RigTransforms to comply with osg metamodel
2016-06-27 11:51:32 +01:00
Julien Valentin
ce28b2e43e
MorphGeometry fixes
2016-06-25 18:15:57 +01:00
Robert Osfield
40ccf503e4
Fixed warnings
2016-06-25 17:19:00 +01:00
Robert Osfield
ca0fff8313
Added extern and export
2016-06-25 16:32:58 +01:00
Robert Osfield
1204c32430
Changed back to requiring osgDB namespace so it's clearer where function comes from.
2016-06-25 16:13:56 +01:00
Robert Osfield
ed59753741
Added namespace prefix
2016-06-25 16:10:56 +01:00
Robert Osfield
6d7d58fa12
Added osgDB::stringcopy and stringcopyfixedsize
2016-06-25 16:08:15 +01:00
Robert Osfield
39317acd42
Changed return type to unsigned int to make it more compatible with serialization
2016-06-25 12:35:34 +01:00
Robert Osfield
949aca196d
Refactored handling of StateAttiribute's that override the StateAttiribute::getMember() so that when they change their Member value they update the StateSet parents that own them to keep the StateSet's maps coherent.
2016-06-25 12:24:19 +01:00
Cedric Pinson
0ecb52ff82
Submitted with fixes by Julian Valentin
2016-06-25 07:49:56 +01:00
Robert Osfield
6bbd5299b6
Removed unused member variable
2016-06-24 12:12:50 +01:00
Robert Osfield
b9c3377d88
Added initializers
2016-06-24 12:11:09 +01:00
Robert Osfield
601884131e
Added initializers
2016-06-24 11:58:38 +01:00
Robert Osfield
c8d668b298
Added depecated message to redundent shape classes
2016-06-24 09:46:19 +01:00
Robert Osfield
eb4dcba21a
Removed unused variable
2016-06-23 16:32:45 +01:00
Robert Osfield
07137f4111
Fixed unitialized variables
2016-06-23 16:32:02 +01:00
Robert Osfield
1f73376476
Restructed the GLExtensions(..) constructor so that it now intializes all the variables to NULL if there is not a valid graphics context present
2016-06-23 12:19:59 +01:00
Robert Osfield
bc8452512f
Added initializers and handling of null case
2016-06-23 11:03:38 +01:00
Robert Osfield
5955d362a6
Added initializer
2016-06-22 12:10:49 +01:00
Robert Osfield
a5ec8b7eda
Added initializers
2016-06-22 12:08:10 +01:00
Robert Osfield
1d7f75c490
Added initializer
2016-06-22 12:03:10 +01:00
Robert Osfield
f2704e0bf3
Removed dead code
2016-06-22 11:58:45 +01:00
Robert Osfield
f7afd3bab2
Added initializer
2016-06-22 11:51:04 +01:00
Robert Osfield
acaf9fd720
Added initializer
2016-06-22 11:48:30 +01:00
Robert Osfield
97acecdf66
Added initializer
2016-06-22 11:41:58 +01:00
Robert Osfield
8a83bd73bb
Added missing initializers
2016-06-22 11:39:11 +01:00
Robert Osfield
471e556e91
Added initializers
2016-06-22 11:27:15 +01:00
Robert Osfield
67cc776696
Added default_value() template to help with creating templates that need to initialize members that are floats etc.
2016-06-22 11:26:11 +01:00
Robert Osfield
d5f18590fd
Added intializers
2016-06-22 10:35:37 +01:00
Ralf Habacker
7876c7915b
clang 6.0 compile fixes.
2016-06-20 10:32:42 +01:00
Ralf Habacker
69929f596f
Fix finding object cache entries.
2016-06-20 10:26:12 +01:00
Robert Osfield
7d34e8f441
Build fixes to reflect removal of deprecated_osg::Geometry
2016-06-17 12:49:44 +01:00
Julien Valentin
e236acfed5
Added OpenGL extensions related to shader subroutine
2016-06-17 10:35:25 +01:00
Julien Valentin
78b99c7143
Refactored osg::TextureBuffer to support assigning any type of osg::BufferData rather than just osg::Image as was previously required.
...
Refactored osgforest and osggpucull examples to take account of changes to TextureBuffer.
Added osg::DrawIndirectBufferBinding.
2016-06-15 19:05:35 +01:00
Robert Osfield
819ce6c0d1
Removed redundent _boundingBoxComputed
2016-06-14 18:27:27 +01:00
Ralf Habacker
85cd1c456f
Identify files in object cache by filename and optional provided options.
...
Objects with the same filename may be different from others based on the provided
plugin options. Using filename *and* the provided options as object cache key
helps to avoid fetching the wrong object.
2016-06-14 12:27:33 +01:00
Julien Valentin
2ac8379cfc
osgDB Wrapper Associates Revision Tagging
2016-06-14 11:43:45 +01:00
Robert Osfield
4c5ca932c8
Added #include <string> in case other headers don't include it.
2016-06-13 16:24:01 +01:00
Philippe Renon
dfc9eec3c3
make osgViewer::View::requiresUpdateSceneGraph() virtual
2016-06-11 17:05:00 +02:00
Philippe Renon
37ef07ce7e
refactor common code from CompositeViewer::checkNeedToDoFrame() and Viewer::checkNeedToDoFrame() into View
2016-06-11 16:58:51 +02:00
Julien Valentin
ac26ba7e5b
Shader subroutine related funcs added
2016-06-09 10:48:05 +01:00
Robert Osfield
8bfe67b37b
Fixed unused parameter warning.
2016-06-08 10:54:36 +01:00
Robert Osfield
b1539418b3
Fixed unused parameter warning.
2016-06-08 09:46:58 +01:00
Robert Osfield
aef2574b8d
Fixed -Wextra warnings
2016-06-08 09:46:09 +01:00
Robert Osfield
ef73d2449e
Fixed -Wextra warnings
2016-06-08 09:20:16 +01:00
Robert Osfield
10e27681dd
Fixed "unreferenced formal parameter" warnings
2016-06-07 08:53:42 +01:00
Robert Osfield
27caa9c1b1
Removed redundent _EXT
2016-06-06 12:05:28 +01:00
Jethro Leevers
08a823d857
Added support for GL_LINE_STRIP_ADJACENCY_EXT
2016-06-06 11:59:56 +01:00
Björn Blissing
e8f103afc9
VS2015 build fix
2016-06-03 17:22:28 +01:00
Robert Osfield
afe89e8d94
Added float variants of osg::PI etc. in the form osg::PIf
...
Converted osg::PI usage to osg::PIf in ShapeDrawable.cpp to address Windows build errors
2016-06-03 11:28:10 +01:00
Robert Osfield
41ce857c93
Fixed clang warnings
2016-06-03 09:33:47 +01:00
Robert Osfield
d038866649
Fixed method to match parent class.
2016-06-02 14:31:44 +01:00
Robert Osfield
d3c6dc6f34
Fixed doxygen warnings
2016-06-01 14:20:14 +01:00
Julien Valentin
5a4a5c3507
Added glDrawArraysIndirect, glMultiDrawArraysIndirect, glDrawElementsIndirect and glMultiDrawElementsIndirect extensions.
2016-06-01 10:01:44 +01:00
Pjotr Svetachov
1823341cce
small optimization to the osgb/t serializers.
2016-05-31 11:27:30 +01:00
Jannik Heller
55e5d74a1c
Fixed typo of method name
2016-05-30 13:44:54 +01:00
Alberto Luaces
260cbab518
Typo fixes
2016-05-30 12:30:05 +01:00
Robert Osfield
c36c0033fd
Fixed shadows warnings
2016-05-23 20:02:36 +01:00
Robert Osfield
5260e3a35e
Fixed build error introduced by c3f2711b09
2016-05-23 11:31:02 +01:00
rdiankov
da34da18ca
add safety checking when dereferencing ref_ptr
2016-05-21 21:29:14 +02:00
Robert Osfield
ae3ba28fee
Fixes shadows warnings
2016-05-20 13:38:34 +01:00
Adri
89a2ed7da4
Extra header include.
...
Removed an extra header include for <QGLWidget>
2016-05-19 18:53:15 +01:00
Jannik Heller
a5b05f77ea
This submission removes the define / code path OSG_USE_BOUND that was never used. The class osg::Bound used by this code doesn't exist either.
2016-05-19 17:32:24 +01:00
Robert Osfield
fe6238d126
Added osg::GraphicsContext::WindowingSystemInterfaces singleton for managing multiple WIndowinSystemInterface
...
implementations being registered at the same time.
One usage case for this functionality to support usage of Wayland and X11 in the same version of the osgViewer.
As part of the new functionality there is now a osg::GraphicsContext::Traits::windowingSystemPreferrence string
that default to empty, but if defined will ensure that a specific WindowingSystemInterface is utilized when
you do a generic call like osg::createGraphicsContext().
Also implemented is standard proxy object for registering the new contexts and removing them automatically, and
declaration of standard graphicswindow_name() C entry point to help with static build linking.
2016-05-16 13:45:31 +01:00
Robert Osfield
7b34ca0a39
Added using to quieten warning
2016-04-29 10:39:57 +01:00
Robert Osfield
eb50a15b52
Fixed ShaderComposer::releaseGLObjects(State*) const method as it's const was missing.
...
Rewrote the ShaderComposer::releaseGLObjects() const method to pass on the releaseGLObjects() calls to any associated Program or Shader objects.
2016-04-18 20:46:45 +01:00
Robert Osfield
459ae5ce64
Changed the default value paramter to be consistent with the non templated version of StateSet::setTextureAttributeAndModes(..)
2016-03-29 20:24:05 +01:00
Robert Osfield
68430ee8e5
Added a local implementation of SlideEventHandler::checkNeedToDoFrame() so that Present3D can toggle on/off the need for continuous rendering to only slides that require it,
...
enabling slides with no animation to sit iddle rather keeping rendering, reducing CPU/GPU overhead and saving power.
2016-03-10 16:35:08 +00:00
Robert Osfield
f5b5202296
From Joe Thompson, "OpenSceneGraph cannot be built with Visual Studio 2008.
...
The file osg-OpenSceneGraph-3.4.0\include\osg\Types
typedefs int8_t, int16_t, int32_t and int64_t
These are typedefed as signed __intX in several other places.
With VS2008, this causes an error "int8_t redifined, different basic types"
Explicitly declaring them signed fixes the error."
2016-03-02 09:18:26 +00:00
Robert Osfield
bb79e523d4
From Konstantin Matveyev, "Two classes (with wrappers) added to osgAnimation: UpdateVec2fUniform and UpdateVec4fUniform"
2016-03-01 15:09:12 +00:00
Robert Osfield
d055216740
From Wee See and Robert Osfield, Introduced StatsHandler::collectWhichCamerasToRenderStatsFor(osgViewer::ViewerBase* viewer, osgViewer::ViewerBase::Cameras& cameras) method to make it
...
possible to customize which Cameras the handler renders stats for.
2016-03-01 11:06:39 +00:00
Robert Osfield
5d03bb9a2b
From Jannik Heller, "This submission fixes a stuttering issue that may occur when occlusion query nodes are in view. The problem is that OSG retrieves the occlusion query result without first checking if it's available (GL_QUERY_RESULT_AVAILABLE). Thus, the driver has to sync with the GPU i.e. wait for all queued draw calls to complete. This is particularly bad in V-Synced situations where the driver may be using multi frame queueing techniques - coupled with the fact that OSG only runs an occlusion query every 5th frame, results in very unpleasant stuttering in some situations.
...
The change I made is to check GL_QUERY_RESULT_AVAILABLE before retrieving the query, to ensure that there won't be a stall. If the query result is not available yet, we'll leave it alone and try again in the next frame.
Had to make a few more changes than I'd liked, mostly because the TestResult mechanism wasn't designed for holding on to query objects for more than one frame. As well, I'm thinking that RetrieveQueriesCallback and ClearQueriesCallback could be merged together, if we wanted to go for more refactoring. For though now my strategy is to make as little changes as possible. Let me know what you think of the patch."
2016-03-01 10:37:41 +00:00
Robert Osfield
be98c884bd
From Ognjen Kostic, "Some android phones have no support for OES_element_index_uint extension that is required if glDrawElements is to be called with GL_UNSIGNED_INT for element type.
...
In OSG 3.4, osgText::Text( ::_quadIndices) uses DrawElementsUInt that will fail on these devices and no text will appear - tested on Samsung Galaxy Trend 2 SM-G313HN.
When DrawElementsUInt is replaced with DrawElementsUShort it works, although I'm not sure if this can cause other problems with some fonts.
Fix:
- In include\osgText\Text, line 316:
replace: "osg::ref_ptr< osg::DrawElementsUInt > _quadIndices;"
with: "osg::ref_ptr< osg::DrawElementsUShort > _quadIndices;"
- In src\osgText\Text.cpp, line 2094:
replace: "_quadIndices = new DrawElementsUInt(PrimitiveSet::TRIANGLES);"
with: "_quadIndices = new DrawElementsUShort(PrimitiveSet::TRIANGLES);"
"
2016-03-01 10:21:14 +00:00
Robert Osfield
58f940c0f1
Updated the AuthenticationDetails::HttpAuthentication enum to reflect current libcurl values
2016-02-18 19:53:36 +00:00
Robert Osfield
98ca24ff4e
From Laurens Voerman, "a few additions in the repository (asDrawableEventCallback / asDrawableCullCallback) made this version a bit outdated,
...
so I get so new warnings. This update can fix those warnings."
2016-02-17 15:09:14 +00:00
Robert Osfield
67202b2662
From Romain Ouabdelkader, "This is a fix for osgText to calculate kerning and to load glyph3D with the text's font resolution.
...
Font::getKerning(...), Font::getGlyph3D(...) doesn't ask for a font resolution so it uses the last font resolution requested by Font:: getGlyph(...).
This can leads to different results depending of the precedent call to Font::getGlyph(...).
See http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/2016-January/271952.html for more infos.
This fix adds a font resolution parameter to Font::getKerning(...), Font::getGlyph3D(...) and to the font implementations.
This was made under the base revision r15182."
2016-02-15 13:30:39 +00:00
Robert Osfield
937ef73521
From Laurens Loerman, Fix for "Visual Studio 2013 gives me a large amount (2778) of warnings about inheritance via dominace (C4250)."
2016-02-15 12:37:05 +00:00
Robert Osfield
8cefa05e3a
From "Jannik Heller", I just updated to the latest commit and noticed that drawable cull callbacks were no longer working. As it turns out there was a missing implementation of the asDrawableCullCallback() and asDrawableEventCallback(), after implementing these methods everything is working as expected.
2016-02-04 20:15:14 +00:00
Robert Osfield
aa17f5441a
From Laurens Voerman,
...
"E:\osg\osgSvnGit\OpenSceneGraph\include\osg/Callback(286): warning C4099: 'osg::DrawableUpdateCallback' : type name first seen using 'class' now seen using 'struct' (E:\osg\osgSvnGit\OpenSceneGraph\src\osgUtil\RenderBin.cpp)
E:\osg\osgSvnGit\OpenSceneGraph\include\osg/Callback(27) : see declaration of 'osg::DrawableUpdateCallback'
attached is a modified version of include/osg/Callback:
changing
- struct OSG_EXPORT DrawableUpdateCallback : public virtual Callback
- {
to
+ class OSG_EXPORT DrawableUpdateCallback : public virtual Callback
+ {
+ public:
and the same changes for DrawableEventCallback and DrawableCullCallback"
2016-02-04 19:53:13 +00:00
Robert Osfield
e00977f3c2
Added OSG_EXPORT
2016-02-04 19:40:14 +00:00
Robert Osfield
dcadd69c5a
Added releaseGLObjects(..) and resizeGLObjectBuffers(..) to osgShadow::ShadowTechnique's
2016-02-04 17:52:44 +00:00
Robert Osfield
f373bcf23d
Added osg::resizeGLObjectBuffers(..) and osg::releaseGLObjects(..) functions to make it easier to call these methods on objects which ref_ptr<> or C pointers are held for.
2016-02-04 17:36:33 +00:00
Robert Osfield
f8306f145a
Added NodeVisitor::g/setValueMap and g/setValueStack, and osg::PushPopObject and osg::PushPopValue helper classes for pushing/popping values to the NodeVisitor's ValueStack.
2016-02-04 13:12:33 +00:00
Robert Osfield
b4eb8d4597
Improved the speed of the ValueObject get/setting by utilizing typeid() and static_cast<> in place of original dynamic_cast<>'s
2016-02-04 13:10:28 +00:00
Robert Osfield
041ab29d1f
Added osg::Identifer, osg::ValueMap and osg::ValueStack classes to provide a general purpose means for storing and retrieving values from map or stack containers.
...
Typical use will be for storing and passing values between nodes during traversals.
2016-02-04 13:04:40 +00:00
Robert Osfield
4deca2d38b
From Jannik Heller and Robert Osfield, introduced ReadResult/WriteResult::statusMessage() method that creates a std::string from the stutus value and message string.
2016-01-25 12:23:04 +00:00
Robert Osfield
5cb486f7c5
Added osg::MultiDrawArrays which wraps up glMultiDrawArrays extension.
2016-01-22 09:47:49 +00:00
Robert Osfield
4de2fc120d
Merge branch 'master' of https://github.com/openscenegraph/osg
2016-01-20 17:51:03 +00:00
Robert Osfield
8fc287c1b7
Added asUpdate/Cull/EventVisitor and asCamera/asDrawable to osg::Object and usage of these within the code base to avoid dynamic_cast<> usage.
2016-01-20 17:49:10 +00:00
Robert Osfield
1219a6d3bf
Added more osg::Object::as*() methods and usage of these through the code base to avoid use of dynamic_cast<> when using UpdateVisitor/CullVisitor/EventVIisitor etc.
2016-01-20 15:13:19 +00:00
Robert Osfield
e5a7c353ae
From Jannik Heller, "This submission fixes a typo in the new GLObjectManager
...
sheduleGLObjectForDeletion(GLuint globj);
should be
scheduleGLObjectForDeletion(GLuint globj)"
2016-01-19 14:49:56 +00:00
Robert Osfield
b3e0f83c07
From Jordi Torres, "Added TriangleLinePointIndexFunctor to osg namespace"
2016-01-19 14:22:12 +00:00
Robert Osfield
55a8f4abbc
Renamed DrawableUpdate/Event/Cull callbacks to use new include/osg/Callback versions
2016-01-19 11:39:28 +00:00
Robert Osfield
baaf5712c4
Added missing OSG_EXPORT
2016-01-19 09:46:20 +00:00
Robert Osfield
3e92c1fc43
Added osg::Object::asStateSet() implementation and usage to avoid use of dynamic_cast<>
2016-01-18 20:05:20 +00:00
Robert Osfield
340615de55
Replaced dynamic_cast<*Callback> with as*Callback() implementation/usage.
2016-01-18 19:04:28 +00:00
Robert Osfield
48225171e0
From Jannik Heller, "This submission fixes a bug introduced in commit 5b17e3bc2a
"Introduced CMake option OSG_PROVIDE_READFILE option...". The added overload for StateSet::setAttributeAndModes was ignoring the mode setting.
...
"
2016-01-18 13:10:14 +00:00
Robert Osfield
7409820a8f
Added Simplifier::requiresDownSampling()/requiresDownSamplingImplementation() to make it possible for the
...
Simplfifer::ContinueSimplificationCallback to be able to decide whether up or downsampling is required,
removing the previous hardwards reliance on getSampleRatio<1.0.
2016-01-18 11:50:07 +00:00
Robert Osfield
ead6924a78
Fixed typo
2015-11-23 08:54:09 +00:00
Robert Osfield
dd996a3289
Introduced CMake option OSG_PROVIDE_READFILE option that defaults to ON, but when switched to OFF disables the building of the osgDB::read*File() methods,
...
forcing users to use osgDB::readRef*File() methods. The later is preferable as it closes a potential threading bug when using paging databases in conjunction
with the osgDB::Registry Object Cache. This threading bug occurs when one thread gets an object from the Cache via an osgDB::read*File() call where only
a pointer to the object is passed back, so taking a reference to the object is delayed till it gets reassigned to a ref_ptr<>, but at the same time another
thread calls a flush of the Object Cache deleting this object as it's referenceCount is now zero. Using osgDB::readREf*File() makes sure the a ref_ptr<> is
passed back and the referenceCount never goes to zero.
To ensure the OSG builds when OSG_PROVIDE_READFILE is to OFF the many cases of osgDB::read*File() usage had to be replaced with a ref_ptr<> osgDB::readRef*File()
usage. The avoid this change causing lots of other client code to be rewritten to handle the use of ref_ptr<> in place of C pointer I introduced a serious of
templte methods in various class to adapt ref_ptr<> to the underly C pointer to be passed to old OSG API's, example of this is found in include/osg/Group:
bool addChild(Node* child); // old method which can only be used with a Node*
tempalte<class T> bool addChild(const osg::ref_ptr<T>& child) { return addChild(child.get()); } // adapter template method
These changes together cover 149 modified files, so it's a large submission. This extent of changes are warrent to make use of the Object Cache
and multi-threaded loaded more robust.
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@15164 16af8721-9629-0410-8352-f15c8da7e697
2015-10-22 13:42:19 +00:00
Robert Osfield
de4a430931
From Kristofer Tingdahl, "we had a minor shadow problem with the osg-3.4 that pollutes our continuous integration"
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@15143 16af8721-9629-0410-8352-f15c8da7e697
2015-09-25 15:20:25 +00:00
Robert Osfield
7aae720636
Refactored the way that FrameStamp is managed in osgViewer::Renderer to avoid thread conflicts
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@15138 16af8721-9629-0410-8352-f15c8da7e697
2015-09-25 10:09:27 +00:00
Robert Osfield
62764a56c5
Added support for serializing Camera::ImplicitBufferAttachmentRenderMask and ImplicitBufferAttachmentResolveMask properties.
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@15135 16af8721-9629-0410-8352-f15c8da7e697
2015-09-24 10:52:35 +00:00
Robert Osfield
2fe4fc38bb
Added missing OSG_EXPORT to fix Windows build
...
git-svn-id: http://svn.openscenegraph.org/osg/OpenSceneGraph/trunk@15131 16af8721-9629-0410-8352-f15c8da7e697
2015-09-23 10:41:54 +00:00