opynsim
Unofficial C++ Documentation
Loading...
Searching...
No Matches
liboscar
graphics
scene
scene_decoration_flags.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <
liboscar/utilities/flags.h
>
4
5
namespace
osc
6
{
7
// a flag associated with a `SceneDecoration`
8
enum class
SceneDecorationFlag
:
unsigned
{
9
None
= 0,
10
NoCastsShadows
= 1<<0,
// the decoration should not cast shadows
11
NoDrawInScene
= 1<<1,
// the decoration should not be drawn in the scene (it still can cast shadows, show its wireframe, etc.)
12
RimHighlight0
= 1<<2,
// the decoration should be highlighted with a colored rim (group #0)
13
RimHighlight1
= 1<<3,
// the decoration should be highlighted with a colored rim (group #1)
14
DrawWireframeOverlay
= 1<<4,
// the decoration's wireframe should additionally be drawn in the scene
15
16
// The decoration should not contribute to the scene's functional volume.
17
//
18
// This is useful when a graphics backend emits `SceneDecoration`s that need
19
// to be visible to the user, but shouldn't be used to (e.g.) figure out how
20
// big the scene is in order to auto-focus a camera or similar (opensim-creator#1071).
21
NoSceneVolumeContribution
= 1<<5,
22
23
CanBackfaceCull
= 1<<6,
// the decoration can be backface-culled (e.g. because it's using a "trusted" mesh)
24
25
// helpful combinations
26
Default
=
None
,
27
WireframeOverlayedDefault
=
Default
|
DrawWireframeOverlay
,
28
AnnotationElement
=
NoCastsShadows
|
NoSceneVolumeContribution
,
29
OnlyWireframe
=
NoDrawInScene
|
DrawWireframeOverlay
,
30
Hidden
=
NoCastsShadows
|
NoDrawInScene
,
31
AllRimHighlightGroups
=
RimHighlight0
|
RimHighlight1
,
32
};
33
34
// a set of flags associated with a `SceneDecoration`
35
using
SceneDecorationFlags
=
Flags<SceneDecorationFlag>
;
36
}
osc::Flags< SceneDecorationFlag >
flags.h
osc
Definition
custom_decoration_generator.h:5
osc::SceneDecorationFlag
SceneDecorationFlag
Definition
scene_decoration_flags.h:8
osc::SceneDecorationFlag::RimHighlight1
@ RimHighlight1
osc::SceneDecorationFlag::NoSceneVolumeContribution
@ NoSceneVolumeContribution
osc::SceneDecorationFlag::RimHighlight0
@ RimHighlight0
osc::SceneDecorationFlag::Hidden
@ Hidden
osc::SceneDecorationFlag::NoDrawInScene
@ NoDrawInScene
osc::SceneDecorationFlag::DrawWireframeOverlay
@ DrawWireframeOverlay
osc::SceneDecorationFlag::AnnotationElement
@ AnnotationElement
osc::SceneDecorationFlag::AllRimHighlightGroups
@ AllRimHighlightGroups
osc::SceneDecorationFlag::OnlyWireframe
@ OnlyWireframe
osc::SceneDecorationFlag::CanBackfaceCull
@ CanBackfaceCull
osc::SceneDecorationFlag::NoCastsShadows
@ NoCastsShadows
osc::SceneDecorationFlag::WireframeOverlayedDefault
@ WireframeOverlayedDefault
osc::ImageLoadingFlag::None
@ None
osc::OBJWriterFlag::Default
@ Default
Generated by
1.9.8