Home Forums GAMES在线课程(现代计算机图形学入门)讨论区 作业3中加入mipmap时三角形边缘上出现层数突变

Viewing 0 reply threads
  • Author
    Posts
    • #12944 Score: 0
      quaintSenator
      Participant

      如题,由于历次作业都没有进行mipmap的实践,我尝试了一下把作业3的牛牛模仿课件中三线性插值城堡的效果写出了一段程序,发现了预料之外的结果,想要探讨一下。
      我设计了这样的过程:按照D=log2L,并以相邻两像素各自uv到当前像素的距离为L的近似值,判断出当前像素位于哪个mipmap层。我的颜色设计如下:
      {0, 255, 255}, // green-blue
      {72, 61, 139}, // Darkslateblue
      {132, 112, 255}, // slight slate blue
      {65, 105, 255}, // royal blue
      {0, 191, 255}, // deep sky blue
      {178, 238, 238}, // pale turquoise
      {0, 206, 209}, // dark turquoise
      {153, 51, 250}, // foreign purple
      {180, 20, 150}, // interpolation 1
      {230, 10, 50}, // interpolation 2
      {255, 0, 0} // red
      D越大,则该像素越红。
      一个有趣的现象是,不论如何调试,我发现在大多数三角形边缘上都有红色的线框(红色是我设定的mipmap最高层的颜色,D=9)哪怕把eyepos从(0,0,10)移动到(0,0,30),几乎所有的三角形线框依然是红色的。这是由什么原因造成的?如果这是正常的现象,那么mipmap技术在应用中要如何克服线框位置上层数突变带来的潜在挑战呢?
      问题代码已经push到github上(https://github.com/quaintSenator/Games101AS3),可以通过 ./Rasterizer output.png mipmap调试。

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