-
Notifications
You must be signed in to change notification settings - Fork 5
Using Emissives.json
Portal Cubed has a custom way of making block and item models have emissive textures. emissives.json predates the vanilla light_emission field in block/item models, but is still used by most of Portal Cubed's models. A model can use both methods at once if desired, but there's not much point in doing so.
emissives.json is located at assets/namespace/emissives.json, much like vanilla's sounds.json
The main differences between emissives.json and vanilla's light_emission are:
-
emissives.jsonmakes entire textures emissive, rather than specific model elements. - Textures made emissive with
emissives.jsonare automatically unshaded, and always use full brightness. -
emissives.jsoncan be used to make entire folders be considered emissive. This is used in cases where a model has dynamic textures, but not all textures used on a specific model element should be emissive.
emissives.json is a list of model paths with an associated texture path, list of texture paths, or folder of textures to be made emissive. The model and texture paths start at assets/namespace/models and assets/namespace/textures respectively.
Single-texture examples:
...
"block/pedestal_button": "block/pedestal_button_emissive",
"block/pedestal_button_active": "block/pedestal_button_emissive",
"block/pedestal_button_base_center": "block/pedestal_button_emissive",
"block/pedestal_button_base_center_active": "block/pedestal_button_emissive",
"block/pedestal_button_base_left": "block/pedestal_button_emissive",
"block/pedestal_button_base_left_active": "block/pedestal_button_emissive",
"block/pedestal_button_base_right": "block/pedestal_button_emissive",
"block/pedestal_button_base_right_active": "block/pedestal_button_emissive",
...
Texture list examples:
...
"block/elevator_wall_top": [
"block/elevator_wall_upper_emissive",
"block/elevator_wall_middle_top_emissive"
],
"block/elevator_wall_middle": [
"block/elevator_wall_middle_emissive",
"block/elevator_wall_middle_top_emissive"
],
"block/elevator_wall_bottom": [
"block/elevator_wall_lower_emissive",
"block/elevator_wall_middle_top_emissive"
],
...
Folder Examples:
...
"block/large_signage": [
{
"type": "folder",
"folder": "signage"
}
],
"block/aged_large_signage": [
{
"type": "folder",
"folder": "signage"
}
],
...
Portal Cubed's full emissives.json can be found here: https://github.com/Fusion-Flux/Portal-Cubed-Rewrite/blob/main/src/main/resources/assets/portalcubed/emissives.json