threejs-materials

Guides selection and configuration of Three.js materials for web-based 3D scenes.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/hanzoai/video --skill threejs-materials-hanzoai
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: threejs-materials
Source: https://github.com/hanzoai/video/tree/main/.agents/skills/threejs-materials
Command: npx skills add https://github.com/hanzoai/video --skill threejs-materials-hanzoai

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Three.js projects often require selecting and configuring the right material type to achieve the desired visual quality, lighting interaction, and performance. This Skill helps developers quickly pick the appropriate material and configure its key properties for consistent results.

Core Features & Use Cases

  • Material types overview (basic, lambert, phong, standard, physical, shader) and when to use them.
  • Texture maps and property tuning (color, roughness, metalness, maps, envMap) to achieve realistic or stylized looks.
  • Lighting strategy and performance considerations for web-based 3D scenes.
  • Quick integration examples for common scenes and assets.

Quick Start

Create a simple scene with a cube rendered using MeshStandardMaterial and observe how lighting affects color and reflections.

Frequently Asked Questions about threejs-materials

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I choose the right Three.js material for my 3D scene?

Choosing the right Three.js material depends on your lighting needs: use MeshLambertMaterial for basic non-shiny surfaces, MeshStandardMaterial for realistic PBR rendering, and ShaderMaterial for custom visual effects. This Skill guides you through selecting and configuring the appropriate material type for your specific use case.

What is the difference between PBR and non-PBR materials in Three.js?

PBR materials like MeshStandardMaterial use physically based properties such as roughness and metalness for realistic lighting, while non-PBR materials like MeshPhongMaterial use simpler shading models. This Skill explains when to use each type for product previews, games, or architectural visuals.

How do I configure texture maps and envMap in Three.js for realistic reflections?

Configure texture maps and envMap in Three.js by assigning map properties for color, roughness, and metalness, then setting the environment map for reflections. This Skill provides practical property tuning examples to achieve realistic or stylized looks in your web-based 3D scenes.

How do I use ShaderMaterial for custom visual effects in Three.js?

ShaderMaterial in Three.js allows you to write custom GLSL shaders for unique visual effects beyond standard PBR materials. This Skill covers shader customization patterns and how to integrate them with your scene's lighting strategy.

Does Three.js MeshStandardMaterial work with all lighting setups?

MeshStandardMaterial works with Three.js lighting but requires proper environment maps for accurate metalness reflections. This Skill helps you balance lighting strategy and performance considerations for web-based 3D scenes across different use cases.

Why does my Three.js material look flat or not reflect light properly?

Flat-looking Three.js materials often result from missing normal maps, incorrect roughness values, or absent environment maps. This Skill guides you through common property tuning issues and lighting strategies to achieve the intended visual quality.