Commit Graph

4861 Commits

Author SHA1 Message Date
OpenSceneGraph git repository
eb980136a0
Merge branch 'master' into fix_custom_query_geometry 2019-08-22 14:17:58 +01:00
Daniel Trstenjak
aff574b3ea OcclusionQueryNode: fix use case of user defined query geometry
The user defined query geometry handling has been broken in several ways.

The previous way of defining a query geometry was using the non const
`getQueryGeometry` method and overriding its members. But then
`OcclusionQueryNode` wasn't aware of the geometry change and couldn't
internally handle it correctly.

The `computeBound` method never considered a user defined query geometry and
always just overrode the vertices of the geometry.

The member `_validQueryGeometry` wasn't correctly set.

This change should fix all this issues by introducing a small backward
compatibility break. The non const `getQueryGeometry` method is removed
forcing the user to use the `setQueryGeometry` method. But then `OcclusionQueryNode`
is aware of the user defined query geometry and can handle it correctly.
2019-08-21 16:44:15 +02:00
Julien Valentin
c50235ba62
remove return of local pointer 2019-08-15 20:21:15 +02:00
Robert Osfield
fd8019c886 Merged TextBase fixed from OpenSceneGraph-3.6 commit 149c04b0df 2019-07-31 14:30:47 +01:00
Robert Osfield
2716c8a32b Change the DefaultFont so that it's managemed via the ObjectCache to enabl it to be release and cleared in a central manner.
Added call to Registry::releaseGLObjects() to osgViewer/Renderer.cpp to enable automatic clean up of objects in the ObjectCache.
2019-07-25 14:18:51 +01:00
Robert Osfield
edd0d3e35f Added FrameBufferAttachment::resizeGLObjectBuffers(..) and releaseGLObjects(..) methods 2019-07-12 16:11:45 +01:00
Laurens Voerman
27b295caa4 fix indentation for osgt files for windows dynamic library build. 2019-06-14 14:33:22 +01:00
OpenSceneGraph git repository
3ba6f3d682
Merge pull request #725 from Capostrophic/dynamiccast
Get rid of some type conversions
2019-03-16 11:33:42 +00:00
Capostrophic
de64d58e06 Override default behavior for linear vector interpolations 2019-03-16 11:31:26 +00:00
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