mirror of
https://github.com/Facepunch/sbox-public.git
synced 2026-01-09 06:48:34 -05:00
This commit imports the C# engine code and game files, excluding C++ source code. [Source-Commit: ceb3d758046e50faa6258bc3b658a30c97743268]
73 lines
3.1 KiB
C#
73 lines
3.1 KiB
C#
namespace Sandbox.Rendering;
|
|
|
|
[Flags]
|
|
internal enum SceneObjectFlags : ulong
|
|
{
|
|
None = 0,
|
|
IsOpaque = 0x0000000000000001,
|
|
IsTranslucent = 0x0000000000000002,
|
|
IsLight = 0x0000000000000004,
|
|
IsSunLight = 0x0000000000000008,
|
|
IsLightVolume = 0x0000000000000010,
|
|
IsDecal = 0x0000000000000020,
|
|
IsDynamicDecals = 0x0000000000000040,
|
|
IsEnvMap = 0x0000000000000080,
|
|
IsDirectLight = 0x0000000000000100,
|
|
IsIndirectLight = 0x0000000000000200,
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Rendering order: Logical layers we organize a scene into
|
|
//------------------------------------------------------------------------------
|
|
ViewModelLayer = 0x0000000000001000, // Render only in viewmodel pass
|
|
Skybox3DLayer = 0x0000000000002000,
|
|
DisabledInLowQuality = 0x0000000000004000,
|
|
IsHammerGeometry = 0x0000000000008000,
|
|
EffectsBloomLayer = 0x0000000000010000,
|
|
GameOverlayLayer = 0x0000000000020000,
|
|
ExcludeGameLayer = 0x0000000000040000,
|
|
UIOverlayLayer = 0x0000000000080000,
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Hammer- / Tools-specific rendering order
|
|
//------------------------------------------------------------------------------
|
|
ToolsUnlitLayer = 0x0000000000100000,
|
|
ToolSceneOverlayLayer = 0x0000000000200000,
|
|
HammerPrefabStencilLayer = 0x0000000000400000,
|
|
HammerSelectionStencilLayer = 0x0000000000800000,
|
|
HammerEnabledStencilLayer = 0x0000000001000000,
|
|
|
|
//------------------------------------------------------------------------------
|
|
// Rendering properties of a scene object
|
|
//------------------------------------------------------------------------------
|
|
HasAOProxies = 0x0000000010000000,
|
|
AlphaTestZPrepass = 0x0000000020000000,
|
|
AddsDependentView = 0x0000000040000000, // Adds a dependent view, doesn't render itself (also safe to draw multiple times). Hint to kick this work off early
|
|
NeedsDynamicReflectionMap = 0x0000000080000000, // Meshes with this flag set will cause a dynamic reflection to launch and have it bound into the context
|
|
Reflects = 0x0000000100000000,
|
|
CastShadowsEnabled = 0x0000000200000000,
|
|
DoesNotAcceptDecals = 0x0000000400000000,
|
|
WantsFrameBufferCopyTexture = 0x0000000800000000,
|
|
IssuesQueries = 0x0000001000000000,
|
|
StaticObject = 0x0000002000000000, // Static, permanent part of the "world"
|
|
EnvironmentMapped = 0x0000004000000000,
|
|
MaterialSupportsShadows = 0x0000008000000000, // The material supports casting shadows, but the object will only cast shadows if MATERIAL_SUPPORTS_SHADOWS and CAST_SHADOWS_ENABLED are set
|
|
NoZPrepass = 0x0000010000000000, // Opt out of z-prepass
|
|
ForwardLayerOnly = 0x0000020000000000, // Render only in a forward layer
|
|
NoOcclusionCulling = 0x0000040000000000, // Don't occlusion cull this scene object
|
|
NoPVSCulling = 0x0000080000000000, // Don't pvs cull this scene object
|
|
|
|
CastShadows = MaterialSupportsShadows | CastShadowsEnabled,
|
|
|
|
/// <summary>
|
|
/// Not rendered in cubemaps
|
|
/// </summary>
|
|
HideInCubemaps = 1LU << 52,
|
|
ExecuteBefore = 1LU << 57,
|
|
ExecuteAfter = 1LU << 58,
|
|
|
|
NeedsLightProbe = 0x0000400000000000,
|
|
|
|
|
|
IsLoaded = 0x2000000000000000
|
|
}
|