A free ascii art piece — play it in your browser, no install. DEEP SEA TERMINAL — 单文件、零依赖的 3D ASCII 点云鲸鱼女仆 CRT 终端 | Single-file ASCII point-cloud whale maid
Vote and save it — free account with email or sign in with GitHub
Made this, @Charaaah? See how many people played it → or use email
📅 Three new games every day, no account needed · Play today’s three →
Controls: Arrow keys · Mouse
GitHub may ask you to sign in, then to let VibeCruiser “Verify your GitHub identity” and “Act on your behalf”. We only read your profile and email, and never post anything.
No account needed to save ♥ or react 🔥: they’re under the game. Or vote with email.
Open the live demo Source on GitHub一个单文件、零依赖、完全离线的交互式 3D ASCII / CRT 艺术页:鲸鱼女仆的模型先被拆成带朝向的盒子,再采样成六面点云,最后用纯 JavaScript 软件渲染成 120 × 45 个字符,套上扫描线、荫罩和暗角,像一台沉在深海里的老终端。
不是 three.js / WebGL / Canvas 3D,也没有任何 CDN、npm 包或外部字体。 画面固定 1600 × 960,按视口等比缩放;内部始终按固定分辨率渲染,不会因窗口尺寸改变构图。 没有 Math.random():几何、采样、光照、抖动全部确定,同一时刻渲染结果可复现。
点云是有颜色的:每个采样点计算 albedo = 0.299r + 0.587g + 0.114b,再叠加主光、背光与背补光,不会退化成灰模。 动态密度:全模型保留基础层,只有当前正对相机的面才追加一层采样点;背对相机的额外点直接跳过。这样既保证轮廓处的信息量,又避免无意义的点数膨胀。当前场景约 32.8 万点。 软投影 + Z-Buffer:自己维护相机 right/up/forward 基向量,逐点做透视除法与深度测试,没有依赖任何图形 API。 字符选择有依据:每个 8×16 单元做 3×3 超采样得到覆盖率与亮度;Sobel 只负责勾边,并且用局部亮度做门限,所以瞳孔、发丝这类暗部细节不会被边缘吃掉。
Built something like this? Submit your vibe — free account, takes a minute. How listing works.
Claim it: create a free account, then press CLAIM THIS in the cruiser. Put the badge below in your README or on your demo page first; that link is how we know it's yours.
Your project is on the cruise, loaded live from your own site. Put the badge in your README or on the demo page: it shows your live play count, it links back to this page, and everyone who lands here is one click from running the real thing.