请选择 进入手机版 | 继续访问电脑版
开启辅助访问

QQ登录

注册 找回密码
返回列表 发新帖 标签:
TA
图形学
渲染
引擎
Shader
材质球
查看: 3899
回复: 11

Shader 印度TA_Joyce分享的用Shader Graph造假液体shader(内含代码和shader)

 

1万

元素币

2385

活跃度

1348

贡献值

元素王

Rank: 4Rank: 4Rank: 4Rank: 4

积分
31750
主题
127
精华
13
扩散
687
首发
1
土豪金
0
在线时间
267 小时

TA的画板

发消息

发表于 2019-7-20 16:37:32
TA资源类型
TA资源类型: 算法思路 
shader资源类型: 节点图 shader源代码 
适用引擎: unity 
资源介绍: -

马上注册成为元素者,获取海量元素资源,结识各路大神级人物

您需要 登录 才可以下载或查看,没有帐号?注册

x
不要问我啥意思,我就是一个搬运工,相关的代码和shader节点图在镶嵌在文章里,收点搬运费。汉语是机翻,即供参考。

高清大图的shader节点图以及源文件
价格:15元素币销售总额:960元素币 购买人数:64

尊敬的游客 ,本内容需要支付 15元素币 来下载,您可以充值或者发帖分享。也可使用扩散 悬赏 任务获取元素币,来下载。


Here's the last post to end this ShaderGraph month, all graphs are attached!

这是结束这个月关于ShaderGraph的最后一篇文章,所有图表都附上了!


These are a little bit more complicated, I would've liked to do more, but without a double pass option I can't make my Outline shaders (Direcitonal Rim Light, Aura Outline) and the Foam Edge/Intersection effects are also not possible from the nodes given.

But I did manage to convert these other popular shader effects :)

这些有点复杂,我会喜欢做更多,但没有双通选项我不能使我的轮廓着色器(直线轮廓光,灵气轮廓)和泡沫边缘/交叉效果也是不可能的从给定的节点。但我确实设法转换这些其他流行的着色器来制作这个效果:)


Liquid Shader
2 - 1.gif

Original Code Shader Tip
早期代码


价格:5元素币销售总额:120元素币 购买人数:24

尊敬的游客 ,本内容需要支付 5元素币 来下载,您可以充值或者发帖分享。也可使用扩散 悬赏 任务获取元素币,来下载。


以下是代码
价格:1元素币销售总额:39元素币 购买人数:39

尊敬的游客 ,本内容需要支付 1元素币 来下载,您可以充值或者发帖分享。也可使用扩散 悬赏 任务获取元素币,来下载。


The difference with the Shader Graph version is that there is no different color for the fake surface and the side foam, because Zwrite On is not an option from graphs, but it still looks pretty cool.

Let's get started.

First part is getting the right positioning to keep the liquid level with the world, while it's in the same position within the bottle.

    与Shader Graph版本的不同之处在于假表面和侧面泡沫没有不同的颜色,因为Zwrite On不是图表的选项,但它看起来仍然很酷。    让我们开始吧。    首先是获得正确的定位,以保持液位与世界,而它在瓶内的相同位置。

                                                       3 - 1.jpe?token-time=1564790400&token-hash=Gdc5OQYdHF3UR11mNfe6UdM9IExtXQ2yPN.jpg

This is done by subtracting the Object's Position (Not Position Set to Object, very confusing!)  from the world Position


    这是通过从世界位置减去对象的位置(非位置设置为对象,非常混乱!)来完成的

                                                      
When you make a step of the Position.y and a slider for the fill amount, you can "fill" the object locally


Plug the result into the alpha, and set the Blend mode to Alpha, Turn on Two Sided, and create a Vector`1 for the AlphaClipThreshold to work.
Now it only shows the filled part of the object.


Creating a false surface is done by using the Is Front Face Node, as the name suggests, this returns true when it's a front face and false when its a backface, with a Branch node, you can have a different color for these two cases. Multiply the branch result with the step and you've got a fake filling!


Now it just needs to wobble!
  The script that you add to the object with this shader will give it 2 values, _WobbleX, and _WobbleZ, these two values drive how much rotation happens. First they need to be added to the properties, so don't forget to do that!  



The code version uses this rotation function, Shader Graph has a Rotate About Axis Node, it doesn't seem to work exactly the same, but we can sort of create a rotation with this.


Rotate the object by 90 degrees and multiply by the WobbleZ, and add the object position multplied by WobbleX to add the wobble rotation to the Local Position.


Don't forget to add the Wobble Script!

图文无关















评分

参与人数 2元素币 +60 活跃度 +20 收起 理由
V贪婪 + 10 + 20 谢谢分享
元素界王 + 50

查看全部评分

本帖被以下画板推荐:

还没有设置签名!您可以在此展示你的链接,或者个人主页!

回复 使用道具 举报 登录

论坛版权

盘 TA

回复 使用道具 举报 登录

盘 TA

感谢大佬的分享

回复 使用道具 举报 登录

盘 TA

感谢大佬分享

回复 使用道具 举报 登录

盘 TA

带你赚币带你飞,元素里面有正妹

回复 使用道具 举报 登录

盘 TA

不错

回复 使用道具 举报 登录

盘 TA

感谢分享~~~~~~~~~~~~~~~~~~~~~~

回复 使用道具 举报 登录

盘 TA


感谢分享~~~~~~~~~~~~~~~~~~~~~~

回复 使用道具 举报 登录

盘 TA

感谢分享~~~~~~~~~~~~~

回复 使用道具 举报 登录

盘 TA

不兼容啊,看不了 到底是哪个版本的

回复 使用道具 举报 登录

盘 TA

带你赚币带你飞,元素里面有正妹

回复 使用道具 举报 登录

盘 TA

带你赚币带你飞,元素里面有正妹

回复 使用道具 举报 登录

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

元素大事件!上一条 /1 下一条

快速回复 返回顶部 返回列表