forked from luanti-org/minetest_game
		
	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> | -- 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, | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user