diff options
author | chai <chaifix@163.com> | 2019-08-14 22:50:43 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2019-08-14 22:50:43 +0800 |
commit | 15740faf9fe9fe4be08965098bbf2947e096aeeb (patch) | |
tree | a730ec236656cc8cab5b13f088adfaed6bb218fb /Runtime/Camera/CameraCullingParameters.h |
Diffstat (limited to 'Runtime/Camera/CameraCullingParameters.h')
-rw-r--r-- | Runtime/Camera/CameraCullingParameters.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/Runtime/Camera/CameraCullingParameters.h b/Runtime/Camera/CameraCullingParameters.h new file mode 100644 index 0000000..5936432 --- /dev/null +++ b/Runtime/Camera/CameraCullingParameters.h @@ -0,0 +1,36 @@ +#pragma once + +#include "ShaderReplaceData.h" +#include "Runtime/Utilities/EnumFlags.h" +#include "UnityPrefix.h" +#include "Camera.h" +#include "External/shaderlab/Library/shaderlab.h" + + +namespace Umbra { class DebugRenderer; } + +enum CullFlag +{ + kCullFlagForceEvenIfCameraIsNotActive = 1 << 0, + kCullFlagOcclusionCull = 1 << 1, + kCullFlagNeedsLighting = 1 << 2, +}; + +struct CameraCullingParameters +{ + Camera* cullingCamera; + ShaderReplaceData explicitShaderReplace; + CullFlag cullFlag; + Umbra::DebugRenderer* umbraDebugRenderer; + UInt32 umbraDebugFlags; + + CameraCullingParameters (Camera& cam, CullFlag flag) + { + cullingCamera = &cam; + cullFlag = flag; + umbraDebugRenderer = NULL; + umbraDebugFlags = 0; + } +}; + +ENUM_FLAGS(CullFlag); |