mcpField
T
threejs-precipitation-surfaces

threejs-precipitation-surfaces

github.com/scottstts创意与媒体94694 次安装6 天前更新
代码仓库

关于 threejs-precipitation-surfaces

面向 Three.js 降水效果与地表响应的技能,将天气进程、粒子、表面变化和撞击效果作为关联系统处理,并提供积雪与雨水示例参考。

主要功能

  1. 01降水与表面响应构建流程
  2. 02积雪累积及模型覆雪参考
  3. 03湿地与水坑雨效参考
  4. 04风、覆盖度和表面参数控制
  5. 05遮罩、法线与事件调试模式

适用场景

  1. 01制作随风变化的降雪与积雪
  2. 02为模型添加受朝向影响的覆雪
  3. 03制作带涟漪和水坑的雨湿路面
  4. 04检查降水、表面变化与撞击效果

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/scottstts/threejs-awesome-graphics-agent-skills --skill threejs-precipitation-surfaces

安装后在 Claude Code 中输入/threejs-precipitation-surfaces确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

agents/
openai.yaml
assets/wet-puddle-rain/
GPL-3.0.txt
examples/snow-accumulation/
snow-system.js
examples/wet-puddle-rain/
rain-puddle-system.js
references/
precipitation-surface-systems.md

详细介绍

降水表面

将天气视为由事件、粒子和表面响应耦合而成的系统。不要添加与地面视觉上脱节的雨雪粒子。

本技能包含示范性示例和资源,不只是描述性指导,值得研读、参考,甚至直接复制。相关时请充分利用,切勿不加甄别地跳过。

构建顺序

weather envelope
  -> falling precipitation volume
  -> world/object surface mask
  -> displaced or optical surface response
  -> impact residue and splashes
  -> shared lighting/post presentation

阅读 references/precipitation-surface-systems.md,了解积雪、物体覆雪、环绕式降水体积、积水掩码、程序化涟漪法线、飞溅位置、调试输出和许可边界。

阅读 积雪实现,了解环绕摄像机的降雪、共享风力/时间 uniforms、世界空间积雪掩码、单一来源的积雪高度与法线、模型覆雪,以及可选的冰面合成。

阅读 湿水坑降雨实现,了解基于降雨进度的湿润效果、沥青积水掩码、程序化涟漪法线、实例化雨丝、朝上表面的飞溅采样,以及翻页动画飞溅。此示例包含 GPL 许可的源材料;复制或发布时,请保留其许可边界。

必需控件

  • 降水密度和速度;
  • 风向和风力;
  • 共享的天气进度或覆盖度;
  • 湿润、积雪或积水掩码的阈值和柔和度;
  • 涟漪或漂移法线强度;
  • 表面粗糙度响应;
  • 粒子/飞溅不透明度;
  • 用于查看掩码、法线、粒子和事件进度的调试模式。

失败条件

  • 降水下落未采用表面响应所用的风力或时序;
  • 积雪高度和积雪法线来自不同的场;
  • 模型覆雪未经过朝上表面的筛选,导致垂直面也附着积雪;
  • 水坑仅降低粗糙度,却没有掩码、法线响应或涟漪;
  • 飞溅出现在朝下或被遮挡的表面;
  • 雨丝为每一滴雨单独分配资源,或无法环绕摄像机;
  • 用无关的时间噪声伪造随时间变化的湿润效果;
  • 移除或掩盖了 GPL 衍生雨效代码的许可边界。

适用范围边界

有界水池模拟、焦散、Fresnel、折射和 Beer-Lambert 水体积请使用 $threejs-water-optics。一般火花、等离子体、轨迹和非天气粒子请使用 $threejs-procedural-vfx。屏幕空间触碰历史或霜面清除请使用 $threejs-temporal-surfaces。本技能负责降水事件及其明显改变的表面。

评论

支持 Markdown