Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Gepetto
OpenSceneGraph
Commits
3fc3dcbb
Commit
3fc3dcbb
authored
May 26, 2020
by
Daniel Trstenjak
Browse files
OcclusionQueryNode: don't override existing callbacks in camera
parent
048ece35
Changes
1
Hide whitespace changes
Inline
Side-by-side
src/osg/OcclusionQueryNode.cpp
View file @
3fc3dcbb
...
...
@@ -320,15 +320,20 @@ QueryGeometry::drawImplementation( osg::RenderInfo& renderInfo ) const
osg
::
Camera
*
cam
=
renderInfo
.
getCurrentCamera
();
// Add callbacks if necessary.
if
(
!
cam
->
getPostDrawCallback
()
)
RetrieveQueriesCallback
*
rqcb
=
cam
->
findPostDrawCallback
<
RetrieveQueriesCallback
>
();
if
(
!
rqcb
)
{
RetrieveQueriesCallback
*
rqcb
=
new
RetrieveQueriesCallback
(
ext
);
cam
->
setPostDrawCallback
(
rqcb
);
rqcb
=
new
RetrieveQueriesCallback
(
ext
);
cam
->
addPostDrawCallback
(
rqcb
);
ClearQueriesCallback
*
cqcb
=
cam
->
findPreDrawCallback
<
ClearQueriesCallback
>
();
if
(
!
cqcb
)
{
cqcb
=
new
ClearQueriesCallback
;
cam
->
addPreDrawCallback
(
cqcb
);
}
ClearQueriesCallback
*
cqcb
=
new
ClearQueriesCallback
;
cqcb
->
_rqcb
=
rqcb
;
cam
->
setPreDrawCallback
(
cqcb
);
}
// Get TestResult from Camera map
...
...
@@ -343,7 +348,6 @@ QueryGeometry::drawImplementation( osg::RenderInfo& renderInfo ) const
}
}
// Issue query
if
(
!
tr
->
_init
)
{
...
...
@@ -358,9 +362,6 @@ QueryGeometry::drawImplementation( osg::RenderInfo& renderInfo ) const
return
;
}
// Add TestResult to RQCB.
RetrieveQueriesCallback
*
rqcb
=
dynamic_cast
<
RetrieveQueriesCallback
*
>
(
cam
->
getPostDrawCallback
()
);
if
(
!
rqcb
)
{
OSG_FATAL
<<
"osgOQ: QG: Invalid RQCB."
<<
std
::
endl
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment