43 ::ll::TypedStorage<4, 4, uint> mWidth;
44 ::ll::TypedStorage<4, 4, uint> mDepth;
45 ::ll::TypedStorage<4, 4, uint> mHeight;
52 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::StructureFeatureRegistry>> mStructureFeatureRegistry;
53 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mCreateStructuresAndVisitedPositionsMutex;
54 ::ll::TypedStorage<8, 72, ::std::condition_variable> mStructureInstanceWaitVar;
55 ::ll::TypedStorage<4, 4, ::std::atomic<int>> mActiveStructureInstanceCreateCount;
56 ::ll::TypedStorage<8, 64, ::std::unordered_set<::ChunkPos>> mVisitedPositions;
70 virtual ::HashedString findStructureFeatureTypeAt(
::BlockPos const& pos);
76 virtual bool findNearestStructureFeature(
80 bool mustBeInNewChunks,
81 ::std::optional<::HashedString> biomeTag
85 virtual ::StructureFeature* getStructureFeatureOfType(
::HashedString type)
const;
94 virtual ::BiomeArea getBiomeArea(
::BoundingBox const&, uint)
const = 0;
97 virtual ::BiomeSource
const& getBiomeSource()
const = 0;
100 virtual ::WorldGenerator::BlockVolumeDimensions getBlockVolumeDimensions()
const = 0;
103 virtual ::BlockPos findSpawnPosition()
const = 0;
107 postProcessMobsAt(
::BlockSource& region,
int chunkWestBlock,
int chunkNorthBlock,
::Random& random) ;
113 virtual ::std::optional<short> getPreliminarySurfaceLevel(
::DividedPos2d<4>)
const ;
116 virtual void debugRender();
122 virtual void decorateWorldGenLoadChunk(
142 MCAPI ::std::vector<short> computeChunkHeightMap(
::ChunkPos const& pos);
144 MCAPI
void postProcessStructureFeatures(
::BlockSource& region,
::Random& random,
int chunkX,
int chunkZ);
150 MCAPI
void prepareStructureFeatureBlueprints(
157 MCAPI
void waitForStructures();
163 MCAPI
static uint64
const& TICKING_QUEUE_PASS_LIMIT();
169 MCAPI
void* $ctor(
::Dimension& dimension, ::std::unique_ptr<::StructureFeatureRegistry> structureFeatureRegistry);
181 MCAPI ::HashedString $findStructureFeatureTypeAt(
::BlockPos const& pos);
185 MCAPI
bool $findNearestStructureFeature(
189 bool mustBeInNewChunks,
190 ::std::optional<::HashedString> biomeTag
193 MCAPI ::StructureFeature* $getStructureFeatureOfType(
::HashedString type)
const;
197 MCAPI
void $postProcessMobsAt(
::BlockSource& region,
int chunkWestBlock,
int chunkNorthBlock,
::Random& random);
201 MCAPI ::std::optional<short> $getPreliminarySurfaceLevel(
::DividedPos2d<4>)
const;
203 MCFOLD
void $debugRender();