半透明的物体一般开销都比较大,除了要渲染自身,还要计算场景信息。通常在游戏中会使用无光照模式来降低性能消耗,但这样做就跟阴影和高光这些效果说拜拜了。对于诸如VR这样本身性能消耗就比较大的项目中,可能使用常规不透明材质模拟半透明比较稳妥。
在本次视频教程中,我们先尝试用两种方法让不透明材质看起来是半透明的,也就是如何制作低开销的玻璃。方法1是修改虚幻引擎的着色器,并且只需要一行代码就够了,也不需要编译版,使用在Epic Games Launcher上直接下载的版本就能搞定。方法2是修改法线,比方法1复杂一点儿,但是一句代码都不用敲,全程在材质编辑器中制作。两种方法各有利弊,方法1简单一些,方法2便于移植,大家可以根据实际项目情况自行选择。
然后我们回到题目中来,制作瓶内液体青春版先,目的是实现液体的物理效果。首先要制作常规液体遮罩,让容器模型无论如何旋转都能显示出等额的液体效果。然后做个试验,让这个液体能够在Z轴上上下震荡,再拓展这个震荡效果,使其能够在左右方向上也能够摇晃,模拟液体在移动时的惯性效果。而后使用相似的算法,在模型旋转时同样表现出液体惯性。最后在材质中应用制作的液体遮罩,实现不透明的瓶内液体青春版。
不过还没完,等青春版制作完成,就能将其拓展为透明版本,然后遇到一个新问题:如何在不透明的材质中绘制符合瓶身的液面遮罩。因为不透明的可视像素只有面向摄像机的那一面,不能像半透明一样利用像素坐标计算。我们先暂时不用诸如RayMarching这类需要For循环的算法,仅使用线性数学计算。所以目前的版本还是个简化版,例如液面被简化为平面,至于波浪、水线、挂杯这些我们以后再慢慢探索吧!
[初始项目]
链接:https://pan.baidu.com/s/1OrbJfr8KpRljHTB4cE3M7w?pwd=ikun 提取码:ikun
初始项目的版本号是5.3.2,如果当前使用的版本打不开它,可以直接下载视频中所使用的模型文件自行导入。
[鲨鲨牌二锅头]
链接:https://skfb.ly/oQTVB
[兔斯基乳业牛奶桶]
链接:https://skfb.ly/oZGZE
[声明]
模型与视频中出现的Logo和角色形象并不表示或暗示着该知识产权的原作者或所有者与本视频和本人有任何关联。
暂无关于此日志的评论。