mirror of
				https://github.com/luanti-org/minetest_game.git
				synced 2025-11-04 09:15:29 +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:
		@@ -46,12 +46,24 @@ end
 | 
			
		||||
-- Node will be called stairs:stair_<subname>
 | 
			
		||||
 | 
			
		||||
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
 | 
			
		||||
	minetest.register_node(":stairs:stair_" .. subname, {
 | 
			
		||||
		description = description,
 | 
			
		||||
		drawtype = "mesh",
 | 
			
		||||
		mesh = "stairs_stair.obj",
 | 
			
		||||
		tiles = images,
 | 
			
		||||
		tiles = stair_images,
 | 
			
		||||
		paramtype = "light",
 | 
			
		||||
		paramtype2 = "facedir",
 | 
			
		||||
		is_ground_content = false,
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user