L4D关卡制作/可见性

 links to other articles to help
 links to other articles to help  integrate it into the encyclopedia. Please help improve this article by adding links
 integrate it into the encyclopedia. Please help improve this article by adding links  that are relevant to the context within the existing text.
 that are relevant to the context within the existing text.2024年1月
译者:joyo_a(百度ID)
可见性基础
编译的地图的文件扩展名为.bsp。“BSP”代表二元空间划分。基本上,游戏引擎仅需要绘制从玩家站立的地方可见的地图的区域。这有助于地图的性能(帧速率有多快)。为此,引擎将地图切成称为“叶子”的块。如果玩家站在看到另一片叶子的叶子上,那么就画出那片叶子。规则(非实体)的笔刷决定叶片切割的位置。笔刷实体,例如我们在上一节中创建的func_ladder,不会影响切割的位置。
那么,为什么你不想要笔刷把地图切成更多的叶子?如果你有更多的笔刷来切割地图,那么引擎就必须做更多的工作以计算可见性,而且更多的地图剪切也意味着需要更多的面数来绘制。
你创建的任何不会有效阻止可见性的笔刷应该是一个称为func_detail的笔刷实体。这些func_detail笔刷在世界上仍然是固体的,但是被忽略于可见性计算。
- 这是游戏引擎可见性系统的一个非常基本的解释。有关BSP和可见性绘图的更多详细信息,请参阅Visibility optimization。
创建tutorial03.vmf
在Hammer里,打开你在上一个教程创建的地图文件tutorial02.vmf(如果你还没有打开)。默认情况下,它应位于教程mapsrc文件夹中:
C:\Program Files\Steam\steamapps\common\left 4 dead\sdk_content\mapsrc\
现在我们将建立一个新版本来工作:
- 转到文件File,然后选择Save As...。
- 更改名字为tutorial03.vmf。
创建一个平台
保持我们的地图叫tutorial02,让我们创建一个平台来延伸我们创建梯子的上层。
使用 选择工具,通过⇧ Shift拖动复制在上一个教程中我们延伸出来的后墙笔刷来创建上板。重塑它是一个从一侧的上板延伸出来的平台。
选择工具,通过⇧ Shift拖动复制在上一个教程中我们延伸出来的后墙笔刷来创建上板。重塑它是一个从一侧的上板延伸出来的平台。
它应该是368个单位宽,176个单位长,16个单位深。
顺便重新涂上平台的底部的纹理,使其符合天花板和地板。
现在,转到Tools菜单并选择Tie to Entity。你还可以使用Ctrl+T快捷键。
对于笔刷实体,默认的类为func_detail。
如果你在类下拉菜单下看到其他内容,你需要更改Tools > Options > Game Configurations选项卡中的设置。
确保Default SolidEntity Class字段设置为“func_detail”。
就是这样。大功告成!你刚刚创建了一个不会将BSP切成更多的叶子的笔刷。
运行地图
按F9打开Run Map对话框,然后点击OK按钮以编译地图并在游戏里运行。
 注意:像之前一样,忽略“Map is unplayable!”错误提示框并直接按Continue来观察你的地图。
注意:像之前一样,忽略“Map is unplayable!”错误提示框并直接按Continue来观察你的地图。对于func_detail笔刷的好候选
那么你要怎么知道一个笔刷能否转变为func_detail?
细节实体如:
- 立柱和横梁
- 装饰物
- 框架
- 小平台
- 柱子
- 家具
- 桁架
 注意:请记住,你的地图必须完全封闭以正确编译,并使引擎根据可见性来执行。因此,没有密封地图的笔刷应该是
注意:请记住,你的地图必须完全封闭以正确编译,并使引擎根据可见性来执行。因此,没有密封地图的笔刷应该是func_detail。这将出现leak到外面。





























