threejs-geometry

Create and optimize three.js geometries with built-in shapes, BufferGeometry, and instanced meshes.

2|1|Updated Mar 26, 2026
One-click install
npx skills add https://github.com/huangzida/skills --skill threejs-geometry-huangzida
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: threejs-geometry
Source: https://github.com/huangzida/skills/tree/main/threejs-geometry
Command: npx skills add https://github.com/huangzida/skills --skill threejs-geometry-huangzida

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Three.js geometry creation requires selecting and configuring built-in shapes, custom BufferGeometry, and efficient instancing to render complex 3D scenes with minimal overhead. This skill consolidates practical patterns to quickly create, customize, and optimize geometric primitives for robust 3D rendering.

Core Features & Use Cases

  • Built-in Geometries: Box, Sphere, Plane, Cylinder, Cone, Torus, and more with straightforward parameterization.
  • BufferGeometry & Custom Shapes: Define custom vertices, normals, uvs, and indices for flexible meshes.
  • Instancing & Performance: Leverage InstancedMesh and shared buffers to render many objects efficiently.
  • Geometry Utilities: Tools for centering, scaling, morph targets, and geometry transformations.
  • Use Cases: Prototyping 3D dashboards, procedurally generated worlds, and optimized scene composition.

Quick Start

Create a basic scene with a BoxGeometry and a MeshStandardMaterial, then render.

Frequently Asked Questions about threejs-geometry

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

FAQPage Schema
How do I create custom BufferGeometry with vertices and normals in Three.js?

Create custom BufferGeometry in Three.js by defining your own vertices, normals, uvs, and indices. This approach provides flexible mesh definitions for 3D scenes where built-in shapes are insufficient.

What is the best way to render many objects efficiently in Three.js?

The best way to render many objects efficiently in Three.js is leveraging InstancedMesh and shared buffers. This instancing pattern minimizes overhead when rendering complex scenes with numerous objects.

How do I parameterize built-in Three.js geometries like Box and Sphere?

Parameterize built-in Three.js geometries like Box, Sphere, Plane, Cylinder, Cone, and Torus using straightforward configuration options. This allows quick creation of standard 3D shapes for scene prototyping.

Does Three.js geometry creation support morph targets and transformations?

Yes, Three.js geometry creation supports morph targets and transformations. Geometry utilities provide tools for centering, scaling, and applying transformations to shapes within your 3D scenes.

Can I use Three.js BufferGeometry for procedurally generated WebGL worlds?

Yes, you can use Three.js BufferGeometry for procedurally generated WebGL worlds. Custom buffer geometry definitions and instancing patterns are well-suited for generating complex, dynamic 3D scene compositions.