尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗A first-person explorer for a procedurally generated polygonal world, aiming for a balance of realism and abstraction. The goal is a living, believable planet you can walk, fly and drift across — terrain that reads as geology, weather that shifts, rivers that follow valleys, plants that cluster where the conditions suit them — without the fidelity cost of photorealism. Everything is generated at runtime from a single seed: terrain, plants, sky, weather, water and rivers, all computed on the GPU. Choose from 13 Solar System colour palettes to set the world's look and feel. Rivers trace valleys from high ground to sea, tapering into headwater streams — some branch into tributaries, some meander across the landscape, some pool into lakes. A startup scan identifies up to 30 terrain beauty spots (beach, canyon, island, mountain peak and more) and 24 procedural landmarks, all surfaced as one-tap teleports in a persistent Locations panel. Named rivers appear there too. Worlds are identified by a pronounceable seed word in the URL (e.g. ?seed=KaliSeron). Quality adapts automatically to the device GPU across three tiers — high, medium and low — and adjusts dynamically at runtime.
Inspired by Beyond Fable and threejs-procedural-planets.
npm install
npm run dev # development server
npm run build # type-check + production bundle
Desktop / laptop: click to capture the mouse · WASD move · Shift sprint · Space jump / ascend · C descend · F cycle walk → drone → fly · L land · Q/E roll (fly) · M map · G toggle panels · Esc release mouse / close map
Mobile / tablet: left thumb joystick · right-side drag to look · ↑ ascend · ↓ descend · ⟲⟳ roll (fly only) · ⚡ sprint · ✈ cycle walk → drone → fly · 🛬 land · 🗺️ map · ☰ toggle panels
Works on desktop, laptop, mobile (Android / iOS) and tablet. Supports devices up to ~7 years old via GPU-tier detection.
| Area | Directory / file | Role |
|---|---|---|
| Entry | main.ts | Wires everything; runs the startup sequence and frame loop. |
| Core utilities | core/ | Config constants, noise, palette, seed utilities, geometry math. |
| GPU tier | render/gputier.ts | Probes GPU before renderer creation; assigns high / medium / low tier. |
| Rendering | render/ | Shared uniforms and shaders (fx), GPU bake helpers (bake), terrain material (terrain), post-processing chain (postfx, aerialfx), sun/moon shadows (shadows), tree material (treemat). |
| Planet | world/planet.ts, world/chunks.ts | Coarse planet mesh with cube-map surface; streamed high-detail terrain chunks. |
| Sky & atmosphere | world/sky.ts, world/skyfx.ts, world/night.ts, world/precip.ts | Sun/moon/weather state, cloud shell, aurora/fireflies/bioluminescence, GPU rain/snow. |
| Rivers & lakes | world/river.ts | Valley-tracing paths, meanders, tributaries, lakes; single animated water shader. |
| Trees | world/forest.ts, world/trees.ts, world/treeutil.ts, world/geoutil.ts | Clustered placement, three LOD levels, per-tree hue and shape variation. |
| Ground cover | world/plants.ts, world/vegetation.ts, world/plantgeo.ts, world/rockgeo.ts | 15 plant kinds with biome-specific placement gates. |
| Landmarks | world/landmarks.ts | 8 procedural landmark types placed at startup. |
| Player | player/player.ts, player/touch.ts, world/collision.ts, world/footprints.ts | Walk / drone / fly controller; collision; snow footprints; virtual joystick. |
| Locations | world/spots.ts | Terrain beauty-spot scanner; results populate the Locations panel. |
| UI | ui/gui.ts, ui/map.ts | lil-gui settings + Locations panel; fullscreen equirectangular planet map. |