首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以雾的形式创建对象的卷

以雾的形式创建对象的卷
EN

Stack Overflow用户
提问于 2017-11-21 09:00:28
回答 1查看 1.2K关注 0票数 0

我正在使用Unity的迷雾着色器,我创建了以下着色器:

然而,这个着色器只是取一个纹理,并将它滑动到物体的表面上。它的工作对2D雾很好,但我也想创建一个着色器,填补一个物体的体积。我知道内在的雾效应在统一,但我想要的东西,我可以集中到一个物体的大小。

这是通过着色器实现的,还是我必须走另一条路?我试着处理ShaderLab:遗留雾,但它似乎过时了,无法有效地工作。

EN

回答 1

Stack Overflow用户

发布于 2017-12-22 11:43:59

实现这一目标有多种方法,其中大多数属于雾卷的范畴。如果您刚开始使用着色器编程,那么这项任务可能会有些令人望而生畏,但您可以使用这些示例和资产。

问题是,着色器只知道全局常量和正在处理的点的本地信息(因此给定像素无法访问其周围环境的描述)。要实现您想要的结果,像素需要一些有关其所属形状或其环境的信息。

对于任意网格,最简单的方法是对场景的深度进行采样(预渲染并存储在纹理中)。有一堆宏可以帮你。一旦你知道了点背后的深度和点本身的深度,你就可以做一系列的操作来计算出这个点的雾的强度。

你可以看看内置着色器中的软粒子着色器,它在物体离其他不透明几何图形越来越近的时候进行精确的褪色过程。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47409033

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档