Home Forums GAMES在线课程(现代计算机图形学入门)讨论区 大佬请帮帮忙,开始 castRay

Viewing 3 reply threads
  • Author
    Posts
    • #5568 Score: 0
      o_o_o_o_o
      Participant
      -1 pt

      请大佬帮帮忙又来了 o(╯□╰)o

      假装理解完毕 shade, 现在开始coding, 首先想理清 Vector3f Scene::castRay(const Ray &ray, int depth)shade(p, wo) 的关系:

      – shade(p, wo) 是描述 p 点处的直接光照和间接光照的,也就是为什么结束的地方会有L_dir + L_indir,这是 p 点的光照? 还是针对颜色我们还要进一步处理么?如果要处理,怎么处理?肯定不能回到之前的模型,😢
      – 直接光照,是否完成直接光照,我们就可以看清box中的东西了?(虽然会暗)

      看到文档中“如果严格按照上述算法实现,你会发现渲染结果中光源区域为纯黑。请分析这一现象的原因”

      原因是啥,是算出来的光照太小了?

      感恩

    • #5576 Score: 0
      Songsong
      Participant
      4 pts

      求的是p点的radiance啊,这个值可以转换成该像素点的颜色

    • #5577 Score: 0
      Mxkkk
      Participant
      1 pt

      1)楼上大佬说的对,理解成颜色或者亮度大概也可以。。?
      2)只完成直接光照的话。。。被遮挡的地方应该是完全不可见吧。。
      3)光源纯黑是没有考虑CastRay打到光源的时候光源自身有radiance,判断一下加上就好(这里一定要想好啥时候该加

      • #5588 Score: 0
        Yadi Cao
        Participant
        2 pts

        关于3)我猜测应该是判断从眼睛出发的光线没有和scene任何物体相交后,可以去和每一个光源再去判断一下就好。

        很类似把直接光照那部分的内容提取到外面来了(本来是在与物体相交后,才渲染,在渲染函数里面)

        不知道理解的对不对

        • #5595 Score: 0
          Mxkkk
          Participant
          1 pt

          意思大概是这个意思。但是在这次作业的实际代码中光源也是MeshTriangle类,即也会判断为相交 所以判断从眼睛出发的光线打到的物体是否hasEmit就行

          • #5599 Score: 0
            Yadi Cao
            Participant
            2 pts

            哇居然是object继承的,那好办了,看最小的t属于发光的还是不发光的就好。
            发光的直接赋值(也不知道这么暴力对不对,我对光源的理解就像固定边界条件是的)

    • #5578 Score: 0
      Zhixiong Ren
      Participant

      请问作业7中采样光源的 Emission 是什么单位,它是 Intensity 么?
      我将 Emit 除以距离的平方,好像才能得到和例子相似的颜色, 否则颜色会过亮

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