LeviLamina
Loading...
Searching...
No Matches
BlockTessellatorCache.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/BrightnessPair.h"
7#include "mc/world/level/BlockPos.h"
8
9// auto generated forward declare list
10// clang-format off
11class Block;
12class BlockGraphics;
13class BlockSource;
14// clang-format on
15
17public:
18 // BlockTessellatorCache inner types declare
19 // clang-format off
20 struct LocalRegistry;
21 // clang-format on
22
23 // BlockTessellatorCache inner types define
24 struct LocalRegistry {
25 public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<8, 8, ::Block const*> mAirBlock;
29 // NOLINTEND
30 };
31
32public:
33 // member variables
34 // NOLINTBEGIN
35 ::ll::TypedStorage<8, 8, ::BlockTessellatorCache::LocalRegistry> mLocalRegistry;
36 ::ll::TypedStorage<4, 12, ::BlockPos> mPos;
37 ::ll::TypedStorage<8, 8, ::BlockSource*> mRegion;
38 ::ll::TypedStorage<1, 16000, ::std::array<::BrightnessPair, 8000>> mLightColors;
39 ::ll::TypedStorage<8, 64000, ::std::array<::Block const*, 8000>> mBlocks;
40 ::ll::TypedStorage<8, 64000, ::std::array<::Block const*, 8000>> mExtraBlocks;
41 ::ll::TypedStorage<8, 128000, ::std::array<::BlockGraphics const*, 8000>[2]> mBlockGraphics;
42 // NOLINTEND
43
44public:
45 // member functions
46 // NOLINTBEGIN
47 MCAPI ::Block const& getBlock(::BlockPos const& p);
48
49 MCAPI ::BlockGraphics const* getBlockGraphics(::BlockPos const& p, ::Block const& block, uint layer);
50
51 MCAPI ::BrightnessPair getLightColor(::BlockPos const& p, ::Block const* blockHint);
52
53 MCAPI ::std::pair<::Block const*, uint> getLiquidBlockAndLayer(::BlockPos const& p);
54
55 MCAPI void reset(::BlockSource* region, ::BlockPos const& startPostion);
56
57 MCAPI void resetToAir(::BlockSource* region, ::BlockPos const& startPostion);
58 // NOLINTEND
59};
Definition BlockGraphics.h:5
Definition BlockSource.h:71
Definition BlockTessellatorCache.h:5
Definition Block.h:43
Definition BlockTessellatorCache.h:13