23#include <IMeshManipulator.h>
36 lightDay(core::clamp(core::round32(valueA), 0, 255)),
37 lightNight(core::clamp(core::round32(valueB), 0, 255)) {}
65 scene::IMeshManipulator *mm);
101 u8 reset_flags = 0,
bool special =
false);
108 float vertical_tiling = 1.0);
111 template <
typename Fn>
167 bool offset_top_only =
false);
172 float offset_h,
float offset_v = 0.0);
static v2f dir(const v2f &pos_dist)
Definition camera.cpp:205
Definition content_mapblock.h:62
void drawRaillikeNode()
Definition content_mapblock.cpp:1463
scene::IMeshManipulator *const meshmanip
Definition content_mapblock.h:74
void drawTorchlikeNode()
Definition content_mapblock.cpp:1006
void useTile(int index=0, u8 set_flags=MATERIAL_FLAG_CRACK_OVERLAY, u8 reset_flags=0, bool special=false)
Definition content_mapblock.cpp:88
void drawPlantlike(bool is_rooted=false)
Definition content_mapblock.cpp:1160
RaillikeData cur_rail
Definition content_mapblock.h:152
void errorUnknownDrawtype()
Definition content_mapblock.cpp:1707
void drawSignlikeNode()
Definition content_mapblock.cpp:1067
void getTile(int index, TileSpec *tile)
Definition content_mapblock.cpp:104
void generateCuboidTextureCoords(aabb3f const &box, f32 *coords)
Definition content_mapblock.cpp:318
const NodeDefManager *const nodedef
Definition content_mapblock.h:73
PlantlikeData cur_plant
Definition content_mapblock.h:164
void calculateCornerLevels()
Definition content_mapblock.cpp:615
LightPair light
Definition content_mapblock.h:87
void drawLiquidSides()
Definition content_mapblock.cpp:677
video::SColor blendLightColor(const v3f &vertex_pos)
Definition content_mapblock.cpp:301
u8 getNodeBoxMask(aabb3f box, u8 solid_neighbors, u8 sametype_neighbors) const
Definition content_mapblock.cpp:501
const bool enable_mesh_cache
Definition content_mapblock.h:79
void drawLiquidBottom()
Definition content_mapblock.cpp:787
MapblockMeshGenerator(MeshMakeData *input, MeshCollector *output, scene::IMeshManipulator *mm)
Definition content_mapblock.cpp:76
f32 scale
Definition content_mapblock.h:91
void drawNodeboxNode()
Definition content_mapblock.cpp:1528
MapNode n
Definition content_mapblock.h:85
const v3s16 blockpos_nodes
Definition content_mapblock.h:76
void drawLiquidNode()
Definition content_mapblock.cpp:805
void drawAutoLightedCuboid(aabb3f box, f32 const *txc=nullptr, TileSpec *tiles=nullptr, int tile_count=0, u8 mask=0)
Definition content_mapblock.cpp:343
v3s16 p
Definition content_mapblock.h:83
struct MapblockMeshGenerator::@16 cur_node
void getLiquidNeighborhood()
Definition content_mapblock.cpp:575
video::SColor color
Definition content_mapblock.h:89
LightInfo blendLight(const v3f &vertex_pos)
Definition content_mapblock.cpp:274
void generate()
Definition content_mapblock.cpp:1748
f32 getCornerLevel(int i, int k) const
Definition content_mapblock.cpp:622
bool isSameRail(v3s16 dir)
Definition content_mapblock.cpp:1412
TileSpec tile
Definition content_mapblock.h:90
void drawFencelikeNode()
Definition content_mapblock.cpp:1335
void drawPlantlikeQuad(float rotation, float quad_offset=0, bool offset_top_only=false)
Definition content_mapblock.cpp:1104
void drawQuad(v3f *vertices, const v3s16 &normal=v3s16(0, 0, 0), float vertical_tiling=1.0)
Definition content_mapblock.cpp:134
MeshMakeData *const data
Definition content_mapblock.h:70
void drawMeshNode()
Definition content_mapblock.cpp:1636
static const std::string raillike_groupname
Definition content_mapblock.h:148
void getSpecialTile(int index, TileSpec *tile, bool apply_crack=false)
Definition content_mapblock.cpp:116
LightFrame frame
Definition content_mapblock.h:88
void drawCuboid(const aabb3f &box, TileSpec *tiles, int tilecount, const f32 *txc, u8 mask, Fn &&face_lighter)
Definition content_mapblock.cpp:237
LiquidData cur_liquid
Definition content_mapblock.h:136
void getSmoothLightFrame()
Definition content_mapblock.cpp:255
void drawFirelikeQuad(float rotation, float opening_angle, float offset_h, float offset_v=0.0)
Definition content_mapblock.cpp:1268
void drawFirelikeNode()
Definition content_mapblock.cpp:1288
void renderSingle(content_t node, u8 param2=0x00)
Definition content_mapblock.cpp:1759
void drawSolidNode()
Definition content_mapblock.cpp:409
v3f origin
Definition content_mapblock.h:84
void drawLiquidTop()
Definition content_mapblock.cpp:724
void drawGlasslikeFramedNode()
Definition content_mapblock.cpp:857
void prepareLiquidNodeDrawing()
Definition content_mapblock.cpp:538
MeshCollector *const collector
Definition content_mapblock.h:71
void drawPlantlikeNode()
Definition content_mapblock.cpp:1246
void drawNode()
Definition content_mapblock.cpp:1713
void drawGlasslikeNode()
Definition content_mapblock.cpp:817
void drawAllfacesNode()
Definition content_mapblock.cpp:999
void drawPlantlikeRootedNode()
Definition content_mapblock.cpp:1252
const ContentFeatures * f
Definition content_mapblock.h:86
This class is for getting the actual properties of nodes from their content ID.
Definition nodedef.h:556
core::aabbox3d< f32 > aabb3f
Definition irr_aabb3d.h:26
core::vector3d< s16 > v3s16
Definition irr_v3d.h:28
core::vector3df v3f
Definition irr_v3d.h:26
u16 content_t
Definition mapnode.h:37
PlantlikeStyle
Definition nodedef.h:250
Definition content_mapblock.h:55
f32 lightsDay[8]
Definition content_mapblock.h:56
bool sunlight[8]
Definition content_mapblock.h:58
f32 lightsNight[8]
Definition content_mapblock.h:57
Definition content_mapblock.h:41
LightPair getPair(float sunlight_boost=0.0) const
Definition content_mapblock.h:46
float light_day
Definition content_mapblock.h:42
float light_boosted
Definition content_mapblock.h:44
float light_night
Definition content_mapblock.h:43
Definition content_mapblock.h:28
LightPair(u8 valueA, u8 valueB)
Definition content_mapblock.h:34
LightPair(float valueA, float valueB)
Definition content_mapblock.h:35
LightPair(u16 value)
Definition content_mapblock.h:33
u8 lightDay
Definition content_mapblock.h:29
u8 lightNight
Definition content_mapblock.h:30
Definition content_mapblock.h:119
f32 level
Definition content_mapblock.h:120
bool top_is_same_liquid
Definition content_mapblock.h:123
bool is_same_liquid
Definition content_mapblock.h:122
content_t content
Definition content_mapblock.h:121
Definition content_mapblock.h:118
video::SColor color_top
Definition content_mapblock.h:132
TileSpec tile_top
Definition content_mapblock.h:129
content_t c_flowing
Definition content_mapblock.h:130
TileSpec tile
Definition content_mapblock.h:128
NeighborData neighbors[3][3]
Definition content_mapblock.h:133
f32 corner_levels[2][2]
Definition content_mapblock.h:134
bool draw_bottom
Definition content_mapblock.h:127
bool top_is_same_liquid
Definition content_mapblock.h:126
content_t c_source
Definition content_mapblock.h:131
Definition content_mapblock.h:156
PlantlikeStyle draw_style
Definition content_mapblock.h:157
float rotate_degree
Definition content_mapblock.h:159
int face_num
Definition content_mapblock.h:161
bool random_offset_Y
Definition content_mapblock.h:160
float plant_height
Definition content_mapblock.h:162
v3f offset
Definition content_mapblock.h:158
Definition content_mapblock.h:149
int raillike_group
Definition content_mapblock.h:150
Definition collector.h:39
Definition mapblock_mesh.h:44
#define MATERIAL_FLAG_CRACK_OVERLAY
Definition tile.h:49