mirror of
https://github.com/luanti-org/luanti.git
synced 2025-08-01 17:38:41 +00:00
Remove new_style_water
This commit is contained in:
parent
4efb7eb734
commit
8eb7ddb0a2
5 changed files with 17 additions and 41 deletions
|
@ -181,11 +181,6 @@ void mapblock_mesh_generate_special(MeshMakeData *data,
|
|||
Some settings
|
||||
*/
|
||||
bool enable_mesh_cache = g_settings->getBool("enable_mesh_cache");
|
||||
bool new_style_water = g_settings->getBool("new_style_water");
|
||||
|
||||
float node_liquid_level = 1.0;
|
||||
if (new_style_water)
|
||||
node_liquid_level = 0.85;
|
||||
|
||||
v3s16 blockpos_nodes = data->m_blockpos*MAP_BLOCKSIZE;
|
||||
|
||||
|
@ -287,35 +282,29 @@ void mapblock_mesh_generate_special(MeshMakeData *data,
|
|||
If our topside is liquid, set upper border of face
|
||||
at upper border of node
|
||||
*/
|
||||
if(top_is_same_liquid)
|
||||
{
|
||||
vertices[2].Pos.Y = 0.5*BS;
|
||||
vertices[3].Pos.Y = 0.5*BS;
|
||||
}
|
||||
if (top_is_same_liquid) {
|
||||
vertices[2].Pos.Y = 0.5 * BS;
|
||||
vertices[3].Pos.Y = 0.5 * BS;
|
||||
} else {
|
||||
/*
|
||||
Otherwise upper position of face is liquid level
|
||||
*/
|
||||
else
|
||||
{
|
||||
vertices[2].Pos.Y = (node_liquid_level-0.5)*BS;
|
||||
vertices[3].Pos.Y = (node_liquid_level-0.5)*BS;
|
||||
vertices[2].Pos.Y = 0.5 * BS;
|
||||
vertices[3].Pos.Y = 0.5 * BS;
|
||||
}
|
||||
/*
|
||||
If neighbor is liquid, lower border of face is liquid level
|
||||
*/
|
||||
if(neighbor_is_same_liquid)
|
||||
{
|
||||
vertices[0].Pos.Y = (node_liquid_level-0.5)*BS;
|
||||
vertices[1].Pos.Y = (node_liquid_level-0.5)*BS;
|
||||
}
|
||||
if (neighbor_is_same_liquid) {
|
||||
vertices[0].Pos.Y = 0.5 * BS;
|
||||
vertices[1].Pos.Y = 0.5 * BS;
|
||||
} else {
|
||||
/*
|
||||
If neighbor is not liquid, lower border of face is
|
||||
lower border of node
|
||||
*/
|
||||
else
|
||||
{
|
||||
vertices[0].Pos.Y = -0.5*BS;
|
||||
vertices[1].Pos.Y = -0.5*BS;
|
||||
vertices[0].Pos.Y = -0.5 * BS;
|
||||
vertices[1].Pos.Y = -0.5 * BS;
|
||||
}
|
||||
|
||||
for(s32 j=0; j<4; j++)
|
||||
|
@ -358,7 +347,7 @@ void mapblock_mesh_generate_special(MeshMakeData *data,
|
|||
video::S3DVertex(-BS/2,0,-BS/2, 0,0,0, c, 0,0),
|
||||
};
|
||||
|
||||
v3f offset(p.X*BS, p.Y*BS + (-0.5+node_liquid_level)*BS, p.Z*BS);
|
||||
v3f offset(p.X * BS, (p.Y + 0.5) * BS, p.Z * BS);
|
||||
for(s32 i=0; i<4; i++)
|
||||
{
|
||||
vertices[i].Pos += offset;
|
||||
|
@ -431,14 +420,14 @@ void mapblock_mesh_generate_special(MeshMakeData *data,
|
|||
content = n2.getContent();
|
||||
|
||||
if(n2.getContent() == c_source)
|
||||
level = (-0.5+node_liquid_level) * BS;
|
||||
level = 0.5 * BS;
|
||||
else if(n2.getContent() == c_flowing){
|
||||
u8 liquid_level = (n2.param2&LIQUID_LEVEL_MASK);
|
||||
if (liquid_level <= LIQUID_LEVEL_MAX+1-range)
|
||||
liquid_level = 0;
|
||||
else
|
||||
liquid_level -= (LIQUID_LEVEL_MAX+1-range);
|
||||
level = (-0.5 + ((float)liquid_level+ 0.5) / (float)range * node_liquid_level) * BS;
|
||||
level = (-0.5 + ((float)liquid_level + 0.5) / (float)range) * BS;
|
||||
}
|
||||
|
||||
// Check node above neighbor.
|
||||
|
@ -486,7 +475,7 @@ void mapblock_mesh_generate_special(MeshMakeData *data,
|
|||
// Source is always the same height
|
||||
else if(content == c_source)
|
||||
{
|
||||
cornerlevel = (-0.5+node_liquid_level)*BS;
|
||||
cornerlevel = 0.5 * BS;
|
||||
valid_count = 1;
|
||||
break;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue