5.7.3 多幅图片方式

From Stellarium

多幅图片方式地景由多幅 侧面贴图(由一幅 360°水平全景图片分割而成)以及一幅单独的 地面贴图 构成。多幅图片方式的优势在于在提高水平细节表现度的同时,不会像单幅地景那样使图片变得很大。地面贴图的图像分辨率可以比侧面贴图的低一些。同时,本方式的内存使用效率更高,因为程序不用加载那些无用的图像部分——如鱼眼方式中图片的四角。

faq_landscape.png

图5.1 多幅图片方式制作地景


多幅方式的缺点是地景的制作比较复杂,特别是地面贴图与侧面贴图的拼接制作。此外,本方式的 landscape.ini 配置文件也比其他方式复杂,下面是 Guereins 地景的 landscape.ini 文件:

[landscape]  
name = Guereins
type = old_style  
nbsidetex = 8  
tex0 = guereins4.png  
tex1 = guereins5.png  
tex2 = guereins6.png  
tex3 = guereins7.png  
tex4 = guereins8.png  
tex5 = guereins1.png  
tex6 = guereins2.png  
tex7 = guereins3.png  
nbside = 8  
side0 = tex0:0:0.005:1:1  
side1 = tex1:0:0.005:1:1  
side2 = tex2:0:0.005:1:1  
side3 = tex3:0:0.005:1:1  
side4 = tex4:0:0.005:1:1  
side5 = tex5:0:0.005:1:1  
side6 = tex6:0:0.005:1:1  
side7 = tex7:0:0.005:1:1  
groundtex = guereinsb.png  
ground = groundtex:0:0:1:1  
fogtex = fog.png  
fog = fogtex:0:0:1:1  
nb_decor_repeat = 1  
decor_alt_angle = 40  
decor_angle_shift = -22  
decor_angle_rotatez = 0  
ground_angle_shift = -22  
ground_angle_rotatez = 45  
fog_alt_angle = 20  
fog_angle_shift = -3  
draw_ground_first = 1 

说明:

  • name
    • 指明该地景在配置窗口(configuration window)地景(landscape)标签中显示的名称。
  • type
    • 地景方式,多幅图片方式应设为“old_style”。
  • nbsidetex
    • 地景侧面贴图文件的数量。
  • tex0 ... tex<nbsidetex-1>
    • 指明各个侧面贴图文件的文件名。图片文件为 PNG 格式,保存 .../textures/landscapes 目录中。
  • nbside
    • 侧面贴图的数量。
  • side0 ... side<nbside-1>
    • 描述侧面贴图的放置方式。每条描述由5个以分号(:)分隔的部分构成。第一个部分是贴图名称(如 tex0 ),其他四个部分是贴图放置的坐标。
  • groundtex
    • 指明地面贴图的文件名。
  • ground
    • 描述地面贴图的放置方式。
  • fogtex
    • 指明该地景的雾气效果贴图文件。
  • fog
    • 描述雾气贴图的放置方式。
  • nb_decor_repeat
    • 指明侧面贴图在360°全景中的重复次数。
  • decor_alt_angle
    • 设置贴图显示的高度(即地景贴图显示在天空中的高度,单位:角度)。
  • decor_angle_shift
    • 地景侧面贴图的垂直偏移角,侧面贴图从这个角度数开始绘制。
  • decor_angle_rotatez
    • 设置水平旋转角,这个参数用来将地景调整到正确的方向。
  • ground_angle_shift
    • 地面贴图的垂直偏移角,地面贴图从这个角度开始绘制。
  • ground_angle_rotatez
    • 地面贴图的水平旋转角。侧面贴图水平旋转时,地面贴图可以也需要进行相应的调整。
  • fog_alt_angle
    • 雾气贴图显示的高度(单位:角度)。
  • fog_angle_shift
    • 雾气贴图的垂直偏移角。
  • draw_ground_first
    • 如果为 1 则表示先绘制地面贴图,后绘制侧面贴图,即如有重叠部分则侧面贴图将遮盖地面贴图。

注:本节中的 name 配置(本例中是“Guereins”)必须和地景名(即 landscape.ini 文件所在目录的目录名)相同。


Barry Gerdes 写了一个详细的自己制作地景的说明,参见附件E. 制作地景