参考数据资产
UCFBreakableDefinition
模块CrushformBreakable头文件CFBreakableDefinition.h父类UPrimaryDataAsset
一种可破坏单元:其完好网格体、烘焙的碎片以及破坏调节。
函数
AUTHORITY · 服务器,每个端LOCAL · 本机PURE · 只读
uint8 ResolveHitLevel(FName HitKind, float Strength, uint8 MaxLevel, uint8& OutResponseIndex) const
PUREC++ ONLY
外部命中(HitKind)所达到的等级(0 表示无)及其在 HitResponses 中的行(为 0 时为 CFBreakable::NoResponse)。MaxLevel 为该单元仍可提升到的最高等级。
bool IsIntactMeshRequired() const
PUREC++ ONLY
IsDataValid 是否要求 IntactMesh。若定义的碎块并非从网格体切割而来,则返回 false。
FGameplayTag GetFeedbackTag(ECFBreakableFeedbackKind Kind) const
PUREC++ ONLY
游戏为 Kind 类反馈播放的音效与特效所用的标签;为空时,宿主播放插件为该事件设置的标签(CFImpactTags)。
const FCFBreakableHitResponse* GetHitResponse(uint8 ResponseIndex) const
PUREC++ ONLY
HitResponses 中位于 ResponseIndex 处的行;对于 NoResponse 或超出范围的索引,返回 nullptr。
float GetBreakFeedbackIntensity(const FVector& ImpactVelocity) const
PUREC++ ONLY
破坏反馈强度,范围 0..1:ImpactVelocity 的速度(cm/s)除以 SpeedForFullBreakIntensityCmS,并限制在该范围内。
属性
TObjectPtr<UStaticMesh> IntactMesh
单元完好时显示的网格体;烘焙会从它上面切出碎片碎块。
- 分类
- Mesh
bool bBakeAsSinglePiece = false
- 默认值
- false
- 分类
- Bake
float DensityKgPerCm3 = 0.0005f
- 默认值
- 0.0005f
- 分类
- Bake
float MaxPieceLengthCm = 60.f
- 默认值
- 60.f
- 分类
- Bake
float MinPieceVolumeCm3 = 50.f
- 默认值
- 50.f
- 分类
- Bake
float CutTiltDegrees = 15.f
每次锯切都会随机向任一侧倾斜,倾斜角最大不超过此度数。
- 默认值
- 15.f
- 分类
- Bake
int32 BakeSeed = 1
烘焙随机选择(切割倾斜、玻璃碎片布局)所用的种子。修改该值可得到另一组碎块。
- 默认值
- 1
- 分类
- Bake
int32 BakeRevision = 0
由烘焙写入:每成功烘焙一次便递增 1。
- 默认值
- 0
- 分类
- Bake
TArray<FCFBreakablePiece> Pieces
烘焙生成的碎片碎块;由烘焙写入,不应手动编辑。
- 分类
- Bake
float InheritVelocityFraction = 0.6f
- 默认值
- 0.6f
- 分类
- Scatter
float ScatterSpeedCmS = 300.f
- 默认值
- 300.f
- 分类
- Scatter
float ImpactFalloffCm = 150.f
- 默认值
- 150.f
- 分类
- Scatter
float MaxAngularSpeedDegS = 540.f
被抛出的碎块初始的最快旋转速度,单位为度每秒。每块碎片各分得其中的一个随机份额;离撞击点越远,份额越小。
- 默认值
- 540.f
- 分类
- Scatter
float SpeedForFullBreakIntensityCmS = 1500.f
- 默认值
- 1500.f
- 分类
- Feedback
bool bDebrisLastsUntilRespawn = false
- 默认值
- false
- 分类
- Debris
bool bDebrisPushedByVehicles = false
- 默认值
- false
- 分类
- Debris
float DebrisVehicleContactSeconds = 3.5f
- 默认值
- 3.5f
- 分类
- Debris
bool bDebrisCollidesWithDebris = true
- 默认值
- true
- 分类
- Debris
float DebrisLifetimeSeconds = 8.f
- 默认值
- 8.f
- 分类
- Debris
float DebrisRestSeconds = 3.f
- 默认值
- 3.f
- 分类
- Debris
float DebrisSinkSeconds = 1.f
静止碎块的静止时间结束后,下沉消失所需的秒数。
- 默认值
- 1.f
- 分类
- Debris
TArray<float> HitLevelThresholds
- 分类
- Hits
TArray<FCFBreakableHitResponse> HitResponses
- 分类
- Hits