42 ::ll::TypedStorage<4, 4, uint> mWidth;
43 ::ll::TypedStorage<4, 4, uint> mDepth;
44 ::ll::TypedStorage<4, 4, uint> mHeight;
51 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::StructureFeatureRegistry>> mStructureFeatureRegistry;
52 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mCreateStructuresAndVisitedPositionsMutex;
53 ::ll::TypedStorage<8, 72, ::std::condition_variable> mStructureInstanceWaitVar;
54 ::ll::TypedStorage<4, 4, ::std::atomic<int>> mActiveStructureInstanceCreateCount;
55 ::ll::TypedStorage<8, 64, ::std::unordered_set<::ChunkPos>> mVisitedPositions;
69 virtual ::HashedString findStructureFeatureTypeAt(
::BlockPos const& pos);
75 virtual bool findNearestStructureFeature(
79 bool mustBeInNewChunks,
80 ::std::optional<::HashedString> biomeTag
93 virtual ::BiomeArea getBiomeArea(
::BoundingBox const&, uint)
const = 0;
96 virtual ::BiomeSource
const& getBiomeSource()
const = 0;
99 virtual ::WorldGenerator::BlockVolumeDimensions getBlockVolumeDimensions()
const = 0;
102 virtual ::BlockPos findSpawnPosition()
const = 0;
109 postProcessMobsAt(
::BlockSource& region,
int chunkWestBlock,
int chunkNorthBlock,
::Random& random) ;
115 virtual ::std::optional<short> getPreliminarySurfaceLevel(
::DividedPos2d<4>)
const ;
118 virtual void debugRender();
121 virtual void decorateWorldGenLoadChunk(
139 MCAPI ::std::vector<short> computeChunkHeightMap(
::ChunkPos const& pos);
141 MCAPI
void postProcessStructureFeatures(
::BlockSource& region,
::Random& random,
int chunkX,
int chunkZ);
147 MCAPI
void prepareStructureFeatureBlueprints(
154 MCAPI
void waitForStructures();
160 MCAPI
static uint64
const& TICKING_QUEUE_PASS_LIMIT();
166 MCAPI
void* $ctor(
::Dimension& dimension, ::std::unique_ptr<::StructureFeatureRegistry> structureFeatureRegistry);
178 MCAPI ::HashedString $findStructureFeatureTypeAt(
::BlockPos const& pos);
182 MCAPI
bool $findNearestStructureFeature(
186 bool mustBeInNewChunks,
187 ::std::optional<::HashedString> biomeTag
194 MCAPI
void $postProcessMobsAt(
::BlockSource& region,
int chunkWestBlock,
int chunkNorthBlock,
::Random& random);
198 MCAPI ::std::optional<short> $getPreliminarySurfaceLevel(
::DividedPos2d<4>)
const;
200 MCFOLD
void $debugRender();