Home Forums GAMES在线课程(现代计算机图形学入门)讨论区 作业7 有人加过 镜面渲染 或是 ggx重要性采样吗

Viewing 2 reply threads
  • Author
    Posts
    • #9374 Score: 0
      shadowlr
      Participant

      如题,看以下两篇,没实现出来效果,模型外圈是白色的。。
      https://schuttejoe.github.io/post/ggximportancesamplingpart1/
      https://schuttejoe.github.io/post/ggximportancesamplingpart2/

    • #9516 Score: 1
      HighDefinit1on
      Participant
      1 pt

      我参照的是这个https://agraphicsguynotes.com/posts/sample_microfacet_brdf/
      也没实现出来效果,球体上白色噪点很多,而且粗糙度roughness越高白色噪点越多,不知道楼主实现出来了吗?

      This post has received 1 vote up.
      • #9517 Score: 0
        HighDefinit1on
        Participant
        1 pt

        把球体的粗糙度roughness调到接近0之后效果就出来了。。。暂时不理解原因
        左diffuse 右microfacet roughness = 0.02

    • #11015 Score: 0
      炎炎夏日丽丽在目
      Participant
      2 pts

      最近我思考并实现了一下naive pure specular。
      首先根据课件上Diffuse的fr的推导,把材质换成pure Specular,考虑最简单的只有一束Li入射的情况,那么渲染方程就变成Lo = fr * Li * costhetai, 如果wo是wi的反射方向,则根据能量守恒,fr = 1 / costhetai,如果wo是其他方向,根据pure Specular的性质,Li应该全部被反射到Lr(反射方向)去,因此理论上fr 应该 = 0。但由于实际工程实现的时候,对光源采样的wo很难是wr,因此考虑采用Blinn-Phong模型的NdotH去调节,NdotH = pow(N*H, n),最后fr = NdotH / costhetai。当然物理中并不会存在pure specular,所以fr最好再乘上ks,或者菲涅尔项。
      然后对于pure specular的点的采样方向,我每次采样的都是反射方向,此时设置pdf = 1.0f,效果如附件,感觉tall box反射光源打到墙面的部分效果不是很好,欢迎大佬指正。

      当然我觉得pure specular最真实也最贴近物理实际的,应该是microfacet,粗糙度为0的时候,所以实现了microfacet,specular也就实现了

      Attachments:
      You must be logged in to view attached files.
Viewing 2 reply threads
  • You must be logged in to reply to this topic.