Commit Graph

10165 Commits

Author SHA1 Message Date
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
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
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
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
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
d92a79b876 Fixed crash associated with setting the affinity on a null pointer 2016-10-08 15:58:33 +01:00
OpenSceneGraph git repository
05ed7d1336 Merge pull request #152 from aluaces/spelling2
Some spelling fixes in comments.
2016-10-07 17:05:58 +01:00
Robert Osfield
548c9739ed Restructed how CPU affinity is set to fix build problems when local pthreads doesn't support setting affinity 2016-10-07 15:57:01 +01:00
Robert Osfield
10d8ac7f65 Fixed extension string typo 2016-10-07 12:17:03 +01:00
Robert Osfield
dc6b55a5e9 Added support for checking GL_OES_texture_npot 2016-10-07 12:17:03 +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
171e4f0f29 Implemented setting thread affinity for threads that aren't OpenThreads threads, such as main thread 2016-10-07 12:17:03 +01:00
Robert Osfield
b9869e137d First cut of OpenThrads::Affinity support for Win32. 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
cd56639e67 Added CullingActive support for Drawable serializer 2016-10-07 11:13:40 +01:00
Laurens Voerman
6ad0f9badc fix bug in SmoothingVisitor tripped by bunny.ply 2016-10-06 14:23:46 +02:00
Robert Osfield
197b4a0d30 Added GL_OES_geometry_shader and GL_OES_tessellation_shader checks 2016-10-06 10:48:29 +01:00
Alberto Luaces
7f3c92f492 Some spelling fixes in comments. 2016-10-05 18:10:46 +02:00
René Molenaar
48dbd61632 Fixed VisualStudio build 2016-10-05 16:31:23 +01:00
Robert Osfield
0fab759c1b Removed the unused debug header as it was causing building compile problems with the Debug build under Windows 2016-10-05 14:00:46 +01:00
OpenSceneGraph git repository
f705e39eb9 Merge pull request #142 from LaurensVoerman/Submissions12
fix a few minor warnings from Visual Studio 2015
2016-09-27 09:48:38 +01:00
Laurens Voerman
0619fe1cfa src\osgplugins\osgjs\Animation(9): warning C4099: 'WriteVisitor': type name first seen using 'class' now seen using 'struct' 2016-09-26 13:56:38 +02:00
Laurens Voerman
0ee744f7a0 fix Visual studio warning C4138: '*/' found outside of comment 2016-09-26 13:43:51 +02:00
Robert Osfield
1bdd2aceab Removed __sgi blocks as IRIX is no longer available 2016-09-26 10:03:32 +01:00