跳转到内容
CRUSHFORMV1.1.0
在 Fab 上获取

参考组件

UCFChaosVehicleAdapterComponent

模块CrushformChaos头文件CFChaosVehicleAdapterComponent.h父类UCFVehicleAdapterComponent

蓝图:Crushform Chaos Vehicle Adapter

Chaos 轮式车辆的车辆适配器(带有 UChaosWheeledVehicleMovementComponent 的 AWheeledVehiclePawn):其车轮来自移动组件的 WheelSetups 与车轮状态,而非列表与射线检测。车轮网格体是附着在车辆网格体上、位于每个车轮骨骼处的网格体组件;若车辆的车轮仅由骨骼构成,则没有轮胎形变,也没有车轮污垢。轮胎的下沉量在骨骼移动之后,沿拥有者的上方向施加,因为车轮骨骼会旋转并转向;其推挤量与之一并施加,采用拥有者的空间。基类的 Crushform|Wheels 属性(车轮列表、地面通道、探测边距)在此不起作用,因此 Details 将其隐藏。Chaos 没有点火这一过程:只要移动组件存在,发动机就在运行,其转速介于怠速与最高转速之间,并受驾驶员的油门控制,包括踩刹车时的倒车。

函数

  • GetEngineRunState发动机处于关闭、启动转动还是运转状态。
  • GetEngineRPM发动机转速,单位 rpm。
  • GetEngineIdleRPM怠速转速,单位 rpm:运行中的发动机的声音永远不会低于此值。
  • GetEngineMaxRPM最高发动机转速,单位 rpm;0 表示无限制。
  • GetEngineLoad油门,范围 0..1。
  • BuildWheelContacts该帧的车轮,每帧在 tick 中调用一次。
  • CollectWheelMeshes车轮的网格:轮胎、车轮污垢,以及车身不会形变的网格。
  • BuildTireWheels车轮的轮胎,各自包含其网格、物理半径、HostIndex、当前偏移量以及 bAcceptsPush。
  • BuildLoadRatios按 HostIndex 划分的接触力与标称载荷之比;本适配器没有力模型,因此不提供任何值。
  • SetWheels替换 Wheels 中选定的车轮,用于运行时创建的车轮。
  • SetBraking车辆的制动强度,范围 0..1,作用于每个车轮:制动时滚动 FX 会喷溅得更多。
  • SetCabinMuffled当听者位于该车辆车厢内时,使滚动声和发动机声变闷:若 bOverrideCabinMuffling 为 true,则使用适配器的车厢数值;否则车轮使用 Crushform Wheels 设置中的值,发动机使用 Crushform Engine 设置中的值。
  • GetDeform使车身凹陷的形变组件;没有 Dirt And Dents 时为 null。
  • GetGlass保存车辆玻璃面板的组件;只有 Glass 和 Dirt And Dents 都开启时才存在,否则为 null。
  • GetTires轮胎组件;没有 Tires 时为 null。
  • GetPropContact用于破坏车辆撞入的道具的组件;没有 Breaks Props 时为 null。
  • GetImpactFeedback车身的撞击反馈组件;没有 Impact Feedback 时为 null。
  • GetPartImpactFeedback铰接部件的撞击反馈组件;只有 Impact Feedback 和 Dirt And Dents 都开启时才存在,否则为 null。
  • GetRollingAudio滚动声组件;没有 Rolling Sound 时为 null。
  • GetRollingFX滚动特效组件;没有 Rolling FX 时为 null。
  • GetEngineAudio发动机声组件;没有 Engine Sound 时为 null。
  • GetDamageZones形变组件的 Get Damage Zones:车身每一侧的凹陷程度,以服务器确认的结果为准。
  • GetDamageInBox形变组件的 Get Damage In Box:拥有者根空间中某个盒体内的损伤。
  • GetWheelGatherCount本帧车轮被构建(BuildWheelContacts)的次数;测试会对其计数。

属性

  • Authority决定由哪一端模拟车辆并判定其撞击。
  • DeformProfile车身的凹陷和污垢;为空时使用项目默认值(Project Settings -> Plugins -> Crushform)。
  • TireProfile轮胎;为空时使用项目默认值(Project Settings -> Plugins -> Crushform Tire)。
  • bDirtAndDents车身会凹陷并变脏(UCFDeformComponent);玻璃面板和车轮污垢需要它。
  • bGlass车辆上的玻璃面板(UCFGlassComponent)会开裂和破碎;需要 Dirt And Dents,由它负责找到这些面板。
  • bTires轮胎在车轮网格上发生形变(UCFTireComponent)。
  • bRollingSound每个车轮播放其所在表面的滚动声(UCFRollingAudioComponent);仅为表现效果,专用服务器上静音。
  • bRollingFX每个车轮显示其所在表面的滚动特效(UCFRollingFXComponent);仅为表现效果,专用服务器上不显示。
  • bEngineSound发动机根据下方的发动机事件播放其声音(UCFEngineAudioComponent);仅为表现效果,专用服务器上静音。
  • bImpactFeedback撞击会在每一端上播放撞击声和特效(UCFNetImpactFeedbackComponent);开启 Dirt And Dents 后,铰接部件的撞击和碰撞也会播放,并且在每一端上基于其自身的物理模拟进行播放(UCFPartImpactFeedbackComponent)。
  • bBreaksProps车辆会打碎其撞上的可破坏道具(UCFPropContactComponent)。
  • ImpactEventTag撞击反馈在碰撞时播放的内容:默认为插件的 Crushform.Impact.Vehicle.Crash;为空则不播放撞击声。
  • ImpactImpulsePerKgForFullIntensity以全强度播放的撞击的速度变化量,单位 cm/s;适配器生成撞击反馈时读取。
  • ImpactMinImpulsePerKg速度变化量低于此值的撞击不播放任何声音,单位 cm/s;适配器生成撞击反馈时读取。
  • PropContactMinSpeedCmS低于此速度时,车辆不会破坏任何道具,单位 cm/s;适配器生成道具接触时读取。
  • bOverrideRollingSoundTuning该车辆的滚动声使用 Rolling Sound Tuning,而非 Crushform Wheels 设置中的 Tuning;适配器生成滚动声时读取。
  • RollingSoundTuning
  • bOverrideCabinMufflingSet Cabin Muffled 使用该车辆的 Cabin Volume Scale 和 Cabin Low Pass Frequency,而不是 Crushform Wheels 与 Crushform Engine 设置中的对应值。
  • CabinVolumeScale
  • CabinLowPassFrequency
  • bOverrideRollingFXTuning该车辆的滚动特效使用 Rolling FX Tuning,而非 Crushform Wheels 设置中的 FX Tuning;适配器生成滚动特效时读取。
  • RollingFXTuning
  • EngineSoundProfile发动机声音;为空时使用项目默认值(Project Settings -> Plugins -> Crushform Engine)。
  • EngineSoundOffset发动机声音的播放位置,相对于拥有者的根组件;适配器生成发动机声音时读取。
  • RamAllowanceMps在 Owning Client 权威模型下,客户端报告的撞击速度比车辆近期峰值速度快出多少(单位 m/s)时,服务器才会拒绝。

事件

  • OnDamageChanged形变组件的 On Damage Changed,原样转发:适配器在注册时自行创建该组件,因此蓝图可在此处绑定该事件。