Commit Graph

14521 Commits

Author SHA1 Message Date
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
10f1d84f7e Added explict setup of the stats graphing geometry so that it's VertexBufferObject is intialized to the correct size to prevent any need for later resizing 2016-10-11 11:29:29 +01:00
Robert Osfield
d4d32cbde7 Improved handling of the BufferObject::Profile::_size, utilizing it's intial value when it is non zero and larger than the arrays assigned to it. 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
96b0e42c42 Fixed typo in comment 2016-10-11 11:29:29 +01:00
Robert Osfield
ff779e58ab Added check against Array::Binding to decide whether to assign a VertexBufferObject to an array or not, only assigning it when Binding is BIND_PER_VERTEX 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
93b2a24b0e Added command line parser to osgparticle examples viewer setup to make it easier to position window 2016-10-11 11:29:29 +01:00
Robert Osfield
663024a215 Removed redundent use of Geode to decorate the ParticleSystem 2016-10-11 11:29:29 +01:00
Robert Osfield
9800e1c201 Fixed line endings 2016-10-11 11:29:29 +01:00
Robert Osfield
c15f6d3e8c Made ordering of case clearer 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
35e19b4f30 Added back in the osgimpostor example, cleaning up so that it no longer has any deprecated paths and adds stats and file output for debug purposes 2016-10-11 11:29:29 +01:00
Robert Osfield
037e8f24c6 Removed commented out debug message 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
a1ab1a0ecc Added AdjustSphereSegmentCallback to provide '<' and '>' key controls over the azim and elev range of the sphere segment 2016-10-11 11:29:29 +01:00
Robert Osfield
a87a6f0851 Added StatsHandler to check performance 2016-10-11 11:29:29 +01:00
Robert Osfield
3d0f6d5d78 Removed unused header 2016-10-11 11:29:29 +01:00
Robert Osfield
1df27e4edb Replaced old Shape to Geometry conversion code as new convinience methods in include/osg/Shape provide these features 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
3be951f279 Fixed crash when using vertex attribute arrays 2016-10-11 11:29:29 +01:00
Robert Osfield
b2873132be Added support for interleaved arrays 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
164981f7a3 Replaced osg::State:set*Pointer() calls with VertexArrayState::set*Array() calls 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
d8fdf33be5 Cleaned up set up of osg::Geometry for stats 2016-10-11 11:29:29 +01:00
Robert Osfield
cf52b2db50 Removed unncessary checks 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
Mathieu MARACHE
46c86f53ac remove a warning when compiling with GL3 core profile and macOS 2016-10-11 11:29:29 +01:00
Mathieu MARACHE
3745b958e5 compilation fixes when no OSG_GL_DISPLAYLISTS_AVAILABLE 2016-10-11 11:29:29 +01:00
Mathieu MARACHE
afe45f66d2 compilation fixes when no OSG_GL_FIXED_FUNCTION_AVAILABLE 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
98344157c0 Removed resetting of the pointer state. 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