Zh/Cables and Ropes: Difference between revisions
mNo edit summary |
mNo edit summary |
||
(2 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
{{LanguageBar|title = | {{LanguageBar|Cables|title=电缆系统}} | ||
{{Abstract Mapping:zh-cn}} | {{Abstract Mapping:zh-cn}} | ||
__NOTOC__ | __NOTOC__ | ||
''' | '''电缆'''提供了一种简单的方法,以相对较低的性能成本为场景添加动态和复杂性。电缆可以连接在移动物体之间,作为物理约束(弹簧、长度约束等)的可视化表现。电缆还可以通过关卡事件动态摇晃或断裂。 | ||
{{note| | {{note|电缆默认''不具''碰撞体积,除非特别设置。要用电缆悬挂物体必须同时使用物理约束。详情见下文。}} | ||
{{Bug|在{{Bms|4}}中<code>cable/cable.vmt</code>材质问题较多,建议使用<code>cable/cable_lit</code>或其他替代材质。}} | |||
== 放置方法 == | |||
[[File:hammer_cables.jpg|frame|Hammer中两点间铺设的电缆]] | |||
电缆线可以完全由{{Ent|move_rope}}或{{Ent|keyframe_rope}}构成,两者内部使用相同类因此可互换。首先在第一个锚点放置任一实体,然后克隆到第二个锚点位置。新实体会自动重命名,原实体将自动指向新实体。通过此方法可快速布置多点电缆(如电力线)。 | |||
== 外观表现 == | |||
电缆具有"松弛度"(Slack)参数,表示两个锚点间自然下垂的程度。松弛度能增强电缆的动态感和真实感。该数值表示超出两点直线距离的额外长度。当端点移动时,松弛度不会重新计算,因此: | |||
* 端点远离时下垂的电缆会绷紧 | |||
* 端点靠近时绷紧的电缆会下垂 | |||
(注:{{Ent|keyframe_rope}}实体的'Auto Resize'属性可实时重新计算松弛度,非常适合起重机升降物体或配重电梯等场景)Hammer中的预览线会根据输入值更新,可辅助预估引擎中的最终效果。 | |||
== | == 行为特性 == | ||
电缆锚点可与其他物体建立{{L|Entity_Hierarchy_(parenting)|层级关系}}并随之移动。SDK示例地图中,伪装成杆子的{{Ent|func_door|移动门}}作为两个电缆的动态锚点,门移动时电缆会相应伸缩。此外定时触发的{{Ent|env_shake}}会使所有锚点震动,导致电缆"弹跳"。这些技巧能有效为场景中的简单运动部件增添动态细节。 | |||
可通过玩家操作或触发输入使电缆从锚点脱离。当电缆收到"Break"输入时,会从接收输入的锚点断开。如果锚点的父实体被销毁,电缆也会脱离。SDK示例中,添加weapon_crowbar实体后,可用撬棍破坏左侧的{{Ent|func_breakable|破损杆子}},杆子断裂时会向顶部锚点发送"Break"输出,导致连接的电缆坠落。 | |||
默认情况下电缆会穿透世界几何体。某些情况下(特别是电缆断裂时)这可能影响视觉效果。通过实体上的"Collide With World"设置可使电缆与世界几何体碰撞。由于会增加性能消耗,建议仅对存在穿透问题的电缆启用此功能。 | |||
== | == 示例地图 == | ||
* <code>sdk_cables.vmf</code> | * <code>sdk_cables.vmf</code> | ||
=== | === TWHL示例地图 === | ||
* [https://twhl.info/vault.php?map=3920 | * [https://twhl.info/vault.php?map=3920 配重门系统] | ||
* [https://twhl.info/vault.php?map=3924 | * [https://twhl.info/vault.php?map=3924 爆炸震动的电缆] | ||
== | == 相关条目 == | ||
* {{L|Cables on Models}} | * {{L|Cables on Models|模型电缆布置}} | ||
* {{ | * {{Ent|phys_lengthconstraint}} - 用不可伸缩电缆悬挂物体的实体 | ||
* {{ | * {{Ent|phys_pulleyconstraint}} - 创建滑轮系统的实体 | ||
* {{ | * {{Ent|phys_spring}} - 创建弹性伸缩电缆的实体 | ||
* {{L|WiseWind}} - | * {{L|WiseWind}} - 受风影响的电力线 | ||
* {{L|Hanging lamps}} - | * {{L|Hanging lamps}} - 制作悬挂灯具道具 | ||
* {{L|Suspended Object Trap}} - | * {{L|Suspended Object Trap}} - 制作绳索悬吊的陷阱 | ||
* {{L|Cable}} - | * {{L|Cable}} - 电缆专用着色器 | ||
* {{L|SplineRope}} - | * {{L|SplineRope}} - 电缆材质着色器 | ||
{{ACategory|Level Design}} | {{ACategory|Level Design|关卡设计}} |
Latest revision as of 19:00, 4 July 2025
概括性的地图制作系列 讨论你的想法——帮助我们写你需要的文章和想法 |
---|
弹药 | 生物 | 蚁狮 | 光束和激光 | 线缆与绳索 | 动态的天空与云雾 | 色彩理论 | 战斗 | 联合军 | 压缩(起源 1) | 门 | 尘土、雾、烟 | 升降机 | 关卡转换 | 环境光效、太阳、天气、室外 | 爆炸 | 火焰 | 植被 | 玻璃和窗户 | 猎头蟹 | 生命值 | 梯子 | 光效 | 优化 | 物理 | 视网膜扫描仪 | 声效和音乐 | 特效 | 地形 | 火车 | 炮塔 | 水 | 武器 | 僵尸 |
电缆提供了一种简单的方法,以相对较低的性能成本为场景添加动态和复杂性。电缆可以连接在移动物体之间,作为物理约束(弹簧、长度约束等)的可视化表现。电缆还可以通过关卡事件动态摇晃或断裂。

放置方法
电缆线可以完全由move_rope或keyframe_rope构成,两者内部使用相同类因此可互换。首先在第一个锚点放置任一实体,然后克隆到第二个锚点位置。新实体会自动重命名,原实体将自动指向新实体。通过此方法可快速布置多点电缆(如电力线)。
外观表现
电缆具有"松弛度"(Slack)参数,表示两个锚点间自然下垂的程度。松弛度能增强电缆的动态感和真实感。该数值表示超出两点直线距离的额外长度。当端点移动时,松弛度不会重新计算,因此:
- 端点远离时下垂的电缆会绷紧
- 端点靠近时绷紧的电缆会下垂
(注:keyframe_rope实体的'Auto Resize'属性可实时重新计算松弛度,非常适合起重机升降物体或配重电梯等场景)Hammer中的预览线会根据输入值更新,可辅助预估引擎中的最终效果。
行为特性
电缆锚点可与其他物体建立层级关系 并随之移动。SDK示例地图中,伪装成杆子的func_door 移动门作为两个电缆的动态锚点,门移动时电缆会相应伸缩。此外定时触发的env_shake会使所有锚点震动,导致电缆"弹跳"。这些技巧能有效为场景中的简单运动部件增添动态细节。
可通过玩家操作或触发输入使电缆从锚点脱离。当电缆收到"Break"输入时,会从接收输入的锚点断开。如果锚点的父实体被销毁,电缆也会脱离。SDK示例中,添加weapon_crowbar实体后,可用撬棍破坏左侧的func_breakable 破损杆子,杆子断裂时会向顶部锚点发送"Break"输出,导致连接的电缆坠落。
默认情况下电缆会穿透世界几何体。某些情况下(特别是电缆断裂时)这可能影响视觉效果。通过实体上的"Collide With World"设置可使电缆与世界几何体碰撞。由于会增加性能消耗,建议仅对存在穿透问题的电缆启用此功能。
示例地图
sdk_cables.vmf
TWHL示例地图
相关条目
- 模型电缆布置
- phys_lengthconstraint - 用不可伸缩电缆悬挂物体的实体
- phys_pulleyconstraint - 创建滑轮系统的实体
- phys_spring - 创建弹性伸缩电缆的实体
- WiseWind - 受风影响的电力线
- Hanging lamps - 制作悬挂灯具道具
- Suspended Object Trap - 制作绳索悬吊的陷阱
- Cable - 电缆专用着色器
- SplineRope - 电缆材质着色器