summaryrefslogtreecommitdiff
path: root/src/tile.h
diff options
context:
space:
mode:
authorRealBadAngel <mk@realbadangel.pl>2013-12-03 17:21:40 +0100
committerPilzAdam <pilzadam@minetest.net>2013-12-03 18:55:25 +0100
commit2330267d2207208799ad347ea0d129c0b4551d61 (patch)
treea4418b0c9fe42ee7944f0531c76f353069735615 /src/tile.h
parent60113bde74784f4a0125ffa005e9404fbd5cb5b1 (diff)
downloadminetest-2330267d2207208799ad347ea0d129c0b4551d61.tar.gz
minetest-2330267d2207208799ad347ea0d129c0b4551d61.tar.bz2
minetest-2330267d2207208799ad347ea0d129c0b4551d61.zip
Shaders rework.
Diffstat (limited to 'src/tile.h')
-rw-r--r--src/tile.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/tile.h b/src/tile.h
index 90e180a48..b748c092e 100644
--- a/src/tile.h
+++ b/src/tile.h
@@ -136,6 +136,8 @@ enum MaterialType{
TILE_MATERIAL_ALPHA,
TILE_MATERIAL_LIQUID_TRANSPARENT,
TILE_MATERIAL_LIQUID_OPAQUE,
+ TILE_MATERIAL_LEAVES,
+ TILE_MATERIAL_PLANTS
};
// Material flags
@@ -204,13 +206,21 @@ struct TileSpec
case TILE_MATERIAL_LIQUID_OPAQUE:
material.MaterialType = video::EMT_SOLID;
break;
+ case TILE_MATERIAL_LEAVES:
+ material.MaterialType = video::EMT_TRANSPARENT_ALPHA_CHANNEL_REF;
+ break;
+ case TILE_MATERIAL_PLANTS:
+ material.MaterialType = video::EMT_TRANSPARENT_ALPHA_CHANNEL_REF;
+ break;
}
material.BackfaceCulling = (material_flags & MATERIAL_FLAG_BACKFACE_CULLING) ? true : false;
}
void applyMaterialOptionsWithShaders(video::SMaterial &material,
const video::E_MATERIAL_TYPE &basic,
const video::E_MATERIAL_TYPE &liquid,
- const video::E_MATERIAL_TYPE &alpha) const
+ const video::E_MATERIAL_TYPE &alpha,
+ const video::E_MATERIAL_TYPE &leaves,
+ const video::E_MATERIAL_TYPE &plants) const
{
switch(material_type){
case TILE_MATERIAL_BASIC:
@@ -225,6 +235,12 @@ struct TileSpec
case TILE_MATERIAL_LIQUID_OPAQUE:
material.MaterialType = liquid;
break;
+ case TILE_MATERIAL_LEAVES:
+ material.MaterialType = leaves;
+ break;
+ case TILE_MATERIAL_PLANTS:
+ material.MaterialType = plants;
+ break;
}
material.BackfaceCulling = (material_flags & MATERIAL_FLAG_BACKFACE_CULLING) ? true : false;
}