SCENE · Vite + three
程序化地形与轨道相机Procedural terrain with orbit camera
用 PlaneGeometry 顶点位移或噪声生成起伏地形,配合 OrbitControls 浏览。
旗舰完整演示
可交互场景(拖拽旋转;部分演示支持键盘)。下方提示词用于让 Agent 生成同级成品。
预期产出 · Returns
可运行的 Vite 页面:鼠标拖拽旋转缩放,地形有简单光照与阴影(若性能允许)。
适合用在哪
户外徒步、园区沙盘、游戏关卡白盒等需要「地面」的场景。
容易踩的坑
- 分段数过高会拖垮移动端帧率。
- shadow map 尺寸过大同样吃 GPU。
提示词 · Prompt
在现有 Vite + Three.js 工程中实现程序化地形:
1) PlaneGeometry 分段数至少 128x128,用简单 2D 噪声(可自行实现或写清伪代码)位移顶点 z;
2) MeshStandardMaterial,开启 receiveShadow;
3) DirectionalLight 开启 castShadow,配置 shadow map 尺寸;
4) 导入 OrbitControls,限制 min/max distance 与 maxPolarAngle,避免钻入地下;
5) 在 GUI 或 Leva 中暴露:噪声尺度、高度倍数、wireframe 开关(可选)。
请给出需要新增/修改的文件完整代码,并说明如何调参让山脊更明显。
Procedural terrain on PlaneGeometry with noise displacement, shadows, OrbitControls with pitch/distance limits, exposed height/noise params.