mp3butcher
a45c4c8f39
set DIBO of the drawcommandarray directly in their interface constructor
...
it makes osggpu use case lighter + drawcommandarray can't exist without a BO
2017-07-27 12:27:55 +02:00
mp3butcher
104b2dfc72
Promote PrimitiveSetIndirect's VBO to a target explicited DIBO (in order to benefit from BOSet queue management)
2017-07-27 12:13:05 +02:00
mp3butcher
7606159a78
add DrawIndirectBufferObject as State variable in order to minimize call to glBindBuffer(GL_DRAW_INDIRECT_BUFFER,X)
...
TODO: Promote PrimitiveSetIndirect's VBO to target explicited DIBO (in order to benefit from BOSet queue management)
2017-07-27 01:54:25 +02:00
mp3butcher
9b53775840
remove deprecated DrawIndirectBufferBinding
2017-07-27 01:40:04 +02:00
mp3butcher
8742ad8da6
fix some errors during renaming and cleanup code
2017-07-27 01:08:37 +02:00
mp3butcher
f27c379b1e
some renaming and harmonisations with osg metamodel convention
2017-07-26 23:36:55 +02:00
mp3butcher
5be14bc2ba
first commit for Indirect Draw integration in osg
...
users will have to implement interfaces for their custom drawcommandarrays
add a lot of new primitive set + few defines
integration is made in osggpucull
2017-07-26 21:20:28 +02:00
Robert Osfield
9f3533632a
Added ability for OSG serializers to get the file version number when writing out via the OutputStream object
2017-06-19 12:04:03 +01:00
OpenSceneGraph git repository
da7a0968be
Merge pull request #265 from cxw42/array-classname
...
Make Array::className() support all Array::Type values
2017-06-19 08:50:00 +01:00
Chris White
eb99df894a
Make Array::className() support all Array::Type's
...
Array::className() had fallen out of date with respect to Array::Type.
This commit updates it, and adds documentation and a debug message to
serve as a reminder for future additions of values to Array::Type.
2017-06-16 11:02:14 -04:00
blobfish
f5bd280b51
osg: KdTree: count degenerates to keep original primitive index in sync
2017-06-04 17:29:57 -04:00
blobfish
bb804c2045
osg: KdTree: encode original primitive index into _vertexIndices
2017-06-04 17:29:57 -04:00
Robert Osfield
79e764bd17
Improved support for Text with large numbers of glyphs
2017-05-25 12:38:54 +01:00
Robert Osfield
502acc19c9
Build fix
2017-05-25 09:54:11 +01:00
Robert Osfield
badb914d46
Tidied up spacing
2017-05-25 08:56:53 +01:00
Robert Osfield
5f446e0022
Fixed naming of OSG_USE_DEPRECATED_API
2017-05-25 08:48:45 +01:00
Robert Osfield
20ac472d1f
Moved OSG_USE_DEPRECATED_API from include/osg/Export to Cmake controlled include/osg/Config
2017-05-24 19:40:08 +01:00
Robert Osfield
a60aed70b5
Replaced DimensionMask naming with more appropriate PrimitiveMask nameing.
2017-05-24 18:36:52 +01:00
Robert Osfield
a74b4b94a9
Fixes/clean up of KdTree/LineSegmentIntersector/PolytopeIntersector
2017-05-11 15:29:31 +01:00
Robert Osfield
6e1866ac18
Added --points and --lines command line options that do a very simplistic conversion of geometry primitives to points or lines respectively, used to aid testing of intersectors
2017-05-11 15:29:31 +01:00
Robert Osfield
bc0a402dac
Improved indentation, making it consistent with the rest of the OSG headers
2017-05-11 15:25:10 +01:00
Robert Osfield
9ce657f413
Created TemplatePrimitiveIndexFunctor to enable easier handling of point, lines, triangles and quad index meshes
2017-05-11 15:25:10 +01:00
Robert Osfield
c9545970ac
Removed redudent bool parameter from TriangleFunctor::operator(Vec3, Vec3, Vec3, bool) so it's now simply TriangleFunctor::operator(Vec3, Vec3, Vec3) as the bool was always false in recently OSG versions.
2017-05-11 15:25:10 +01:00
Robert Osfield
48a3fc30f3
Removed old style OpenGL methods from PrimitiveFunctor classes/templates as these are no longer used or required.
2017-05-11 15:25:10 +01:00
Robert Osfield
8f5493e573
Implemented Polytope::contains(..) for triangle vertices and added support for using the results mask.
2017-05-11 15:25:10 +01:00
Robert Osfield
265efb85a1
Initial work on adding KdTree support for PolytopeIntersector.
2017-05-11 15:25:10 +01:00
Robert Osfield
a95d66a587
Replaced dynamoc_cast<osg::CullStack*> with asCullStack() to improve performance of AutoTransform, screen size based LOD and PagedLOD.
2017-04-26 17:10:58 +01:00
Robert Osfield
92092a56ae
Refactored AutoTransform so that it dynamically computes the rotation, scale and matrices during the cull traversal to enable usage in multi-view, multi-threaded applications
2017-04-26 11:50:35 +01:00
Robert Osfield
a4b0dc7426
Added missing Node::asAutoTransform() + NodeVisitor::apply(AutoTransform&).
2017-04-25 18:04:04 +01:00
Laurens Voerman
36fc30d8e7
avoid INFO message about duplicate enums with and without _EXT
2017-04-07 15:56:32 +02:00
mp3butcher
8d40323761
add Extensions
2017-04-05 18:11:50 +02:00
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
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