- Add RoomStreamingManager to manage room loading and unloading based on player proximity. - Create StreamingBudgetConfigSO for memory and performance budgeting of the streaming system. - Introduce TransitionDirector to handle seamless and atmospheric fade transitions between rooms. - Develop WorldGraph to represent room connectivity and facilitate neighbor queries and distance calculations. - Implement RoomNode and RoomEdge classes to structure room data and connections.
44 lines
1.6 KiB
C#
44 lines
1.6 KiB
C#
namespace BaseGames.Enemies.Perception
|
||
{
|
||
/// <summary>
|
||
/// <see cref="EnemySensorHub"/> 槽位名称常量。
|
||
///
|
||
/// 统一定义字符串键,避免在 BD Task Inspector 和代码中散布魔法字符串。
|
||
/// Prefab 上 EnemySensorHub 组件的 slotName 字段必须与此处常量保持一致。
|
||
/// </summary>
|
||
public static class SensorSlotNames
|
||
{
|
||
/// <summary>
|
||
/// 警戒范围(RangeSensor2D):玩家进入此圈触发 Alert 阶段。
|
||
/// 通常半径大于攻击范围,小于视线检测范围。
|
||
/// </summary>
|
||
public const string Aggro = "aggro";
|
||
|
||
/// <summary>
|
||
/// 视线检测(LOSSensor2D):敌我之间无遮挡时持续为 true。
|
||
/// 由 BatchLOSSystem 批量计算,BD_IsPlayerVisible 读取结果。
|
||
/// </summary>
|
||
public const string LOS = "los";
|
||
|
||
/// <summary>
|
||
/// 近战攻击范围(RangeSensor2D):玩家进入时触发近战攻击条件。
|
||
/// </summary>
|
||
public const string AttackMelee = "attack_melee";
|
||
|
||
/// <summary>
|
||
/// 远程攻击范围(RangeSensor2D):玩家进入时触发远程攻击条件。
|
||
/// </summary>
|
||
public const string AttackRange = "attack_range";
|
||
|
||
/// <summary>
|
||
/// 前方墙体(RaySensor2D):水平方向检测,用于巡逻转向。
|
||
/// </summary>
|
||
public const string WallAhead = "wall_ahead";
|
||
|
||
/// <summary>
|
||
/// 前方悬崖(RaySensor2D):斜向下检测地面是否存在,用于巡逻转向。
|
||
/// </summary>
|
||
public const string Ledge = "ledge";
|
||
}
|
||
}
|