LeviLamina
Loading...
Searching...
No Matches
PointLightShadowAtlasHysteresis.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/container/small_vector.h"
7
8// auto generated forward declare list
9// clang-format off
10class BlockPos;
11class FrustumCuller;
12namespace PointLighting { class PointLightShadowProbe; }
13namespace PointLighting { struct ProbeBatchEntry; }
14namespace PointLighting { struct TileAction; }
15namespace mce::framebuilder { struct PointLightParameters; }
16// clang-format on
17
18namespace PointLighting {
19
21public:
22 // PointLightShadowAtlasHysteresis inner types define
23 using ProbeMap = ::std::unordered_map<::BlockPos, ::PointLighting::PointLightShadowProbe>;
24
25 using TileActionList = ::Bedrock::small_vector<::PointLighting::TileAction, 96>;
26
27public:
28 // member functions
29 // NOLINTBEGIN
30 MCAPI ::Bedrock::small_vector<::PointLighting::TileAction, 96> evaluate(
31 ::gsl::span<::PointLighting::ProbeBatchEntry const> batch,
32 ::std::unordered_map<::BlockPos, ::PointLighting::PointLightShadowProbe> const& activeProbes,
33 bool atlasPressure,
34 bool atlasFull,
35 ::mce::framebuilder::PointLightParameters const& params,
36 ::FrustumCuller const& frustumCuller,
37 ::glm::vec3 const& cameraForward,
38 ::glm::vec3 const& worldOrigin,
39 uint64 nowMs
40 );
41 // NOLINTEND
42};
43
44} // namespace PointLighting
Definition BlockPos.h:17
Definition FrustumCuller.h:5
Definition PointLightShadowAtlasHysteresis.h:7
Definition PointLightShadowProbe.h:7
Definition ProbeBatchEntry.h:7
Definition TileAction.h:7
Definition PointLightParameters.h:7