载入中...
搜索中...
未找到
VehicleDriver.h
浏览该文件的文档.
1#pragma once
2
12namespace eve::vehicle {
13
14struct VehicleInput;
15class VehicleEntity;
16
19 float throttle = 0.f;
20 float steer = 0.f;
21 float brake = 0.f;
22 bool handbrake = false;
23 bool fire = false;
24 float aimYaw = 0.f;
25 float aimPitch = 0.f;
26};
27
30public:
32 virtual ~IVehicleDriver() = default;
33
42 virtual const char* name() const = 0;
43
45 virtual bool sample(VehicleEntity& v, int occupantId, VehicleInput& out) = 0;
46};
47
48} // namespace eve::vehicle
float v
驾驶者:把某乘客的控制转成载具输入。
virtual const char * name() const =0
稳定名字("player" 等)。
virtual bool sample(VehicleEntity &v, int occupantId, VehicleInput &out)=0
采样 occupantId 乘客的控制;返回是否有效(有效则填充 out)。
virtual ~IVehicleDriver()=default
Releases IVehicleDriver resources.
载具实体:数据全部在组件里,行为在 VehicleSystem。
驾驶者接口与玩家控制状态。
一名玩家的原始控制(归一化,游戏侧填充)。角度为度。
每帧驾驶输入(由 PlayerDriver / OrderSystem / 脚本写入)。