threejs-textures

Load and configure image, video, and environment textures for Three.js scenes with proper UV mapping and memory management.

Updated Apr 9, 2026
One-click install
npx skills add https://github.com/CarlosQ96/robot-crawler --skill threejs-textures-carlosq96
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: threejs-textures
Source: https://github.com/CarlosQ96/robot-crawler/tree/main/.agents/skills/threejs-textures
Command: npx skills add https://github.com/CarlosQ96/robot-crawler --skill threejs-textures-carlosq96

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Managing and applying textures in Three.js involves many steps—loading files, setting color spaces, configuring wrapping, handling UVs, and optimizing memory. This skill consolidates best practices to simplify those tasks.

Core Features & Use Cases

  • Texture Loading: Supports image, canvas, video, data, compressed, and HDR textures.
  • Configuration: Guides setting color space, wrapping modes, repeat/offset, filtering, and mipmap generation.
  • Advanced Types: Covers cube textures, environment maps, render targets, and procedural textures.
  • Performance: Provides tips on power‑of‑2 dimensions, texture atlases, and pooling for efficient memory use.
  • Use Case: Ideal for web‑based 3D games or visualizations that need realistic material maps and dynamic environment reflections.

Quick Start

Use the threejs-textures skill to load a texture and apply it to a mesh with a standard material.

Frequently Asked Questions about threejs-textures

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

FAQPage Schema
How do I load and apply textures to a mesh in Three.js?

To load and apply Three.js textures, you use texture loaders to fetch image files and assign them to a standard material's map property before applying the material to your 3D mesh. The skill provides utilities for proper color space handling and configuration.

What is UV mapping and how does it work for Three.js 3D scenes?

UV mapping in Three.js translates 2D texture coordinates onto 3D geometry surfaces. Proper UV mapping ensures that image, video, or environment maps align correctly without distortion on your meshes. This skill guides configuration for accurate wrapping and offsets.

How do I configure environment maps and cube textures for realistic reflections?

Configuring environment maps in Three.js involves loading cube textures or HDR files and assigning them to a scene's environment property. This enables dynamic reflections and realistic material lighting in 3D graphics projects.

Why do my WebGL textures look stretched or repeat incorrectly?

WebGL textures appear stretched or repeat incorrectly when wrapping modes and repeat/offset values are not configured properly. Setting the correct color space and power-of-2 dimensions resolves these mapping issues and ensures accurate rendering.

Can I use video or data textures for dynamic 3D visualizations in WebGL?

Yes, you can use video and data textures for dynamic WebGL 3D visualizations. Three.js supports loading video frames and custom data arrays as textures, allowing real-time material updates and procedural generation for animated scenes.

What is the best way to optimize texture memory usage in Three.js?

The best way to optimize texture memory in Three.js is using power-of-2 dimensions, generating mipmaps, and utilizing texture atlases. Proper pooling and memory management APIs prevent performance bottlenecks in web-based 3D games and visualizations.