载入中...
搜索中...
未找到
eve::vehicle 命名空间参考

驾驶者接口与玩家控制状态。 更多...

类

struct  ArmorZone
 装甲区(Phase 4 伤害管线使用;Phase 2 仅作为定义数据保留)。 更多...
 
class  IVehicleDamageModifier
 伤害修饰器(游戏侧注册,多重监听,按优先级调用)。 更多...
 
class  IVehicleDriver
 驾驶者:把某乘客的控制转成载具输入。 更多...
 
class  IVehicleMobility
 移动模型:读输入、更新运动状态。 更多...
 
struct  MountDef
 武器挂点声明(载具模板的一部分)。 更多...
 
struct  PlayerControl
 一名玩家的原始控制(归一化,游戏侧填充)。角度为度。 更多...
 
struct  SeatDef
 座位声明(载具模板的一部分,FPS 面)。 更多...
 
struct  SuspensionConfig
 3D 悬架参数(车辆模板的一部分)。 更多...
 
struct  SuspensionWheel
 3D 悬架车轮配置(raycast 悬架用)。 更多...
 
class  Vehicle
 载具模块(eve.Vehicle)。 更多...
 
class  VehicleAttributeAdapter
 Adapts VehicleEntity health and armor to the common attribute core. 更多...
 
struct  VehicleDefinition
 载具模板(registerVehiclesFromJson 注册,进程级注册表)。 更多...
 
class  VehicleDefinitionRuntime
 Binds a VehicleDefinition to a VehicleEntity without a new root type. 更多...
 
class  VehicleEffectAdapter
 Vehicle adapter with one common container and one typed executor. 更多...
 
struct  VehicleEffectDefinition
 Strong vehicle definition projected into the common lifecycle. 更多...
 
class  VehicleEffectExecutor
 Vehicle executor applying armor-zone and disable strategies. 更多...
 
struct  VehicleEffectSnapshot
 In-memory vehicle effect snapshot. 更多...
 
struct  VehicleEffectTarget
 Mutable vehicle state changed by the effect executor. 更多...
 
struct  VehicleEffectUpdate
 Result of one vehicle lifecycle step and armor settlement. 更多...
 
class  VehicleEntity
 载具实体:数据全部在组件里,行为在 VehicleSystem。 更多...
 
struct  VehicleEvent
 载具事件(帧缓存,脚本轮询)。 更多...
 
struct  VehicleInput
 每帧驾驶输入(由 PlayerDriver / OrderSystem / 脚本写入)。 更多...
 
struct  VehicleOrder
 一条 Vehicle 领域命令(生命周期由 Vehicle order adapter 执行)。 更多...
 
class  VehicleOrderQueueAdapter
 Maps VehicleOrder domain payloads onto an orders::CommandQueue. 更多...
 
class  VehiclePhysics
 VehiclePhysics public API. 更多...
 
class  VehiclePhysicsBinding
 
struct  VehicleRuntimeState
 Mutable state owned by one typed vehicle runtime instance. 更多...
 
class  VehicleSeatContainerAdapter
 Transactional adapter over one VehicleEntity::Seats component. 更多...
 
struct  VehicleSeatContainerObject
 Owning snapshot payload for a vehicle occupant membership. 更多...
 
class  VehicleSettlementAdapter
 Settles damage/healing against one VehicleEntity. 更多...
 
class  VehicleSystem
 载具系统:移动注册 + 命令处理 + 更新。 更多...
 

类型定义

using VehicleEventSink = std::function< void(const VehicleEvent &)>
 事件汇:由 Vehicle 模块(或测试)注册,把事件写入自己的队列。
 

枚举

enum class  VehicleEffectKind : std::uint8_t { Damage , Repair , Disable }
 Vehicle-specific effect strategy. 更多...
 
enum class  VehiclePhysicsStatus : uint8_t { Applied , Unavailable }
 Outcome of an optional physics attach, detach, or mobility step. 更多...
 
enum class  VehicleOrderType : uint8_t {
  Move , AttackMove , Attack , Stop ,
  Hold
}
 RTS 命令类型。 更多...
 
enum class  VehicleEventType : uint8_t { OrderCompleted , Damaged , Destroyed }
 载具事件类型。 更多...
 

函数

 Module_IMPL (Vehicle, new Vehicle())
 
const char * vehicleOrderTypeName (VehicleOrderType type)
 命令类型的字符串名("move" | "attack_move" | ...)。
 
const char * vehicleEventTypeName (VehicleEventType type)
 事件类型的字符串名。
 
eve::Result< VehicleDefinition > parseVehicleDefinition (const eve::definitions::Definition &source)
 Parse one canonical registry definition into a short-lived typed projection.
 
std::ostream & operator<< (std::ostream &stream, VehicleOrderType type)
 Writes the stable vehicle-order protocol name.
 

详细描述

驾驶者接口与玩家控制状态。

载具行为静态系统:移动模型注册表 + 命令队列 + 每帧推进。

Vehicle-to-orders compatibility adapter.

载具移动模型接口。

FPS/直接驾驶面:游戏每帧把玩家输入(键盘/鼠标/手柄)写入 VehicleSystem::setPlayerControls,座位系统把控制路由给驾驶员座位 (移动输入)与武器座位(瞄准/开火)。新增一种驾驶行为(AI 驾驶、 触屏、脚本驾驶)= 实现 IVehicleDriver 并按名字注册。

新增一种载具类型(汽车 / 坦克 / 船 / 摩托 / 悬浮 / 直升机)= 实现本接口 并按名字注册到 VehicleSystem(registerMobility),不需要改引擎头文件。 移动模型只做"输入 → 运动"的转换:读 v.input(),写 v.motion() (物理模式下通过 IVehicleBody 操作刚体)。

The adapter owns the generic order lifecycle while retaining VehicleOrder as the Vehicle domain payload. Vehicle commands must not be added to the generic orders module; the adapter only maps their kind and stable id.

类型定义说明

◆ VehicleEventSink

using eve::vehicle::VehicleEventSink = typedef std::function<void(const VehicleEvent&)>

事件汇:由 Vehicle 模块(或测试)注册,把事件写入自己的队列。

在文件 VehicleSystem.h 第 19 行定义.

枚举类型说明

◆ VehicleEffectKind

enum class eve::vehicle::VehicleEffectKind : std::uint8_t
strong

Vehicle-specific effect strategy.

枚举值
Damage 
Repair 
Disable 

在文件 VehicleEffects.h 第 22 行定义.

◆ VehicleEventType

enum class eve::vehicle::VehicleEventType : uint8_t
strong

载具事件类型。

枚举值
OrderCompleted 
Damaged 
Destroyed 

在文件 VehicleTypes.h 第 153 行定义.

◆ VehicleOrderType

enum class eve::vehicle::VehicleOrderType : uint8_t
strong

RTS 命令类型。

枚举值
Move 
AttackMove 
Attack 
Stop 
Hold 

在文件 VehicleTypes.h 第 42 行定义.

◆ VehiclePhysicsStatus

enum class eve::vehicle::VehiclePhysicsStatus : uint8_t
strong

Outcome of an optional physics attach, detach, or mobility step.

枚举值
Applied 

Physics handled the request.

Unavailable 

No physics module, no body, or invalid arguments.

在文件 VehiclePhysics.h 第 21 行定义.

函数说明

◆ Module_IMPL()

eve::vehicle::Module_IMPL ( Vehicle  ,
new   Vehicle() 
)

◆ operator<<()

std::ostream & eve::vehicle::operator<< ( std::ostream &  stream,
VehicleOrderType  type 
)
inline

Writes the stable vehicle-order protocol name.

Vehicle order type name.

在文件 VehicleTypes.h 第 55 行定义.

引用了 type , 以及 vehicleOrderTypeName().

◆ parseVehicleDefinition()

eve::Result< VehicleDefinition > eve::vehicle::parseVehicleDefinition ( const eve::definitions::Definition &  source)

Parse one canonical registry definition into a short-lived typed projection.

参数
sourceImmutable definition owned by DefinitionRegistry.
返回
A typed projection for one synchronous consumer, or a structured parse failure.
备注
The returned value is not an additional definition store. Callers that need to retain the projection must own a copy for their runtime instance.

在文件 VehicleDefinitionRuntime.cpp 第 98 行定义.

引用了 eve::vehicle::VehicleDefinition::accel, eve::vehicle::MountDef::aimMode, eve::vehicle::VehicleDefinition::armorZones, eve::vehicle::SeatDef::cameraMode, eve::vehicle::VehicleDefinition::category, eve::vehicle::SuspensionWheel::damping, eve::vehicle::SuspensionWheel::drive, eve::vehicle::SuspensionConfig::driveForce, eve::vehicle::SeatDef::driver, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::vehicle::MountDef::firingArc, eve::Value::fromJson(), eve::vehicle::VehicleDefinition::id, index, eve::InvalidArgument, eve::vehicle::SuspensionConfig::lateralGrip, limit, limits, eve::vehicle::VehicleDefinition::maxHealth, eve::vehicle::VehicleDefinition::maxSpeed, eve::vehicle::SuspensionConfig::maxTravel, eve::vehicle::VehicleDefinition::mobility, eve::vehicle::SeatDef::mountIndex, eve::vehicle::VehicleDefinition::mounts, eve::vehicle::ArmorZone::mult, eve::vehicle::ArmorZone::name, eve::vehicle::MountDef::name, eve::vehicle::SeatDef::name, eve::vehicle::ArmorZone::node, number, output, eve::vehicle::MountDef::pitchMax, eve::vehicle::MountDef::pitchMin, eve::vehicle::SuspensionWheel::radius, eve::vehicle::VehicleDefinition::radius, eve::vehicle::SuspensionWheel::restLength, eve::vehicle::MountDef::rotSpeed, eve::vehicle::VehicleDefinition::seats, source, eve::vehicle::SuspensionWheel::steer, eve::vehicle::SuspensionWheel::stiffness, eve::Result< T >::success(), eve::vehicle::VehicleDefinition::suspension, eve::vehicle::VehicleDefinition::tags, text, eve::vehicle::VehicleDefinition::turnRate, eve::vehicle::MountDef::type, value, values, eve::vehicle::MountDef::weapon, eve::vehicle::SuspensionConfig::wheels, eve::vehicle::SuspensionWheel::x, eve::vehicle::SuspensionWheel::y, eve::vehicle::MountDef::yawMax, eve::vehicle::MountDef::yawMin , 以及 eve::vehicle::SuspensionWheel::z.

被这些函数引用 eve::vehicle::VehicleDefinitionRuntime::create(), eve::vehicle::VehicleDefinitionRuntime::definition(), eve::vehicle::Vehicle::registerVehiclesFromJson() , 以及 eve::vehicle::VehicleDefinitionRuntime::reload().

◆ vehicleEventTypeName()

const char * eve::vehicle::vehicleEventTypeName ( VehicleEventType  type)

事件类型的字符串名。

返回
Borrowed non-null pointer to immutable process-lifetime storage. @ownership The returned static text is not caller-owned and must not be freed. @lifetime Valid for the lifetime of the process; copy it when storing mutable data. @thread Thread-safe because the characters are immutable. @reentrancy Does not invoke callbacks.

在文件 Vehicle.cpp 第 90 行定义.

引用了 Damaged, Destroyed, OrderCompleted , 以及 type.

被这些函数引用 eve::vehicle::Vehicle::getEventType().

◆ vehicleOrderTypeName()

EVENGINE_API_DOMAINS const char * eve::vehicle::vehicleOrderTypeName ( VehicleOrderType  type)

命令类型的字符串名("move" | "attack_move" | ...)。

返回
Borrowed non-null pointer to immutable process-lifetime storage. @ownership The returned static text is not caller-owned and must not be freed. @lifetime Valid for the lifetime of the process; copy it when storing mutable data. @thread Thread-safe because the characters are immutable. @reentrancy Does not invoke callbacks.

在文件 Vehicle.cpp 第 79 行定义.

引用了 Attack, AttackMove, Hold, Move, Stop , 以及 type.

被这些函数引用 eve::vehicle::VehicleOrderQueueAdapter::append(), eve::vehicle::Vehicle::getCurrentOrderType(), eve::vehicle::VehicleOrderQueueAdapter::interrupt(), operator<<() , 以及 eve::vehicle::VehicleOrderQueueAdapter::replace().