L4D关卡制作/易碎的墙

From Valve Developer Community
Jump to navigation Jump to search
English (en)Português do Brasil (pt-br)Русский (ru)中文 (zh)Translate (Translate)

译者:joyo_a(百度ID)

在求生之路中有一些墙壁,感染者可以打破这些墙壁来给幸存者惊喜。例如,在医院里靠近电梯的地方,有几个墙壁用来被打破以便感染者进入该区域。

tutorial_standards.vmf地图里也有一个示例。

tutorial_standards地图中的一个易碎墙的示例。

创建一个func_breakable

创建易碎墙笔刷。

首先在Block Tool中创建一个墙壁笔刷。

墙壁需要安装在现有的墙壁上。

用这些尺寸做墙:

  • 128个单位长
  • 16个单位宽
  • 128个单位高
func_breakable属性。

Ctrl+T转换该笔刷为笔刷实体。

这将显示属性窗口。

更改Class为“func_breakable(en)”并点击Apply按钮。

将Breakable字段更改为All Infected。

更改Material Type为“Wood”。

更改Breakable by为“Infected”。

func_breakable的Flags选项卡。

切换到Flags选项卡。

确保这些框没有被勾选,除非你希望墙壁在接收到世界上某些其他实体的输入时才被破坏。

func_breakable的Outputs选项卡。

切换到Outputs选项卡。

添加以下输出:

  • My output:“OnBreak”
  • Targets entities named:“breakwall_decal”
  • Via this input:“Activate”

我们稍后会加上印花来打开,使得墙壁的边缘不会显得太直。

点击Apply关闭属性窗口。

将墙壁对齐起来并转移到func_breakable的墙上。

将func_breakable墙放在你想要感染者出来的墙壁上的空间。

进入纹理应用模式(Texture Application Mode)

在显示Face Edit Sheet窗口的情况下,在镜头视图中,Alt+左键点击固体墙。这样就可以对该笔刷面的纹理及其纹理对齐进行采样。

继续按住Alt键,然后右键单击紧贴固体墙的func_breakable墙面以正确对齐纹理。Alt+右键单击会传输采样面的纹理和对齐方式。

添加易碎墙模型

转到Entity Tool并从Objects列表中选择“prop_static(en)”。

在镜头视图中放置prop_staticfunc_breakable墙的旁边。

打开其属性。

点击World Model行,然后点击右边的Browse按钮。

在过滤器(filter)中输入“breakwall”。

选择模型“props_interiors/breakwall_interior.mdl”

选择易碎墙模型。

点击OK

易碎墙静态实体属性。

更改Disable Shadows为“Yes”。

点击Apply并关闭窗口。

prop_static放在func_breakable里面。

将易碎墙模型放在func_breakable墙内。

func_breakable笔刷实体被破坏时将显示该模型。

放置印花

infodecal属性。

转到Entity Tool并从Objects列表中选择“infodecal(en)”。

将其放在镜头视图中的在易碎墙的左侧的不会被破坏的墙上。

Alt+ Enter打开其属性。

overlays/breakwall纹理。

更改Name为“breakwall_decal”。

点击纹理行,然后点击右侧的Browse按钮以弹出纹理浏览器。

在过滤器中键入“overlays”。

选择纹理“overlays/breakwall”。

定位infodecal。

双击纹理,使其成为infodecal的纹理。

点击Apply并关闭窗口。

定位infodecal,使其与设置func_breakable的墙壁共享相同的平面。

overlays/breakwall_mirror纹理。

选择infodecal并复制它( Shift+Right_Arrow键)。

将它放在func_breakable的右侧。

打开其属性。

点击纹理行,然后点击右侧的Browse按钮。

在过滤器中键入“overlays”。

选择“overlays/breakwall_mirror”。

双击纹理将其设置在info_decal属性中。

点击Apply并关闭窗口。

这将覆盖墙的右侧的直边。

更新导航

重建导航区域通过这个易碎墙,以便被感染者可以干净地穿过prop_static。

易碎墙存在的导航区域。
Tip.png提示:你可以通过看向墙壁,然后在控制台中键入ent_fire !picker break来打破墙壁以测试它。