Commit Graph

2509 Commits

Author SHA1 Message Date
Robert Osfield
eb09720c1f
Merge pull request #1025 from glebm/fix-travis
include/osg/Callback: nullptr -> NULL
2021-01-18 14:15:51 +00:00
valid-ptr
1b9c6e524c Wrong argument name rename: uniformMap -> defineMap 2021-01-18 13:59:26 +00:00
Gleb Mazovetskiy
f59ab840f1 include/osg/Callback: nullptr -> NULL
Fixes travis, which explictly requires c++98
2021-01-14 00:19:02 +00:00
Robert Osfield
ec79ef6f79
Merge pull request #979 from matthew-reid/supportSrgbTextureFormats
sRGB compressed texture formats are now supported
2020-11-10 16:03:35 +00:00
Robert Osfield
75f77dec64
Merge branch 'master' into build/windows_clang 2020-11-10 14:34:40 +00:00
Robert Osfield
3572199cb8 Moved GLExtensions changes from 3.6 branch into master 2020-11-10 12:50:58 +00:00
Robert Osfield
cc835694e3
Merge pull request #955 from timoore/extension-observer-ptr
Fix GLExtensions static order of deletion bug
2020-11-10 11:14:47 +00:00
Matthew Reid
6d207e2d8d Added support for sRGB texture formats 2020-10-12 15:13:38 +11:00
Robert Osfield
e0d5e4b0ff Fixed warnings reported by gcc-9.3.0 2020-08-26 15:19:23 +01:00
MeyerFabian
07836619b2 Enabled windows clang builds. 2020-07-17 18:01:05 +02:00
Daniel Trstenjak
048ece358a Camera: convenience methods to find nested callback by type 2020-05-26 19:05:34 +02:00
Tim Moore
97f955b2d4 Fix GLExtensions static order of deletion bug
The s_glExtensionSetList could be deleted while pointers to
GLExtension objects were still held e.g., by
VertexArrayStateManager, causing a segfault. This patch uses an
observer pointer to not access already-deleted data.
2020-05-20 18:21:49 +02:00
Robert Osfield
c29e2e4f40 Fixed handling of non Texture texture attributes. 2020-05-03 09:27:20 +01:00
Robert Osfield
3590e4c057 Added missing initializer 2020-04-29 10:04:46 +01:00
Robert Osfield
5940ac3653 Merge branch 'master' of https://github.com/openscenegraph/OpenSceneGraph 2020-01-13 14:23:21 +00:00
Robert Osfield
ccf6554d2d Added Thread::CurrentThreadId() method to wrap up thread id functionality in a more platform appropriate way. 2020-01-13 14:18:17 +00:00
Julien Valentin
ecc887bcbb
Add GL4.4.1 defines 2020-01-12 23:31:04 +01:00
Laurens Voerman
395c2677de add GL_MAP_PERSISTENT_BIT define for outdated gl.h users (like msvc). 2020-01-07 15:15:36 +01:00
OpenSceneGraph git repository
32bb3fd91e
Merge branch 'master' into bufferstorage 2020-01-07 11:21:42 +00:00
Julien Valentin
eaaf83329e Revert "merge _usage and bufferstorage bitfield utilization"
This reverts commit 30e749ae54.
2020-01-03 00:02:08 +01:00
Julien Valentin
3526292de3 typo fix 2019-12-27 02:46:35 +01:00
Julien Valentin
30e749ae54 merge _usage and bufferstorage bitfield utilization 2019-12-26 22:48:11 +01:00
mp3butcher
2c942f4771 persistance mapping proposal 2019-12-26 17:52:48 +01:00
Daniel Trstenjak
79f7727a59 OcclusionQueryNode: fix resetting to default query geometry
When the query geometry gets reset to its default then its
vertices have to be updated by the bounding box dimensions of
the current children of the OcclusionQueryNode.
2019-08-23 09:46:02 +02:00
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
edd0d3e35f Added FrameBufferAttachment::resizeGLObjectBuffers(..) and releaseGLObjects(..) methods 2019-07-12 16:11:45 +01: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
Julien Valentin
91c6b80020 uncomment INLINE_DRAWABLE_DRAW 2019-02-20 16:55:08 +00: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
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
Robert Osfield
32db852c77 Moved resizeGLObjects/releaseGLObjects out of Referenced to avoid multiple inheritance warnings 2019-01-12 11:28:25 +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
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
b94c797ed6 Fixed build 2018-09-11 09:32:15 +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
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
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
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