Home Forums GAMES在线课程(现代计算机图形学入门)讨论区 作业六提高建树时间没变 渲染提高了

Viewing 3 reply threads
  • Author
    Posts
    • #5254 Score: 0
      paradocx
      Participant

      BVH本身对应的是0s建树,28s渲染;使用SAH后是0s建树,29-30s渲染。 (这两个时间都多次实验)
      我使用的思路是使用12个buckets,计算质心沿长的轴(x)的offset判断落在哪个桶里。
      每个桶有自己的包围盒,计算桶分割序号左右的子包围盒面积/父包围盒面积作为cost找到最少的分割点。
      然后把对应的objects按照分割点split成左右两个集合进行迭代。
      想请问我的方法是不是出现了什么问题?

    • #5256 Score: 0
      clarence
      Participant
      -2 pt

      思路没错,要不你把代码贴出来?

      • #5288 Score: 0
        paradocx
        Participant

        麻烦您帮忙看看 这段代码之前是计算对角线发现X轴最长 按x排序了

        Attachments:
        You must be logged in to view attached files.
        • #5303 Score: 0
          安安
          Participant
          -1 pt

          请问你的问题解决了吗,我现在也是这个问题

        • #5305 Score: 0
          JZZ
          Keymaster
          2 pts

          最长轴为X,只能说是一开始的大包围盒是这样的。左右子节点递归调用的时候就不能保证最长轴还是X轴了。源代码BVH建树的时候就是一开始先计算最长轴,然后用switch选择在最长轴投影质心。所以你构建出的分割还不是最优

        • #5323 Score: 0
          clarence
          Participant
          -2 pt

          就像@JZZ 说的那样,你自己都说延长的轴了,怎么还会固定是x轴呢?还有你左右子树调用的都是NAIVE方法的函数,不知道你是重写了原来的函数还是注释掉了。

          • This reply was modified 2 years, 1 month ago by clarence.
    • #5310 Score: 0
      Scott
      Participant
      -3 pt

      请问这里BVHwithSAH建树还是沿用源代码BVH建树的吗

    • #5313 Score: 0
      安安
      Participant
      -1 pt

      请问一下SAH要先排序吗,按照什么排序呀

Viewing 3 reply threads
  • You must be logged in to reply to this topic.