Skybox vs Skysphere

Dav*_*ave 9 3d

两者之间有什么优点和缺点.特别是像3D游戏这样的东西.

mik*_*era 9

Skyboxes和skyspheres几乎相同,因为你会得到相同的视觉效果 - 即一个看起来很远的好背景.

但是我通常会推荐一个天空盒,原因如下:

  • 需要更少的多边形
  • 假设你正确设置了投影矩阵,你不能说你在一个盒子里面(如果你弄错了,你可能会看到一些扭曲)
  • 渲染方形天空盒图像(每个尺寸方向一个)更容易

关于最后一点,通过创建90度视野,配置渲染器以生成完全适合天空盒的光线跟踪方形图像非常容易,例如在POVRay中,您将使用如下所示的内容:

camera {
   right -x
   up y
   direction -z
   location 0
}
Run Code Online (Sandbox Code Playgroud)

我通常使用1024*1024或2048*2048方形纹理.

我可以想到使用一个skysphere的一个很好的理由是,如果你使用某种程序纹理方法,需要在(大约)单位球面上的点生成.我认为这是一个非常特殊的情况,并且对于大多数游戏应用程序来说不太可能.