three.js · interactive reef tank
一个完全程序化生成的三维珊瑚海缸:所有生物、岩石、珊瑚、沙床、水体光学都由代码实时生成,没有任何贴图素材。
1投食:在水面上方点击或拖动,鱼群会循迹抢食,饲料下沉后会被虾和螺清理,残饵会让水变浑。
2扔垃圾:塑料袋、瓶盖、易拉罐会漂落,鱼会躲避,水质指数下降;用捞网捞出可恢复。
3捞网:把鱼提出水面——离水后鱼体会下垂、鳃急促开合、鳍贴身上翻并溅落水珠,放回后重新入水。也可用来捞走垃圾。
4挑逗:手指贴着玻璃移动,好奇的鱼会跟上来,胆小的会逃开,狮子鱼会转向你,小丑鱼会躲进海葵。
5手电:一束光打进水里,照亮珊瑚与夜行生物。
6观察:左键拖动环视,滚轮推拉,双击复位。
水体的红光谱逐通道吸收、水面折射/反射与全反射(Snell 窗)、玻璃色散与水渍、随波动的焦散光网、水面涟漪波动方程、体积光柱与浮游微粒均由着色器实时计算。
Space暂停 C换水 F投喂全部 N扔垃圾 L关灯 T自动时刻 H帮助 R复位视角