Home Forums GAMES在线课程(现代计算机图形学入门)讨论区 关于作业三的dispalcement map

Viewing 4 reply threads
  • Author
    Posts
    • #8769 Score: 0
      scbj
      Participant

      dispalcement map需要在顶点着色的函数内应用吗,如果需要调整顶点的位置,是不是应该在顶点投影变换前就添加上顶点的位移呢

    • #8821 Score: 0
      fprince
      Participant

      不是在顶点着色器里面,只需要在displacement_fragment_shader里面重新计算一下坐标,注释里面有一行就是用来计算位移后的坐标的

    • #8875 Score: 0
      happyfire
      Participant
      4 pts

      感觉作业里面的displacement mapping简化了,真正的位移贴图确实需要在光栅化之前就移动顶点的位置,作业里面已经到了fragment shader了,此时已经光栅化结束了,因此也就没法再移动顶点了,作业里面只是使用移动后的view_pos去计算光照而已。

      • #9044 Score: 0
        歪叽哩
        Participant

        这么理解应该没问题。我看作业上的直接在fragment shader里面偏移顶点,实际生成的效果看其实只影响了该点的光照,课上说的“模型边界上也能看到的实际的凹凸效果”是没有的。因为光栅化根本就没有办法把这部分“凸起”的像素算进去…

    • #8922 Score: 0
      wndvivrider
      Participant
      1 pt

      我的displacement_fragment_shader的结果不太对。其中一个我觉得奇怪的地方就是在实现displacement mapping的时候,这个注释的步骤和bump_fragment_shader的注释是一样的。。。不知道是作业本身的问题吗?

      Attachments:
      You must be logged in to view attached files.
    • #8925 Score: 1
      wndvivrider
      Participant
      1 pt

      抱歉,我没有注意到displacement mapping部分比bump_mapping多出下一行注释提示。
      // payload.texture->getColor(u, v+1.0/h)

      This post has received 1 vote up.
Viewing 4 reply threads
  • You must be logged in to reply to this topic.