mirror of
				https://github.com/luanti-org/luanti.git
				synced 2025-10-28 22:25:20 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			212 lines
		
	
	
		
			7.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			212 lines
		
	
	
		
			7.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| Minetest Texture Pack Reference
 | ||
| ===============================
 | ||
| 
 | ||
| Texture packs allow you to replace textures provided by a mod with your own
 | ||
| textures.
 | ||
| 
 | ||
| Texture pack directory structure
 | ||
| --------------------------------
 | ||
| 
 | ||
|     textures
 | ||
|     |-- Texture Pack
 | ||
|     |   |-- texture_pack.conf
 | ||
|     |   |-- screenshot.png
 | ||
|     |   |-- description.txt
 | ||
|     |   |-- override.txt
 | ||
|     |   |-- your_texture_1.png
 | ||
|     |   |-- your_texture_2.png
 | ||
|     `-- Another Texture Pack
 | ||
| 
 | ||
| ### Texture Pack
 | ||
| This is a directory containing the entire contents of a single texture pack.
 | ||
| It can be chosen more or less freely and will also become the name of the
 | ||
| texture pack. The name must not be “base”.
 | ||
| 
 | ||
| ### `texture_pack.conf`
 | ||
| A key-value config file with the following keys:
 | ||
| 
 | ||
| * `title` - human readable title
 | ||
| * `description` - short description, shown in the content tab
 | ||
| 
 | ||
| ### `description.txt`
 | ||
| **Deprecated**, you should use texture_pack.conf instead.
 | ||
| 
 | ||
| A file containing a short description of the texture pack to be shown in the
 | ||
| content tab.
 | ||
| 
 | ||
| ### `screenshot.png`
 | ||
| A preview image showing an in-game screenshot of this texture pack; it will be
 | ||
| shown in the texture packs tab. It should have an aspect ratio of 3:2 and a
 | ||
| minimum size of 300×200 pixels.
 | ||
| 
 | ||
| ### `your_texture_1.png`, `your_texture_2.png`, etc.
 | ||
| Any other PNG files will be interpreted as textures. They must have the same
 | ||
| names as the textures they are supposed to override. For example, to override
 | ||
| the apple texture of Minetest Game, add a PNG file named `default_apple.png`.
 | ||
| 
 | ||
| The custom textures do not necceessarily require the same size as their
 | ||
| originals, but this might be required for a few particular textures. When
 | ||
| unsure, just test your texture pack in-game.
 | ||
| 
 | ||
| Texture modifiers
 | ||
| -----------------
 | ||
| 
 | ||
| See lua_api.txt for texture modifiers
 | ||
| 
 | ||
| Special textures
 | ||
| ----------------
 | ||
| 
 | ||
| These texture names are hardcoded into the engine but can also be overwritten
 | ||
| by texture packs. All existing fallback textures can be found in the directory
 | ||
| `textures/base/pack`.
 | ||
| 
 | ||
| ### Gameplay textures
 | ||
| 
 | ||
| * `bubble.png`: the bubble texture when the player is drowning
 | ||
| 
 | ||
| * `crack_anylength.png`: node overlay texture when digging
 | ||
| 
 | ||
| * `crosshair.png`
 | ||
|     * the crosshair texture in the center of the screen. The settings
 | ||
|       `crosshair_color` and `crosshair_alpha` are used to create a cross
 | ||
|       when no texture was found
 | ||
| 
 | ||
| * `halo.png`: used for the node highlighting mesh
 | ||
| 
 | ||
| * `heart.png`: used to display the health points of the player
 | ||
| 
 | ||
| * `minimap_mask_round.png`: round minimap mask, white gets replaced by the map
 | ||
| * `minimap_mask_square.png`: mask used for the square minimap
 | ||
| * `minimap_overlay_round.png`: overlay texture for the round minimap
 | ||
| * `minimap_overlay_square.png`: overlay texture for the square minimap
 | ||
| * `object_marker_red.png`: texture for players on the minimap
 | ||
| * `player_marker.png`: texture for the own player on the square minimap
 | ||
| 
 | ||
| * `player.png`: front texture of the 2D upright sprite player
 | ||
| * `player_back.png`: back texture of the 2D upright sprite player
 | ||
| 
 | ||
| * `progress_bar.png`: foreground texture of the loading screen's progress bar
 | ||
| * `progress_bar_bg.png`: background texture of the loading screen's progress bar
 | ||
| 
 | ||
| * `moon.png`: texture of the moon. Default texture is generated by Minetest
 | ||
| * `moon_tonemap.png`: tonemap to be used when `moon.png` was found
 | ||
| * `sun.png`: texture of the sun. Default texture is generated by Minetest
 | ||
| * `sun_tonemap.png`: tonemap to be used when `sun.png` was found
 | ||
| * `sunrisebg.png`: shown sky texture when the sun rises
 | ||
| 
 | ||
| * `smoke_puff.png`: texture used when an object died by punching
 | ||
| 
 | ||
| * `unknown_item.png`: shown texture when an item definition was not found
 | ||
| * `unknown_node.png`: shown texture when a node definition was not found
 | ||
| * `unknown_object.png`: shown texture when an entity definition was not found
 | ||
| 
 | ||
| * `wieldhand.png`: texture of the wieldhand
 | ||
| 
 | ||
| ### Mainmenu textures
 | ||
| 
 | ||
| * `menu_bg.png`: used as mainmenu background when the clouds are disabled
 | ||
| * `menu_header.png`: header texture when no texture pack is selected
 | ||
| 
 | ||
| * `no_screenshot.png`
 | ||
|     * texture when no screenshot was found for a texture pack or mod
 | ||
| 
 | ||
| * `server_flags_creative.png`: icon for creative servers
 | ||
| * `server_flags_damage.png`: icon for enabled damage on servers
 | ||
| * `server_flags_favorite.png`: icon for your favorite servers
 | ||
| * `server_flags_pvp.png`: icon for enabled PvP on servers
 | ||
| 
 | ||
| ### Android textures
 | ||
| 
 | ||
| * `down_arrow.png`
 | ||
| * `left_arrow.png`
 | ||
| * `right_arrow.png`
 | ||
| * `up_arrow.png`
 | ||
| 
 | ||
| * `drop_btn.png`
 | ||
| * `fast_btn.png`
 | ||
| * `fly_btn.png`
 | ||
| * `jump_btn.png`
 | ||
| * `noclip_btn.png`
 | ||
| 
 | ||
| * `camera_btn.png`
 | ||
| * `chat_btn.png`
 | ||
| * `inventory_btn.png`
 | ||
| * `rangeview_btn.png`
 | ||
| 
 | ||
| * `debug_btn.png`
 | ||
| * `gear_icon.png`
 | ||
| * `rare_controls.png`
 | ||
| 
 | ||
| Texture Overrides
 | ||
| -----------------
 | ||
| 
 | ||
| You can override the textures of a node from a texture pack using
 | ||
| texture overrides. To do this, create a file in a texture pack
 | ||
| called override.txt
 | ||
| 
 | ||
| Each line in an override.txt file is a rule. It consists of
 | ||
| 
 | ||
| 	nodename face-selector texture
 | ||
| 
 | ||
| For example,
 | ||
| 
 | ||
| 	default:dirt_with_grass sides default_stone.png
 | ||
| 
 | ||
| You can use ^ operators as usual:
 | ||
| 
 | ||
| 	default:dirt_with_grass sides default_stone.png^[brighten
 | ||
| 
 | ||
| Here are face selectors you can choose from:
 | ||
| 
 | ||
| | face-selector | behavior                                          |
 | ||
| |---------------|---------------------------------------------------|
 | ||
| | left          | x-                                                |
 | ||
| | right         | x+                                                |
 | ||
| | front         | z-                                                |
 | ||
| | back          | z+                                                |
 | ||
| | top           | y+                                                |
 | ||
| | bottom        | y-                                                |
 | ||
| | sides         | x-, x+, z-, z+                                    |
 | ||
| | all           | All faces. You can also use '*' instead of 'all'. |
 | ||
| 
 | ||
| Designing leaves textures for the leaves rendering options
 | ||
| ----------------------------------------------------------
 | ||
| 
 | ||
| Minetest has three modes for rendering leaves nodes if the node has the
 | ||
| `allfaces_optional` drawtype.
 | ||
| 
 | ||
| ### Fancy
 | ||
| 
 | ||
| Uses the texture specified in the `tiles` nodedef field.
 | ||
| The texture should have some transparent pixels and be in the RGBA format so
 | ||
| that the transparent pixels can have color information.
 | ||
| Faces of every leaves node are rendered even if they are inside a solid volume
 | ||
| of leaves; this gives a dense appearance.
 | ||
| 
 | ||
| ### Opaque
 | ||
| 
 | ||
| Uses the texture specified in `tiles` but makes it opaque by converting each
 | ||
| transparent pixel into an opaque pixel that uses the color information of that
 | ||
| transparent pixel.
 | ||
| Due to this the `tiles` texture format must be RGBA not 'indexed alpha' to allow
 | ||
| each transparent pixel to have color information.
 | ||
| 
 | ||
| The colors of the transparent pixels should be set for a good appearance in
 | ||
| `opaque` mode. This can be done by painting the pixels the desired colors then
 | ||
| erasing them. Then when saving the texture, use the 'save color information from
 | ||
| transparent pixels' option (or equivalent).
 | ||
| 
 | ||
| ### Simple
 | ||
| 
 | ||
| Uses the texture specified in the `special_tiles` nodedef field if it exists, if
 | ||
| not, the `tiles` texture.
 | ||
| The `special_tiles` texture should have fewer transparent pixels than the
 | ||
| `tiles` texture and be in the 'indexed alpha' format.
 | ||
| 
 | ||
| This mode is between the other two in terms of appearance and rendering load.
 | ||
| The nodes are rendered using the `glasslike` drawtype, only showing the surface
 | ||
| faces for any solid volume of leaves, not the internal faces.
 | ||
| Due to this the `tiles` texture might appear lacking in density, so optionally a
 | ||
| `special_tiles` texture can be used to provide a texture with fewer transparent
 | ||
| pixels for a denser appearance.
 |