【Unity / Shader Graph】常见节点原理 | 01 Graphics pipeline

【Unity / Shader Graph】常见节点原理 | 01Graphics pipeline

图文内容来自Youtube@Ben Cloward
https://www.youtube.com/watch?v=ZEXVQgbWxQY

在Unreal中理解Vertex Processor和Pixel Processor

在这里插入图片描述

  • Graphic Shader 作用于Programmable Vertex Processor 和 Programmable Pixel Processor两个模块
  • 在Vertex Processor上编辑比在Pixel Processor上编辑的代价更小
  • 在虚幻引擎中,结点VectexInterpolator的作用类似于图中的Rasterization & Interpolation。可以理解为如果我们手动调用这个结点,在Vertex Processor中对于per vertex的计算结果会被先解释为对应的per pixel的结果,再进入Pixel Processor的阶段。然而此时我们已经有了pixel级的计算结果了。因此我们不需要在Pixel Processor中进行计算。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    第一行(Base pass shader)表示的是在Pixel Processor上的执行次数。第三行(Base pass vertex)表示的是在Vertex Processor上的执行数。
    可以看到,我们的计算操作消耗152-148 = 4次执行次数。
    当我们不使用VectexInterpolator去提前完成这一解释过程时,在VertexProcessor上的执行数是111。而使用了VectexInterpolator节点后,在VertexProcessor上的执行数是115。
    这相当于把原先需要在Pixel processor上的执行工作丢给了Vertex processor。

在Unity中

在这里插入图片描述
而到了Unity中,一切变得更容易理解。Vertex(红色部分)接收到的运算(连到上面的线)会在VertexProcessor被完成;而Fragment(蓝色部分)接收到的运算会在Pixel processor上被执行。

但是在Unity中,并没有上述的类似虚幻引擎中VectexInterpolator的优化方法。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值