Home Forums Games202-高质量实时渲染 作业2 里cubemapFaceDirections 是什么

Viewing 3 reply threads
  • Author
    Posts
    • #10507 Score: 0
      sid
      Participant

      如题, 作业2 里cubemapFaceDirections 是什么 , 为什么是这些坐标?
      const Eigen::Vector3f cubemapFaceDirections[6][3] = {
      {{0, 0, 1}, {0, -1, 0}, {-1, 0, 0}}, // negx
      {{0, 0, 1}, {0, -1, 0}, {1, 0, 0}}, // posx
      {{1, 0, 0}, {0, 0, -1}, {0, -1, 0}}, // negy
      {{1, 0, 0}, {0, 0, 1}, {0, 1, 0}}, // posy
      {{-1, 0, 0}, {0, -1, 0}, {0, 0, -1}}, // negz
      {{1, 0, 0}, {0, -1, 0}, {0, 0, 1}}, // posz
      };

    • #11550 Score: 0

      同问

    • #11635 Score: 0
      charvl
      Participant
      2 pts

      正常情况下 texture2D 的纹理起点是左下角,但是 cubemap 因为一些历史原因(似乎是 RenderMan),纹理起点是左上角。
      将「附件」作为 skybox 渲染出来,会得到正常的效果。为了获得「附件」上的纹理,需要调整摄像机的 front 和 up 方向。
      另外,cubemap 是包裹在立方体外部的,摄像机位于立方体的内部。

      Attachments:
      You must be logged in to view attached files.
    • #13127 Score: 0
      ASFSAFSJF
      Participant

      cubemapFaceDirections中的每一行对应scenes\cubemap\中的一幅图,例如negx对应negx.jpg。每一行中的3个向量对应一幅图在全局坐标中的3个方向,第1个向量是图从左到右的方向,第2个向量是图从上到下的方向,第3个向量是指向图里的方向。举个例子,在negx.jpg中,该图从左到右的方向对应全局坐标中的{0, 0, 1}向量,而该图从上到下的方向对应全局坐标中的{0, -1, 0}向量(只要你把6幅图拼起来,就很清楚了)。

      感觉cubemapFaceDirections中的posx似乎有点问题,应当为{{0, 0, -1}, {0, -1, 0}, {1, 0, 0}}

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