ワンクリックで
player-controller
Documents PlayerControllerPlugin and InputPlugin, detailing how movement interacts with the procedural terrain.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Documents PlayerControllerPlugin and InputPlugin, detailing how movement interacts with the procedural terrain.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Architectural instructions for the standalone Cascaded Shadow Maps (CSM) Plugin. Explains how CSMShadowNode integrates with the lighting system and WebGPU nodes.
Outlines the DebugUIPlugin architecture and its schema-driven design for safe settings injection.
Explains how GrassPlugin maps InstancedMesh pools to QuadTreeLOD chunks, including TSL wind animations and exclusion maps.
Explains how PostProcessPlugin intercepts the Three.js pipeline for WebGPU-compatible Bloom and Color Grading.
Covers SkyPlugin and IBLPlugin, explaining procedural sun cycles and dynamic environment map baking.
Details how WaterPlugin generates dynamic, depth-based shoreline foam and TSL normal map blending.
| name | player-controller |
| description | Documents PlayerControllerPlugin and InputPlugin, detailing how movement interacts with the procedural terrain. |
The movement system is decoupled into two plugins: InputPlugin.ts for raw hardware event gathering, and PlayerControllerPlugin.ts for physics and terrain clamping.
A lightweight singleton manager that listens to keydown, keyup, and mouse events.
keys dictionary representing the current active state of movement keys (W, A, S, D, Shift, Space).The logic engine that translates input into physical movement.
camera is attached to a dummy object. Mouse input rotates the dummy object (yaw) and the camera's pitch, creating a standard First-Person/Third-Person view matrix.Because the terrain is procedural and completely displaced on the GPU, the CPU does not naturally know where the ground is.
TerrainSystem.getTerrainHeightAt(x, z).getTerrainHeightAt Implementation: The TerrainSystem looks up the specific pixel in the CPU-side Float32Array generated by the GraphGenerator, calculates the exact triangular barycentric interpolation for smooth slopes, and returns the height.y position is constantly clamped to max(terrainHeight, waterLevel) + playerHeight. This prevents the player from clipping through mountains or sinking below the ocean floor.TerrainSystem for collision data. If the graph rebuilds, the player must immediately snap to the new height.