Token导航 LogoToken导航TokenDH.com
前端设计操作浏览器github未标认证来源可访问clear审计通过

threejs-proThree.js 专业版

Agent Skill

用于辅助前端页面、组件、样式和交互逻辑的开发与维护。它适合让 Agent 生成或审查 React、Next.js、Vue、Tailwind、CSS 等相关代码,整理组件结构,或定位布局和性能问题。使用时需要结合项目现有设计系统、路由和构建方式,避免只生成孤立片段;涉及页面改动时,应配合本地预览和构建检查确认视觉效果。

总安装

4,412

周安装

182

GitHub Stars

76

下载量

1,441
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:threejs-pro(Three.js 专业版)
来源仓库:https://github.com/404kidwiz/claude-supercode-skills
仓库路径:skills/threejs-pro
安装命令:
npx skills add https://github.com/404kidwiz/claude-supercode-skills --skill threejs-pro
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/404kidwiz/claude-supercode-skills --skill threejs-pro

简介

用于辅助前端页面、组件、样式和交互逻辑的开发与维护,适合在 React、Next.js、Vue 等项目中使用。

  • 可生成或审查前端代码,整理组件结构,并协助定位布局和性能问题。
  • 使用时需结合项目现有设计系统和路由配置,避免生成孤立片段。
  • 涉及页面改动时应配合本地预览和构建检查确认视觉效果。
  • 建议在安装前确认权限范围和维护状态,避免不必要的文件写入或网络请求。

SKILL.md

Three.js & WebGL Developer

Purpose

Provides 3D web graphics expertise specializing in Three.js, React Three Fiber (R3F), and custom GLSL shader development. Creates immersive 3D experiences for the web with performance optimization and declarative scene management.

When to Use

  • Building 3D product configurators or landing pages
  • Implementing custom shaders (GLSL) for visual effects
  • Optimizing 3D scenes (Draco compression, texture resizing)
  • Developing React Three Fiber (R3F) applications
  • Integrating physics (Rapier/Cannon) into web scenes
  • Debugging WebGL performance issues (Draw calls, memory leaks)

Examples

Example 1: 3D Product Configurator

Scenario: Building an interactive product configurator for a furniture retailer.

Implementation:

  1. Created R3F component for 3D product display
  2. Implemented texture/material swapping system
  3. Added camera controls and lighting setup
  4. Optimized 3D model with Draco compression
  5. Added accessibility alternatives for non-3D users

Results:

  • 40% increase in conversion rate
  • Average session duration increased 2x
  • Load time under 2 seconds
  • Works on mobile devices

Example 2: Custom Shader Effects

Scenario: Creating immersive visual effects for a gaming landing page.

Implementation:

  1. Wrote custom GLSL vertex and fragment shaders
  2. Implemented post-processing effects (bloom, DOF)
  3. Added interactive elements responding to user input
  4. Optimized shader performance for real-time rendering
  5. Created fallback for WebGL-incapable devices

Results:

  • Stunning visual experience with 60fps
  • Viral marketing campaign success
  • Industry recognition for visual design
  • Maintained performance on mid-tier devices

Example 3: E-Commerce 3D Integration

Scenario: Integrating Three.js into existing React e-commerce site.

Implementation:

  1. Created isolated 3D canvas component
  2. Implemented lazy loading for 3D content
  3. Added proper state management between React and Three.js
  4. Implemented proper cleanup on component unmount
  5. Added error boundaries and fallback content

Results:

  • Zero impact on existing page performance
  • Improved SEO with proper lazy loading
  • Graceful degradation for unsupported browsers
  • Clean codebase following React patterns

Best Practices

Performance Optimization

  • Geometry Merging: Reduce draw calls with merged geometries
  • Texture Optimization: Use compressed formats, proper sizing
  • Dispose Properly: Clean up geometries and materials
  • Level of Detail: Use LOD for distant objects

React Three Fiber

  • Declarative: Use R3F component tree, not imperative code
  • Hooks: Use useFrame, useThree, useLoader properly
  • State Management: Use Zustand for global 3D state
  • Components: Break scene into reusable components

Shaders and Effects

  • Custom Shaders: Use when built-ins aren't enough
  • Post-Processing: Add effects without performance cost
  • Optimization: Profile shader performance
  • Fallbacks: Provide alternatives for low-end devices

Development Workflow

  • Hot Reload: Use HMR for rapid iteration
  • Debug Tools: Use drei's helpers and controls
  • Accessibility: Provide alternatives for 3D content
  • Testing: Test on multiple devices and browsers


2. Decision Framework

Tech Stack Selection

What is the project scope?
│
├─ **React Integration?**
│  ├─ Yes → **React Three Fiber (R3F)** (Recommended for 90% of web apps)
│  └─ No → **Vanilla Three.js**
│
├─ **Performance Critical?**
│  ├─ Massive Object Count? → **InstancedMesh**
│  ├─ Complex Physics? → **Rapier (WASM)**
│  └─ Post-Processing? → **EffectComposer / R3F Postprocessing**
│
└─ **Visual Style?**
   ├─ Realistic? → **PBR Materials + HDR Lighting**
   ├─ Cartoon? → **Toon Shader / Outline Pass**
   └─ Abstract? → **Custom GLSL Shaders**

Optimization Checklist (The 60FPS Rule)

  1. Geometry: Use Draco or Meshopt compression.
  2. Textures: Use .webp or .ktx2. Max size 2048x2048.
  3. Lighting: Bake lighting where possible. Max 1-2 real-time shadows.
  4. Draw Calls: Merge geometries or use Instancing.
  5. Render Loop: Avoid object creation in the useFrame loop.

Red Flags → Escalate to graphics-engineer:

  • Requirement for Ray Tracing in browser (WebGPU experimental)
  • Custom render pipelines beyond standard Three.js capabilities
  • Low-level WebGL API calls needed directly


3. Core Workflows

Workflow 1: React Three Fiber (R3F) Setup

Goal: A spinning cube with shadows and orbit controls.

Steps:

  1. Setup npm install three @types/three @react-three/fiber @react-three/drei
  2. Scene Component (Scene.tsx) import {Canvas} from '@react-three/fiber'; import {OrbitControls, Stage} from '@react-three/drei'; export default function Scene() {return (<Canvas shadows camera={{position: [0, 0, 5]}}> <color attach="background" args={['#101010']} /> <ambientLight intensity={0.5} /> <spotLight position={[10, 10, 10]} angle={0.15} penumbra={1} castShadow /> <mesh castShadow receiveShadow rotation={[0, 1, 0]}> <boxGeometry args={[1, 1, 1]} /> <meshStandardMaterial color="orange" /> </mesh> <OrbitControls /> </Canvas>);}


Workflow 3: Model Loading & Optimization

Goal: Load a heavy GLTF model efficiently.

Steps:

  1. Compression

- Use gltf-pipeline or gltf-transform. - gltf-transform optimize input.glb output.glb --compress draco.

  1. Loading (R3F) import {useGLTF} from '@react-three/drei'; export function Model(props) {const {nodes, materials} = useGLTF('/optimized-model.glb'); return (<group {...props} dispose={null}> <mesh geometry={nodes.Cube.geometry} material={materials.Metal} /> </group>);} useGLTF.preload('/optimized-model.glb');


5. Anti-Patterns & Gotchas

❌ Anti-Pattern 1: Creating Objects in Loop

What it looks like:

  • useFrame(() => {new THREE.Vector3(...)})

Why it fails:

  • Garbage Collection (GC) stutter.
  • 60fps requires 16ms/frame. Allocating memory kills performance.

Correct approach:

  • Reuse global/module-level variables.
  • const vec = new THREE.Vector3(); useFrame(() => vec.set(...))

❌ Anti-Pattern 2: Huge Textures

What it looks like:

  • Loading 4k .png textures (10MB each) for a background object.

Why it fails:

  • Slow load time.
  • GPU memory exhaustion (mobile crash).

Correct approach:

  • Use 1k or 2k textures.
  • Use .jpg for color maps, .png only if alpha needed.
  • Use Basis/KTX2 for GPU compression.

❌ Anti-Pattern 3: Too Many Lights

What it looks like:

  • 50 dynamic PointLights.

Why it fails:

  • Forward rendering creates exponential shader complexity.

Correct approach:

  • Bake Lighting (Lightmaps) in Blender.
  • Use AmbientLight + 1 DirectionalLight (Sun).


7. Quality Checklist

Performance:

  • FPS: Stable 60fps on average laptop.
  • Draw Calls: < 100 ideally.
  • Memory: Geometries/Materials disposed when unmounted.

Visuals:

  • Shadows: Soft shadows configured (ContactShadows or PCSS).
  • Antialiasing: Enabled (default in R3F) or SMAA via post-proc.
  • Responsiveness: Canvas resizes correctly on window resize.

Code:

  • Declarative: Used R3F component tree, not imperative scene.add().
  • Optimization: useMemo used for expensive calculations.

Anti-Patterns

Performance Anti-Patterns

  • Excessive Draw Calls: Too many separate geometries - merge geometries when possible
  • Memory Leaks: Not disposing geometries/materials - always clean up in useEffect cleanup
  • Unoptimized Textures: Large texture files - compress and use appropriate formats
  • Heavy Calculations: Blocking main thread - offload to web workers

Architecture Anti-Patterns

  • Imperative Code: Using imperative Three.js in React - use declarative R3F patterns
  • Prop Drilling: Passing props through many levels - use context and stores
  • State Sprawl: Scattered state management - use centralized state (Zustand)
  • Component Bloat: Large single components - break into focused components

3D Modeling Anti-Patterns

  • High Poly Models: Unoptimized model geometry - use LOD and decimation
  • Mismatched Scales: Inconsistent scale units - normalize model scales
  • Missing Colliders: No collision geometry - add invisible colliders for interactions
  • Improper Lighting: Too many lights - use baked lighting and light probes

Development Anti-Patterns

  • No Progressive Loading: Large scenes loading slowly - implement loading states
  • Missing Fallbacks: No graceful degradation - provide fallback experiences
  • Accessibility Ignored: 3D content not accessible - add alternative content
  • No Performance Budget: No performance targets - establish and monitor budgets

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Claude Code

29.27%
按下载量换算422

OpenCode

24.09%
按下载量换算347

Codex

18.19%
按下载量换算262

Gemini CLI

13.78%
按下载量换算199

Antigravity

9.26%
按下载量换算133

Cursor

3.94%
按下载量换算57

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

来源信息

继续浏览同类 Skills