Commit Graph

4905 Commits

Author SHA1 Message Date
Capostrophic
da16693b4a Add asOccluderNode method to avoid dynamic casts in group child handling 2019-03-15 18:09:13 +03:00
Capostrophic
52fe3679a3 Add OSG_USE_FLOAT_QUAT build option to use single precision quaternions 2019-03-13 22:08:19 +03:00
Daniel Trstenjak
71997fa747 OcclusionQueryNode: ensure a valid query geometry
If the query geometry is invalid then don't do any occlusion queries and
never traverse the subgraphs.
2019-02-21 14:42:35 +01:00
OpenSceneGraph git repository
862788e14e
Merge pull request #711 from uhertlein/macos_10_14
Cleanups and support for macOS 10.14
2019-02-20 17:20:35 +00:00
Julien Valentin
91c6b80020 uncomment INLINE_DRAWABLE_DRAW 2019-02-20 16:55:08 +00:00
Ulrich Hertlein
10af927260 Support for macOS 10.14
- 10.14 drops libstdc++
- drops support for Carbon :-)
- drops support for macOS < 10.9
2019-02-07 19:18:11 +01:00
Robert Osfield
6eb0da3a16 Introduced a QueryGeometry::getQueryResult(const osg::Camera*) method as a more informative replacedment for QueryGeometry::getNumPixels(). 2019-01-26 18:12:19 +00:00
Daniel Trstenjak
f21ca61476 OcclusionQueryNode: add resetting of queries
If there's a big view change then it might not be appropriate to wait
for '_queryFrameCount' till the next query is issued, because then
geometry might pop into the view after '_queryFrameCount'.

This is especially important for applications not having a constant
frame rate, but just issue a new frame on demand.
2019-01-26 18:12:19 +00:00
Robert Osfield
276ca14376 Fixed typo 2019-01-23 08:52:44 +00:00
Robert Osfield
587c893f84 Added separate test and rest of _currentVAO to State::resetCurrentVertexArrayStateOnMatch(..) method 2019-01-22 20:22:49 +00:00
Robert Osfield
aee747885a Changed resetCurrentVertexArrayStateOnMatch() to reset _vas tp _globalVertexArrayState and currentVAO to 0. 2019-01-21 18:13:43 +00:00
Robert Osfield
336791ca35 Added reset of the State::CurrentVertexArrayState() to prevent the State::_vas becoming a dangling pointer when VertexArrayState objects are deleted. 2019-01-21 17:38:40 +00:00
Robert Osfield
68e4341cb4 Added calling of releaseGLObjects() and resizeGLObjects() to the Camera DrawCallback's to enable the draw callbacks to clean up their own GL objects. 2019-01-19 16:18:48 +00:00
Laurens Voerman
664d597e20 fix MSVC warning C4250: inherits 'X' via dominance (94x) 2019-01-17 17:40:29 +00:00
Robert Osfield
cb90d269e4 Added derpecated and thread unsafe warning message to docs of ObjectCache::getgetFromObjectCache() 2019-01-14 11:55:24 +00:00
Robert Osfield
d01a262f84 Added using to quieten VS warnings 2019-01-14 10:13:41 +00:00
Robert Osfield
32db852c77 Moved resizeGLObjects/releaseGLObjects out of Referenced to avoid multiple inheritance warnings 2019-01-12 11:28:25 +00:00
Robert Osfield
3da76932e6 Introduced use of ref_ptr<> and private destructor to tighen up memory management and avoid users attempting to inappropriately delete TexCoordRange. 2019-01-09 08:38:16 +00:00
Robert Osfield
466bbc6740 Fixed for crashes on exit associaciated with VAO usage and vairous niche usage cases 2019-01-08 19:35:37 +00:00
Robert Osfield
dd9ccbad86 Fixed crash on exit issues with osgFX, osgParticle, osgSim and the osgforest example 2019-01-08 19:35:29 +00:00
Robert Osfield
7729d38b2b Removed reprecated C++ usage 2018-11-01 09:14:35 +00:00
Robert Osfield
9a21a1d1cf Fixed build error when GL_USE_FLOAT_PLANE is used 2018-10-23 09:11:49 +01:00
Robert Osfield
5962d2580f From Andy Skinner, Added ~GLExtensions to clear cached values for context ID 2018-10-02 12:29:30 +01:00
Robert Osfield
c4819427fa Fixed hang using a ReentrantMutex 2018-09-11 11:24:24 +01:00
Robert Osfield
b94c797ed6 Fixed build 2018-09-11 09:32:15 +01:00
gwaldron
5b0d8aca57 osgText: fixed thread-safety issues in Glyph and Font 2018-09-10 08:00:41 -04:00
Robert Osfield
f9f9ea6e15 Fixed memory leak with assignment of default value to ObjectSerializer 2018-09-06 11:50:21 +01:00
OpenSceneGraph git repository
eaffb392f3
Merge pull request #614 from jasonbeverage/sharedshaderfix
Protect the _programSet in Shader with a mutex.
2018-09-05 09:33:01 +01:00
Jason Beverage
89a5d8b513 Protect the _programSet in Shader with a mutex.
This prevents thread safety issues when Shader objects are used in
multiple programs.
2018-09-04 10:35:38 -04:00
Robert Osfield
9f1205d22d Added support for reading UTF-8 encoded of xml files 2018-09-04 12:41:36 +01:00
Robert Osfield
71f134c64b Created a GLenum Texture::selectSizedInternalFormat(const osg::Image* image=0) const method to help clean up set up of glTexStorage.
Fixed typo.
2018-08-17 12:22:36 +01:00
OpenSceneGraph git repository
adbfd523f3
Merge pull request #596 from mp3butcher/MeshReindexation
add a bool parameter to allow forced reindexation of a mesh
2018-08-17 09:53:26 +01:00
OpenSceneGraph git repository
57ce63fffd
Fixed member variable name 2018-08-17 09:27:09 +01:00
OpenSceneGraph git repository
aa9173828a
Changed the member variable to be consistent with the method name. 2018-08-17 09:21:31 +01:00
mp3butcher
7f12ca4389 add a bool parameter to allow forced reindexation of a mesh 2018-08-16 18:59:47 +02:00
Chris White
c3880a25b6 Remove duplication of REGISTER_WINDOWINGSYSTEMINTERFACE code
Refactor so GraphicsWindowWin32 doesn't duplicate code in
<osg/GraphicsContext>.

Also, add OSGVIEWER_EXPORT to X11WindowingSystemInterface so
X11WindowingSystemInterface examples can build on cygwin.
This change parallels that in commit 0bca415d5a.
2018-08-15 12:49:01 -04:00
Vic-Min
e7583207db Renamed USE_DEPRECATED_API to OSG_USE_DEPRECATED_API 2018-08-08 15:05:53 +03:00
Robert Osfield
cd5c75ae72 Removed unneccessary FIX ME statement. 2018-07-31 09:13:20 +01:00
OpenSceneGraph git repository
86bd4a4e8b
Merge branch 'master' into imagebinding3 2018-07-23 07:57:23 +01:00
Robert Osfield
dbcd3b0324 Added GLExtensions::isPointSpriteModeSupported to allow it to be enable for GL versions that support GL_POINT_SPRITE_ARB/GL_POINT_SPRITE_OES 2018-06-27 11:04:14 +01:00
Robert Osfield
d2c2ef3ec9 Moved osg::clampProjectionMatrix() template from CullVisitor.cpp into include/osg/CullSettings to make it easier to implement custom clampProjectionMatrix callbacks 2018-06-25 20:03:50 +01:00
Robert Osfield
a855faeff3 As the author of all the files in osgPresentation and present3D have rectified the license notices to reflect their intended license rather than histoical license they had prior to being merged into the OpenSceneGraph project. OSGPL was always intended but missed during merge.
Replaced the GPL notices with OSGPL usge in present3D and include/osgPresentation as this was intended when Present3D was merged back into OpenSceneGraph but missed.
2018-05-31 14:48:54 +01:00
Robert Osfield
6eb6634997 Implemented StateGraph reuse in in scene graph Canera's RenderStage. 2018-05-23 14:52:24 +01:00
Robert Osfield
8127ddc541 Fixed type of Timer_t under Windows 2018-05-23 06:34:51 +01:00
Robert Osfield
0bca415d5a Restored the REGISTER_WINDOWINGSYSTEMINTERFACE macro to the include/osg/GraphicsContext header and removed the OSGVIEWER_EXPORT as this was causing compatibility issues with osgQt.
In GraphicsWindowWin32 replaced REGISTER_WINDOWINGSYSTEMINTERFACE usage with locally implemented equivilant with the required OSGVIEWER_EXPORT.
2018-05-21 13:19:06 +01:00
Robert Osfield
c4c84d4f94 Moved REGISTER_WINDOWINGSYSTEMINTERFACE from include/osg/GraphicsContext to include/osgViewer/GraphicsWindow and added OSGVIEWER_EXPORT 2018-05-18 15:33:29 +01:00
Robert Osfield
a4c8804b1b Introduced a local StateGraph hierarchy into CullVisitor::apply(osg::Camera&) and RenderBin to fixed RTT Camera bug where multiple RTT Camera end up with the rendering back end results assigned to them which occured when RTT Camera's share the same StateSet or null StateSet. 2018-05-18 10:05:29 +01:00
Robert Osfield
41f7efbab6 Imoroved backwards compatibility with 3.6 2018-05-14 10:47:50 +01:00
Robert Osfield
71f3bad57a Renamed the counter used to enable traversal order sorting 2018-05-14 08:44:47 +01:00
Robert Osfield
bc600bc9f7 Fixed crash when using ShapeDrawable with a TriangleMesh or ConvexHull shape due to missing texture coords 2018-05-13 11:53:21 +01:00
Robert Osfield
7c67059e12 Removed _traverseNumber variable that was duplicating the one in NodeVisitor base class 2018-05-13 09:29:27 +01:00
Robert Osfield
b70ffc9b8a Moved constructors and destructors to .cpp 2018-05-11 11:15:45 +01:00
Robert Osfield
5e6b081bb0 Revert "Moved the Options constructors and destructor implementaions into the cpp to make it easier to do debugging"
This reverts commit 479a4eefc5.
2018-05-11 11:13:19 +01:00
Robert Osfield
747162e5b6 Fixed crash the occurred when passing in a osgDB::Options to the ObjectCache that doesn't have any references to it. 2018-05-11 09:01:50 +01:00
Robert Osfield
479a4eefc5 Moved the Options constructors and destructor implementaions into the cpp to make it easier to do debugging 2018-05-11 09:01:50 +01:00
Robert Osfield
ac6eaee583 Fixed build when OSG_ENVVAR_SUPPORTED is disabled and quietened down warnings using OSG_UNUSED* macros 2018-05-10 19:00:13 +01:00
Robert Osfield
863dee52e2 Replaced std::auto_ptr<> usage as it's deprecated in C++11 and will be removed in C++17 2018-05-05 12:35:51 +01:00
Sebastian Messerschmidt
544872f63b FIX: <osgParticle> removed unimplemented functions from header 2018-04-30 11:58:19 +01:00
Alberto Luaces
d23b988d00
Small fix for uncaught typo. 2018-04-20 21:16:46 +02:00
Alberto Luaces
bc4f181d41 Fix typos and spelling. 2018-04-20 18:18:22 +02:00
Robert Osfield
0dd5230d82 Cleaned up inbludes and unused code 2018-04-20 14:01:21 +01:00
Robert Osfield
13e02d1af5 Removed osgUtil::TriStripVisitor as it is nolonger appropriate for modern OpenGL/OSG usage and bloats the osgUtil lib size by several hundred Kb. 2018-04-20 13:06:28 +01:00
Robert Osfield
c58041cf0b Added osgUtil::optimizeMesh(osg::Node* node) convinience method 2018-04-20 09:57:04 +01:00
Robert Osfield
85c835b902 Merge branch 'master' of https://github.com/openscenegraph/OpenSceneGraph 2018-04-19 20:11:19 +01:00
Robert Osfield
0836fa602a Fixed the GLBufferObject size computation so that it takes into account padding. 2018-04-19 19:45:29 +01:00
Jason Beverage
7250cd717c Removed unimplemented Uniform::getNameID from Uniform header as it's defined in UniformBase now. 2018-04-18 14:59:51 -04:00
Robert Osfield
1d4f6c2543 Cleaned up includes 2018-04-17 09:20:23 +01:00
Jason Beverage
c09d209bd0 Including osg/Geode to fix osgManipulator build 2018-04-16 15:58:12 -04:00
Robert Osfield
8a2e6b1eaa Removed long deprecated IntersectVisitor. 2018-04-16 19:41:53 +01:00
Robert Osfield
724dbac41c Fixed inline Drawable::draw(..) method 2018-04-16 15:08:24 +01:00
Robert Osfield
e884df59c7 Pulled in latest changes from 3.6 branch 2018-04-07 18:14:57 +01:00
Robert Osfield
159f0fd584 Refactored the way that margin is applied to the text buounding box to prevent growth of the bounding box each time Text::setPosition() is called. 2018-04-06 20:05:26 +01:00
Daniel Emminizer
5063a0b41a osgDB: Added missing extern OSGDB_EXPORT. 2018-04-05 18:01:29 +01:00
Robert Osfield
decaf57fef Quietened down debug message output for osgText shader setup and Drawable::createVertexArrayStateImplementation 2018-04-05 14:14:49 +01:00
Robert Osfield
146fe3e294 Fixed threading crash in osgFX that occurred when an osgFX node is added to the scene being rendered in multiple threaded windows. 2018-04-04 15:09:43 +01:00
Frank Bausch
72ab22e539 When testing XYZ/ECEF coordinate values that convert to LLA points with latitude = 90.0 or latitude = -90.0, the heights calculated by EllipsoidModel::convertXYZToLatLongHeight have substantial errors. With the provided change, points at the pole are handled more correctly. This has been tested against US NGA GoldData. 2018-04-04 08:50:39 +01:00
Robert Osfield
a34df91de7 Added a ShadowTechniue::setShadowedScene() virtual method to make it possible to implement techniques as fascades to other techniques 2018-04-03 15:29:54 +01:00
Robert Osfield
b920d482c7 Removed osgShadow::ShadowVolume as it functionality isn't functional 2018-04-03 11:35:31 +01:00
Robert Osfield
5c48904626 Rewrote the handling of AutoTransform::setAutoScaleToScreen(bool) functionality so that is disabling CullingActive when switched on. 2018-04-02 18:26:26 +01:00
Robert Osfield
f02c556874 Changed Layer::get*Value(..) methods to const 2018-03-30 12:39:52 +01:00
Robert Osfield
1e05e04a05 Maded TerrainTechnique::setTerrainTile(..), addNeighbour(..), removeNeighbour(..) and containsNeighbour(..) virtual and public to enable implementation of TerrainTechnique that act as a facade to actual TerrainTechnique implementations. 2018-03-29 11:35:34 +01:00
Konstantin S. Matveyev
b96587cead GraphicsWindowIOS: multithreaded viewer's mode support added; updated for iOS-11 SDK; view rotations fixed; GLES2, GLES3 preprocessors fixed; tested on iPhone4 and upper 2018-03-27 08:49:01 +01:00
Hartwig
1b3928a017 Removal of compiler warnings caused by integer conversions
In most systems today sizeof(size_t) is larger than sizeof(GLsizei). Therefore, the inclusion of GLExtensions may introduce a lot of compiler warnings as array.size() (of type size_t) is passed to a function with a parameter of type GLsizei.
2018-03-25 19:04:10 +02:00
OpenSceneGraph git repository
097d3ab4ed
Merge pull request #502 from Haojia521/OutputStreamUseTargertSoVersion
write binary file with a specific so version
2018-03-23 20:08:37 +00:00
Robert Osfield
deef029823 Fixed member variable names to avoid conflicts with osg::Node 2018-03-23 20:07:08 +00:00
OpenSceneGraph git repository
4c3141b62e
Fixed indentation 2018-03-23 17:00:00 +00:00
Haojia Yu
415a747049 Revert "Revert "write binary file with a specific so version""
This reverts commit 0ae6f7fea6.
2018-03-23 22:49:47 +08:00
Haojia Yu
0ae6f7fea6 Revert "write binary file with a specific so version"
This reverts commit b5bf8864b1.
2018-03-23 22:48:11 +08:00
Haojia Yu
b5bf8864b1 write binary file with a specific so version
when write binary file, like osgb file, users can set plugin string data, such as "TargetFileVersion=80", to options object, then the features of output file will be limitted to so version 80.
2018-03-23 22:31:12 +08:00
Robert Osfield
76c584ab25 Added osg::UnfiromBase* StateSet::getUniformBase(..) and osg::Uniform* StateSet::getUniform(..) methods to help with backwards compatibility 2018-03-19 12:08:28 +00:00
Robert Osfield
3585ecc28c Merge branch 'master' into shader_pipeline 2018-03-14 09:20:08 +00:00
Robert Osfield
4447190dd6 Refactored osgUtil::ShaderGen to use #pragma(tic) shader composition. 2018-03-14 08:22:45 +00:00
Robert Osfield
98a7772fa7 Merge branch 'master' into shader_pipeline 2018-03-06 10:24:26 +00:00
Robert Osfield
64341cfb72 Added State::glDrawBuffer/glReadBuffer() method to implement lazy state updating for glDrawBuffer and glReadBuffer 2018-03-06 09:49:02 +00:00
Daniel Emminizer
28544a4e29 Minor typo fix on osg::StateAttribute 2018-03-05 10:26:54 -05:00
Robert Osfield
1b8567e11e Added deprecated comments for ShaderComposer 2018-03-05 14:39:07 +00:00
Robert Osfield
1ae954f5c3 Merge branch 'master' into shader_pipeline 2018-02-28 09:11:29 +00:00
Robert Osfield
99bcd95756 Replaced GL_TEXTURE_2D_ARRAY_EXT with GL_TEXTURE_2D_ARRAY 2018-02-28 08:50:48 +00:00
Robert Osfield
351e8e3fe1 Merge branch 'master' into shader_pipeline 2018-02-19 11:23:29 +00:00
OpenSceneGraph git repository
56baa7bf04
Merge pull request #479 from LaurensVoerman/submit_vc14WarnC4800_v2
move Get/SetScalarvalue out of ValueObject and provide specialization…
2018-02-19 10:14:36 +00:00