blockbench-pbr-materials

Create and manage PBR (Physically Based Rendering) materials in Blockbench using MCP tools. Use when working with texture_set.json files, creating normal/height/MER maps, configuring material properties for Minecraft Bedrock RTX, or setting up multi-channel texture workflows.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "blockbench-pbr-materials" with this command: npx skills add jasonjgardner/blockbench-mcp-project/jasonjgardner-blockbench-mcp-project-blockbench-pbr-materials

Blockbench PBR Materials

Create and manage PBR materials for Minecraft Bedrock RTX and other PBR workflows.

Available Tools

ToolPurpose
create_pbr_materialCreate new PBR material with texture channels
configure_materialConfigure material properties
list_materialsList all PBR materials
get_material_infoGet detailed material info
import_texture_setImport texture_set.json file
assign_texture_channelAssign texture to PBR channel
save_material_configExport texture_set.json

PBR Channels

ChannelDescriptionFormat
colorBase color/albedoRGB texture
normalNormal map for surface detailRGB (tangent space)
heightHeightmap for parallax/displacementGrayscale
merMetalness/Emissive/Roughness packedR=Metal, G=Emissive, B=Roughness

Quick Start

Create Basic PBR Material

create_pbr_material: name="stone_pbr", textures={
  color: "stone_color",
  normal: "stone_normal"
}

Create Full Material

create_pbr_material: name="gold_block", textures={
  color: "gold_color",
  normal: "gold_normal",
  height: "gold_height",
  mer: "gold_mer"
}

Material Configuration

Set Material Properties

configure_material: material_id="stone_pbr", config={
  metalness_emissive_roughness: {
    metalness: 0.0,
    emissive: 0.0,
    roughness: 0.8
  }
}

Metallic Material

configure_material: material_id="gold_block", config={
  metalness_emissive_roughness: {
    metalness: 1.0,
    emissive: 0.0,
    roughness: 0.3
  }
}

Emissive Material (Glowing)

configure_material: material_id="glowstone", config={
  metalness_emissive_roughness: {
    metalness: 0.0,
    emissive: 1.0,
    roughness: 0.9
  }
}

Texture Assignment

Assign Individual Channel

assign_texture_channel: material_id="stone_pbr", channel="height",
  texture_id="stone_heightmap"

Replace Channel

assign_texture_channel: material_id="stone_pbr", channel="normal",
  texture_id="stone_normal_v2"

Import/Export

Import texture_set.json

import_texture_set: file_path="C:/packs/stone_texture_set.json"

Export texture_set.json

save_material_config: material_id="stone_pbr",
  output_path="C:/packs/textures/stone_texture_set.json"

Querying Materials

List All Materials

list_materials
# Returns: [{uuid, name, textureCount, hasColor, hasNormal, hasHeight, hasMER}]

Get Material Details

get_material_info: material_id="stone_pbr"
# Returns full channel assignments and config

MER Texture Format

The MER channel packs three properties into RGB:

  • R (Red): Metalness (0=dielectric, 1=metal)
  • G (Green): Emissive intensity (0=none, 1=full glow)
  • B (Blue): Roughness (0=smooth/shiny, 1=rough/matte)

Creating MER Texture

# Create blank MER texture
create_texture: name="block_mer", width=16, height=16,
  fill_color=[0, 0, 204, 255]  # Non-metal, no glow, 80% rough

# Paint metallic areas (R channel)
paint_with_brush: texture_id="block_mer", coordinates=[{x: 8, y: 8}],
  brush_settings={color: "#FF0000", size: 4}  # Metallic spot

# Paint glowing areas (G channel)
paint_with_brush: texture_id="block_mer", coordinates=[{x: 4, y: 4}],
  brush_settings={color: "#00FF00", size: 2, blend_mode: "add"}

Common Material Types

Stone/Rock

create_pbr_material: name="stone", textures={color: "stone_color", normal: "stone_normal"}
configure_material: material_id="stone", config={
  metalness_emissive_roughness: {metalness: 0, emissive: 0, roughness: 0.9}
}

Metal (Gold, Iron)

create_pbr_material: name="gold", textures={color: "gold_color", normal: "gold_normal", mer: "gold_mer"}
configure_material: material_id="gold", config={
  metalness_emissive_roughness: {metalness: 1.0, emissive: 0, roughness: 0.25}
}

Glass/Crystal

create_pbr_material: name="glass", textures={color: "glass_color"}
configure_material: material_id="glass", config={
  metalness_emissive_roughness: {metalness: 0, emissive: 0, roughness: 0.05}
}

Glowing Block

create_pbr_material: name="lamp", textures={color: "lamp_color", mer: "lamp_mer"}
configure_material: material_id="lamp", config={
  metalness_emissive_roughness: {metalness: 0, emissive: 1.0, roughness: 0.8}
}

Subsurface Scattering (Bedrock 1.21.30+)

configure_material: material_id="leaves", config={
  subsurface_scattering: {
    red: 0.3,
    green: 0.8,
    blue: 0.2
  }
}

Workflow Example

Complete Block Material

# 1. Create base textures
create_texture: name="brick_color", width=16, height=16
create_texture: name="brick_normal", width=16, height=16, fill_color="#8080FF"
create_texture: name="brick_mer", width=16, height=16, fill_color=[0, 0, 200, 255]

# 2. Paint textures (color, normal, mer)
paint_with_brush: texture_id="brick_color", ...
paint_with_brush: texture_id="brick_normal", ...

# 3. Create material
create_pbr_material: name="brick", textures={
  color: "brick_color",
  normal: "brick_normal",
  mer: "brick_mer"
}

# 4. Configure
configure_material: material_id="brick", config={
  metalness_emissive_roughness: {metalness: 0, emissive: 0, roughness: 0.85}
}

# 5. Export
save_material_config: material_id="brick", output_path="./textures/brick_texture_set.json"

Tips

  • Normal maps use tangent space (blue-ish color, RGB where B is up)
  • Height maps are grayscale (white=high, black=low)
  • MER channels can be painted separately or as a combined texture
  • Use list_materials to see what's available
  • Always test in-game with RTX enabled for accurate preview
  • Roughness 0 = mirror-like, Roughness 1 = completely diffuse

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

blockbench-modeling

No summary provided by upstream source.

Repository SourceNeeds Review
General

blockbench-texturing

No summary provided by upstream source.

Repository SourceNeeds Review
General

blockbench-animation

No summary provided by upstream source.

Repository SourceNeeds Review
General

blockbench-mcp-overview

No summary provided by upstream source.

Repository SourceNeeds Review