Download the PHP package aternos/renderchest without Composer
On this page you can find all versions of the php package aternos/renderchest. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package renderchest
renderchest
Renderchest is a PHP library for rendering icons for Minecraft items directly from Minecraft's assets. A CSS library for using the icons in web pages is also generated.
Builtin models
While most block/item models in Minecraft are saved in Minecraft's JSON model format nowadays, some models are still hard-coded in Java (e.g. chests, shulker boxes).
These models are inaccessible to the game's resource pack system and cannot be rendered by renderchest.
Renderchest therefore includes a number of built-in model files to replace these hard-coded models.
Renderchest also includes model files for the heads of most mobs.
These models can be used by rendering the mobheads
namespace.
Tinting
Some textures are dynamically tinted by the game (e.g. vegetation and grass blocks). This information can't be extracted from the asset files and therefore is hard-coded in renderchest.
Requirements
- PHP 8.1+
- ext-imagick
- ext-pcntl (optional, allows more efficient multithreading)
Windows support
While Renderchest will generally work on Windows, it will be much slower since asynchronous tasks are not supported. It is therefore recommended to use the Windows Subsystem for Linux to run renderchest on Windows.
Usage
To use renderchest, a valid Minecraft assets directory is required. It can be extracted from a Minecraft client jar file.
CLI usage
Installation
Rendering icons
Renderchest uses Taskmaster for asynchronous tasks, which can be configured using environment variables.
Using resource packs
Resource packs can be added by specifying multiple asset paths. It is also important to always include the base assets folder extracted from the Minecraft jar.
Make sure to use the path to the assets folder within your resource pack, not the root of the resource pack.
Using the generated CSS library
The generated CSS library can be used to display the rendered icons in web pages.
All generated CSS classes are prefixed with rc-
by default.
Whenever a CSS class name contains a namespaced ID, the namespace is separated from the ID by an underscore (e.g. minecraft:stone
-> minecraft_stone
).
The rc-item
class is required for all icons.
Additionally, a class for the item/block is required.
Enchanted items can be displayed by adding the rc-enchanted
class.
Armor trims
Armor trims can be displayed by adding a rc-trim-[material]
class.
Decorated pots
Decorated pots can be displayed by adding rc-pot-1-[material-1]
and rc-pot-2-[material-3]
classes.
Only the first and third material are required because the other sides of the pot are not visible.
Crossbow projectiles
Crossbow projectiles can be displayed by adding rc-projectile-[material]
classes.
Dynamic tinting
Icons can consist of two layers, which can be separately tinted using CSS. This is necessary whenever colors can change dynamically based on item properties (e.g. dyed leather armor or potions).
Dynamic colors can be added by setting the --rc-layer-1-tint
and --rc-layer-2-tint
CSS variables.
Using renderchest as a library
Installation
When using renderchest as a library, the ItemLibraryGenerator
class can be used to replicate the functionality of the CLI tool.
It is also possible to load specific models from a resource manager instead of rendering everything.
All versions of renderchest with dependencies
ext-json Version *
vanilla/garden-cli Version ^3.1
php Version >=8.1
aternos/taskmaster Version ^1.1.3