forked from Mirrorlandia_minetest/minetest
Fix broken plantlike drawtype.
This commit is contained in:
parent
37d3c3d328
commit
0920f55eb4
@ -394,7 +394,8 @@ private:
|
|||||||
void addNameIdMapping(content_t i, std::string name);
|
void addNameIdMapping(content_t i, std::string name);
|
||||||
#ifndef SERVER
|
#ifndef SERVER
|
||||||
void fillTileAttribs(ITextureSource *tsrc, TileSpec *tile, TileDef *tiledef,
|
void fillTileAttribs(ITextureSource *tsrc, TileSpec *tile, TileDef *tiledef,
|
||||||
u32 shader_id, bool use_normal_texture, u8 alpha, u8 material_type);
|
u32 shader_id, bool use_normal_texture, u8 alpha, u8 material_type,
|
||||||
|
bool backface_culling);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Features indexed by id
|
// Features indexed by id
|
||||||
@ -800,13 +801,13 @@ void CNodeDefManager::updateTextures(ITextureSource *tsrc, IShaderSource *shdsrc
|
|||||||
// Tiles (fill in f->tiles[])
|
// Tiles (fill in f->tiles[])
|
||||||
for (u16 j = 0; j < 6; j++) {
|
for (u16 j = 0; j < 6; j++) {
|
||||||
fillTileAttribs(tsrc, &f->tiles[j], &tiledef[j], tile_shader[j],
|
fillTileAttribs(tsrc, &f->tiles[j], &tiledef[j], tile_shader[j],
|
||||||
use_normal_texture, f->alpha, material_type);
|
use_normal_texture, f->alpha, material_type, f->backface_culling);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Special tiles (fill in f->special_tiles[])
|
// Special tiles (fill in f->special_tiles[])
|
||||||
for (u16 j = 0; j < CF_SPECIAL_COUNT; j++) {
|
for (u16 j = 0; j < CF_SPECIAL_COUNT; j++) {
|
||||||
fillTileAttribs(tsrc, &f->special_tiles[j], &f->tiledef_special[j],
|
fillTileAttribs(tsrc, &f->special_tiles[j], &f->tiledef_special[j],
|
||||||
tile_shader[j], use_normal_texture, f->alpha, material_type);
|
tile_shader[j], use_normal_texture, f->alpha, material_type, f->backface_culling);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -816,7 +817,7 @@ void CNodeDefManager::updateTextures(ITextureSource *tsrc, IShaderSource *shdsrc
|
|||||||
#ifndef SERVER
|
#ifndef SERVER
|
||||||
void CNodeDefManager::fillTileAttribs(ITextureSource *tsrc, TileSpec *tile,
|
void CNodeDefManager::fillTileAttribs(ITextureSource *tsrc, TileSpec *tile,
|
||||||
TileDef *tiledef, u32 shader_id, bool use_normal_texture,
|
TileDef *tiledef, u32 shader_id, bool use_normal_texture,
|
||||||
u8 alpha, u8 material_type)
|
u8 alpha, u8 material_type, bool backface_culling)
|
||||||
{
|
{
|
||||||
tile->shader_id = shader_id;
|
tile->shader_id = shader_id;
|
||||||
tile->texture = tsrc->getTexture(tiledef->name, &tile->texture_id);
|
tile->texture = tsrc->getTexture(tiledef->name, &tile->texture_id);
|
||||||
@ -829,7 +830,7 @@ void CNodeDefManager::fillTileAttribs(ITextureSource *tsrc, TileSpec *tile,
|
|||||||
|
|
||||||
// Material flags
|
// Material flags
|
||||||
tile->material_flags = 0;
|
tile->material_flags = 0;
|
||||||
if (tiledef->backface_culling)
|
if (backface_culling)
|
||||||
tile->material_flags |= MATERIAL_FLAG_BACKFACE_CULLING;
|
tile->material_flags |= MATERIAL_FLAG_BACKFACE_CULLING;
|
||||||
if (tiledef->animation.type == TAT_VERTICAL_FRAMES)
|
if (tiledef->animation.type == TAT_VERTICAL_FRAMES)
|
||||||
tile->material_flags |= MATERIAL_FLAG_ANIMATION_VERTICAL_FRAMES;
|
tile->material_flags |= MATERIAL_FLAG_ANIMATION_VERTICAL_FRAMES;
|
||||||
|
Loading…
Reference in New Issue
Block a user