【问题标题】:Deferred Rendering - Rendering models with individual effects延迟渲染 - 渲染具有单独效果的模型
【发布时间】:2011-07-07 10:05:55
【问题描述】:

我已经阅读了一些关于 XNA 中的延迟渲染的教程(Catalin ZimaTheCansin)。他们似乎都使用延迟渲染管道来渲染模型。这很好,但它们只处理法线和高光贴图。

如果我的想法是正确的,如果我想渲染一个模型,例如,其中有一个发光效果并且我有一个发光着色器,那么延迟渲染管道不会知道这个着色器?

如果我上面的问题是正确的,我是否需要在延迟渲染管道中使用发光渲染模型,然后使用发光着色器重新渲染?

【问题讨论】:

    标签: xna deferred-rendering


    【解决方案1】:

    确实有很多不同的方法。我的建议是在您的管道中包含一个材质掩码通道。例如:为您要在场景中渲染的每种类型的表面渲染一个纯色目标。使用此蒙版目标在您的最终延迟光照通道中执行分支操作,并对不同的材质进行表面计算(例如,纯红色用于 phong 着色,纯蓝色用于无光泽表面等)。您仍然照常使用漫反射、法线和镜面反射 gbuffer 通道。

    特别是对于发光效果,您还可以使用遮罩方法并将该目标带到您的后期处理步骤,以执行全屏模糊/发光,使用遮罩来确定应该应用发光的对象。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-11
      • 2016-01-10
      • 2019-01-10
      • 1970-01-01
      • 2023-03-15
      • 1970-01-01
      相关资源
      最近更新 更多