Zh/L4D Level Design/Visibility: Difference between revisions
No edit summary |
m (Multipage removal) |
||
(13 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{LanguageBar|title = L4D关卡制作/可见性}} | ||
{{Underlinked|date=January 2024}} | |||
| | |||
}} | |||
{{L4D level intro menu | |||
{{L4D level intro menu}}__TOC__ | |||
译者:joyo_a(百度ID) | 译者:joyo_a(百度ID) | ||
Line 15: | Line 14: | ||
你创建的任何不会有效阻止可见性的笔刷应该是一个称为<code>func_detail</code>的笔刷实体。这些<code>func_detail</code>笔刷在世界上仍然是固体的,但是被忽略于可见性计算。 | 你创建的任何不会有效阻止可见性的笔刷应该是一个称为<code>func_detail</code>的笔刷实体。这些<code>func_detail</code>笔刷在世界上仍然是固体的,但是被忽略于可见性计算。 | ||
* 这是游戏引擎可见性系统的一个非常基本的解释。有关BSP和可见性绘图的更多详细信息,请参阅 | * 这是游戏引擎可见性系统的一个非常基本的解释。有关BSP和可见性绘图的更多详细信息,请参阅{{L|Visibility optimization}}。 | ||
== 创建tutorial03.vmf == | == 创建tutorial03.vmf == | ||
Line 31: | Line 30: | ||
保持我们的地图叫<code>tutorial02</code>,让我们创建一个平台来延伸我们创建梯子的上层。 | 保持我们的地图叫<code>tutorial02</code>,让我们创建一个平台来延伸我们创建梯子的上层。 | ||
使用[[ | 使用[[File:Hammer select.png]]'''选择工具''',通过{{key|Shift}}拖动复制在上一个教程中我们延伸出来的后墙笔刷来创建上板。重塑它是一个从一侧的上板延伸出来的平台。 | ||
它应该是368个单位宽,176个单位长,16个单位深。 | 它应该是368个单位宽,176个单位长,16个单位深。 | ||
[[ | [[File:l4d_hammer_platform_01.jpg|thumb|left|500px|caption|复制墙刷来制作一个平台。]]{{clr}} | ||
顺便重新涂上平台的底部的纹理,使其符合天花板和地板。 | 顺便重新涂上平台的底部的纹理,使其符合天花板和地板。 | ||
[[ | [[File:l4d_hammer_platform_02.jpg|thumb|left|500px|500px|caption|纹理化平台的底部。]]{{clr}} | ||
现在,转到'''Tools'''菜单并选择'''Tie to Entity'''。你还可以使用{{key|Ctrl}}+{{key|T}}快捷键。 | 现在,转到'''Tools'''菜单并选择'''Tie to Entity'''。你还可以使用{{key|Ctrl}}+{{key|T}}快捷键。 | ||
[[ | [[File:l4d_hammer_tie_to_entity.jpg|thumb|left|300px|caption|从工具菜单中选择Tie to Entity。]]{{clr}} | ||
对于笔刷实体,默认的'''类'''为<code>func_detail</code>。 | 对于笔刷实体,默认的'''类'''为<code>func_detail</code>。 | ||
[[ | [[File:l4d_hammer_func_detail_01.jpg|thumb|left|500px|caption|使用默认类创建笔刷实体]]{{clr}} | ||
如果你在'''类'''下拉菜单下看到其他内容,你需要更改'''Tools > Options > Game Configurations'''选项卡中的设置。 | 如果你在'''类'''下拉菜单下看到其他内容,你需要更改'''Tools > Options > Game Configurations'''选项卡中的设置。 | ||
Line 53: | Line 52: | ||
确保'''Default SolidEntity Class'''字段设置为“<code>func_detail</code>”。 | 确保'''Default SolidEntity Class'''字段设置为“<code>func_detail</code>”。 | ||
[[ | [[File:l4d_hammer_options_class.jpg|thumb|left|500px|caption|将func_detail设置为默认固实体类。]]{{clr}} | ||
就是这样。大功告成!你刚刚创建了一个不会将BSP切成更多的叶子的笔刷。 | 就是这样。大功告成!你刚刚创建了一个不会将BSP切成更多的叶子的笔刷。 | ||
Line 61: | Line 60: | ||
按{{key|F9}}打开'''Run Map'''对话框,然后点击'''OK'''按钮以编译地图并在游戏里运行。 | 按{{key|F9}}打开'''Run Map'''对话框,然后点击'''OK'''按钮以编译地图并在游戏里运行。 | ||
{{ | {{Note|像之前一样,忽略“'''Map is unplayable!'''”错误提示框并直接按'''Continue'''来观察你的地图。}} | ||
== 对于func_detail笔刷的好候选 == | == 对于func_detail笔刷的好候选 == | ||
Line 76: | Line 75: | ||
* 桁架 | * 桁架 | ||
{{ | {{Note|请记住,你的地图必须完全封闭以正确编译,并使引擎根据可见性来执行。因此,没有密封地图的笔刷应该是<code>func_detail</code>。这将出现{{L|leak}}到外面。}} | ||
{{Navbar2|L4D_Level_Design/Ladders|L4D关卡制作/梯子|L4D_Level_Design_Basics_Tutorial|L4D关卡制作基础教程|L4D_Level_Design/Nav_Meshes|L4D关卡制作/导航网格}} | |||
{{ACategory|Left 4 Dead}} | |||
{{ACategory|Left 4 Dead 2}} | |||
{{ACategory|Level Design}} |
Latest revision as of 07:46, 12 July 2024




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拖动复制在上一个教程中我们延伸出来的后墙笔刷来创建上板。重塑它是一个从一侧的上板延伸出来的平台。
它应该是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按钮以编译地图并在游戏里运行。

对于func_detail笔刷的好候选
那么你要怎么知道一个笔刷能否转变为func_detail
?
细节实体如:
- 立柱和横梁
- 装饰物
- 框架
- 小平台
- 柱子
- 家具
- 桁架

func_detail
。这将出现leak 到外面。