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
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
41f7efbab6
Imoroved backwards compatibility with 3.6
2018-05-14 10:47:50 +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
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
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
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
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
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
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
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
Robert Osfield
deef029823
Fixed member variable names to avoid conflicts with osg::Node
2018-03-23 20:07:08 +00: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
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