Gui: Fix rendering order of transorm gizmo

Transform gizmo (dragger) used SoAnnotation which disables GL_DEPTH_TEST
resulting in rendering elements in wrong order. This PR introduces new
coin node: So3DAnnotation that delays rendering and clears depth buffer before
drawing which results in proper order of elements. As this destroys
information in the depth buffer it is crucial to run this action after
the scene is rendered.
This commit is contained in:
Kacper Donat
2024-05-26 22:39:26 +02:00
committed by Chris Hennes
parent 309dd6e30d
commit 10ec35abeb
6 changed files with 158 additions and 1 deletions

View File

@@ -53,6 +53,7 @@
#include "GestureNavigationStyle.h"
#include "NavigationStyle.h"
#include "SelectionObject.h"
#include "So3DAnnotation.h"
#include "SoAxisCrossKit.h"
#include "SoFCBackgroundGradient.h"
#include "SoFCBoundingBox.h"
@@ -141,6 +142,7 @@ void Gui::SoFCDB::init()
SoFCSelectionRoot ::initClass();
SoFCPathAnnotation ::initClass();
SoMouseWheelEvent ::initClass();
So3DAnnotation ::initClass();
PropertyItem ::init();
PropertySeparatorItem ::init();