Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
ChunkBlenderFactory.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/DefaultSmallOptionalTraits.h"
7#include "mc/deps/core/utility/SmallOptional.h"
8#include "mc/world/level/ChunkPos.h"
9#include "mc/world/level/biome/BiomeIdType.h"
10
11// auto generated forward declare list
12// clang-format off
13class ChunkBlender;
14class ChunkSource;
15// clang-format on
16
18public:
19 // ChunkBlenderFactory inner types declare
20 // clang-format off
21 struct BlendCheckEntry;
23 // clang-format on
24
25 // ChunkBlenderFactory inner types define
27 public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<8, 8, ::ChunkPos> checkPosition;
31 ::ll::TypedStorage<1, 1, bool> adjacentChunk;
32 // NOLINTEND
33 };
34
36 public:
37 // member variables
38 // NOLINTBEGIN
39 ::ll::TypedStorage<4, 4, float> mDistanceToBlendTarget;
40 ::ll::TypedStorage<4, 4, float> mWeightedHeight;
41 ::ll::TypedStorage<4, 4, float> mTotalHeightWeight;
42 ::ll::TypedStorage<4, 4, float> mTotalDensityWeight;
43 ::ll::TypedStorage<
44 4,
45 164,
46 ::std::array<::Bedrock::SmallOptional<float, ::Bedrock::DefaultSmallOptionalTraits<float>>, 41>>
47 mWeightedDensities;
48 ::ll::TypedStorage<
49 1,
50 41,
51 ::std::array<::Bedrock::SmallOptional<schar, ::Bedrock::DefaultSmallOptionalTraits<schar>>, 41>>
52 mBlockTypeWeights;
53 ::ll::TypedStorage<
54 2,
55 192,
56 ::std::array<
58 96>>
59 mBiome;
60 ::ll::TypedStorage<1, 1, bool> mHaveBlockTypes;
61 ::ll::TypedStorage<1, 1, bool> mSyncPoint;
62 // NOLINTEND
63 };
64
65 using ChunkIntermediateAttenuationData =
66 ::std::vector<::std::array<::ChunkBlenderFactory::IntermediateAttenuationData, 4>>;
67
68public:
69 // member variables
70 // NOLINTBEGIN
71 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ChunkPos, ::std::shared_ptr<::ChunkBlender>>> mAttenuatorCache;
72 ::ll::TypedStorage<8, 8, ::std::shared_mutex> mAttenuatorSharedMutex;
73 ::ll::TypedStorage<1, 1, bool const> mIsClientSide;
74 ::ll::TypedStorage<8, 8, ::ChunkSource*> mChunkSource;
75 ::ll::TypedStorage<2, 2, short const> mDimensionMinHeight;
76 // NOLINTEND
77
78public:
79 // member functions
80 // NOLINTBEGIN
81 MCNAPI ::std::shared_ptr<::ChunkBlender> getOrCreateChunkBlender(::ChunkPos const& lcPosition);
82 // NOLINTEND
83};
Definition SmallOptional.h:8
Definition ChunkBlenderFactory.h:17
MCAPI ::std::shared_ptr<::ChunkBlender > getOrCreateChunkBlender(::ChunkPos const &lcPosition)
Definition ChunkBlender.h:19
Definition ChunkPos.h:13
Definition ChunkSource.h:37
Definition ChunkBlenderFactory.h:26
Definition ChunkBlenderFactory.h:35