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
502acc19c9
Build fix
2017-05-25 09:54:11 +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
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
mp3butcher
8d40323761
add Extensions
2017-04-05 18:11:50 +02:00
mp3butcher
9d490bbf1c
add ScriptNodeCallback serializer
2017-03-28 22:37:34 +02: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
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
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
Robert Osfield
96760970ed
Added setDataVariance(DYNAMIC) to stats text labels that are dyanmically updated.
2017-03-09 17:01:33 +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
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
Robert Osfield
1abd99f084
Added support for glObjectLabel debugging
2016-11-15 14:35:47 +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
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
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
aa0c8fdefd
Added ApplyTextureModeProxy for temporarily applying a texture mode
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
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
611b7afb07
Added OSG_EXPORT
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
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
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
8de4c76582
Fixed crash and double call bug in handle event callbacks attached to Drawable
2016-10-06 18:27:23 +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
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
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