mcpField
T
threejs-volumetric-clouds

threejs-volumetric-clouds

github.com/scottstts创意与媒体951104 次安装1 周前更新
代码仓库

关于 threejs-volumetric-clouds

为 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-volumetric-clouds

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

包含的文件

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

agents/
openai.yaml
assets/weather-volume-clouds/
shape_detail.bin
THIRD_PARTY_LICENSES.md
assets/weather-volume-clouds/atmosphere/
irradiance.exr
transmittance.exr
examples/weather-volume-clouds/
cloud-effect.js
examples/weather-volume-clouds/source/atmosphere/
AerialPerspectiveEffect.ts
AtmosphereMaterialBase.ts
AtmosphereParameters.ts
blackBodyChromaticity.ts
celestialDirections.ts
constants.ts
getAltitudeCorrectionOffset.ts
getSunLightColor.ts
index.ts
IrradianceMaskPass.ts
PrecomputedTexturesLoader.ts
examples/weather-volume-clouds/source/atmosphere/helpers/
functions.ts
sampleTexture.ts
examples/weather-volume-clouds/source/atmosphere/shaders/
aerialPerspectiveEffect.frag
aerialPerspectiveEffect.vert
functions.glsl
index.ts
irradianceMask.frag
parameters.glsl
sky.frag
sky.glsl
sky.vert
stars.frag
stars.vert

详细介绍

体积云

云的品质取决于密度分布、光照和时间稳定性,而不是增加步进次数来采样无结构噪声。

本技能除了描述性指南,还包含出色的示例和资源,值得研读、参考,甚至直接复用。相关时请充分利用,切勿盲目跳过。

系统顺序

  1. 定义云体积和层边界。
  2. 生成或获取天气、基础形状、细节和湍流场。
  3. 结合垂直分布和天气分布构建密度函数。
  4. 仅对有界的占用区间进行光线步进。
  5. 从前向后积分透射率和光照。
  6. 通过时间重建低分辨率输出。
  7. 使用独立的低成本云影方案进行投影。

实现或审查云系统之前,请阅读 references/weather-volume-and-reconstruction.md。

请阅读 weather volume cloud entry 及其 source/ 模块,了解天气层的职责归属、球壳边界、 作者定义的形状和细节采样、云影贴图、时间升采样、 大气合成以及由包管理的诊断功能。

必需控件

  • 覆盖率、云类型、降水量和砧状云偏置;
  • 基底/顶部高度和垂直密度分布;
  • 形状/细节尺度和侵蚀;
  • 每个场的风;
  • 主步进次数、光照步进次数和空空间处理策略;
  • 历史帧权重和显露区域阈值;
  • 云影范围、分辨率和更新频率。

失败条件

  • 密度仅为 fbm(position);
  • 光线步进遍历整个相机范围;
  • 细节噪声增加密度,而不是侵蚀成形的云团;
  • 在显露区域仍接受时间历史数据;
  • 阴影使用完整的高质量光线步进;
  • 所有云层共用相同的风和密度分布。

路由边界

分子/气溶胶散射且不包含天气密度时,请使用 $threejs-atmosphere-aerial-perspective。对于发光的极光帘幕层,或具有速度、压力、发射器和碰撞场的有界交互式体素火焰与烟雾,请使用 $threejs-procedural-vfx。本技能负责天气塑造的云体积、重建、云照明和云影。

评论

支持 Markdown