mirror of
https://github.com/minetest/minetest_game.git
synced 2024-12-23 07:10:19 +01:00
Stairs: Add backface culling to stair meshes
If backface culling is not specified for a tile in 'images' it is set to true. Slabs already have backface culling due to being defined as nodeboxes (which are then converted to meshnodes).
This commit is contained in:
parent
da41caca66
commit
aea6c5dd1d
@ -46,12 +46,24 @@ end
|
|||||||
-- Node will be called stairs:stair_<subname>
|
-- Node will be called stairs:stair_<subname>
|
||||||
|
|
||||||
function stairs.register_stair(subname, recipeitem, groups, images, description, sounds)
|
function stairs.register_stair(subname, recipeitem, groups, images, description, sounds)
|
||||||
|
local stair_images = {}
|
||||||
|
for i, image in ipairs(images) do
|
||||||
|
if type(image) == "string" then
|
||||||
|
stair_images[i] = {
|
||||||
|
name = image,
|
||||||
|
backface_culling = true,
|
||||||
|
}
|
||||||
|
elseif image.backface_culling == nil then -- override using any other value
|
||||||
|
stair_images[i] = table.copy(image)
|
||||||
|
stair_images[i].backface_culling = true
|
||||||
|
end
|
||||||
|
end
|
||||||
groups.stair = 1
|
groups.stair = 1
|
||||||
minetest.register_node(":stairs:stair_" .. subname, {
|
minetest.register_node(":stairs:stair_" .. subname, {
|
||||||
description = description,
|
description = description,
|
||||||
drawtype = "mesh",
|
drawtype = "mesh",
|
||||||
mesh = "stairs_stair.obj",
|
mesh = "stairs_stair.obj",
|
||||||
tiles = images,
|
tiles = stair_images,
|
||||||
paramtype = "light",
|
paramtype = "light",
|
||||||
paramtype2 = "facedir",
|
paramtype2 = "facedir",
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
|
Loading…
Reference in New Issue
Block a user