修复打靶场射击链路:发射源/玩家控制走 primary 相机实体
- TestShoot 发射源从 EditorCamera(视口 UI 状态,PIE 渲染不用它) 改为绑定实体位姿,挂 primary 相机实体即第一人称枪口; 仅光标捕捉态开火,防编辑器交互误射 - 新增 PlayerController:FPS 控制(鼠标捕捉/Esc 释放/点视口重捕、 yaw+pitch 转向、WASD+Space/Ctrl 移动+Shift 加速),驱动 primary 相机实体 Transform,PIE 所见即玩家所见 - 靶子/碎片玻璃 alpha 0.42/0.45→0.85、自发光 2→3:低不透明度在 亮背景下靶子几乎隐形(用户误认 HUD 横条为靶子)
This commit is contained in:
@@ -21,9 +21,12 @@
|
||||
// 跨回合复用;改参数重开局才重建。碎片几何由 FractureLib 每靶
|
||||
// 现场生成(唯一代键,自管回收)。
|
||||
//
|
||||
// 【演示步骤】任意实体挂 GameDirector,相机实体挂 TestShoot →
|
||||
// Play → RMB 飞行瞄准靶阵 → 左键射击:靶子玻璃式碎裂 + 得分点
|
||||
// 亮起,倒计时条流逝,时间到结算(控制台输出得分),R 重开。
|
||||
// 【演示步骤】任意实体挂 GameDirector;场景 primary 相机实体
|
||||
// (CameraComponent.primary=true,PIE 渲染源)挂 PlayerController +
|
||||
// TestShoot,摆到面向靶阵(如原点朝 -Z 正对 Center 默认位)→ Play:
|
||||
// 光标自动捕捉(Esc 释放、点视口重捕),WASD/Space/Ctrl 移动 +
|
||||
// 鼠标转向,左键射击:靶子玻璃式碎裂 + 得分点亮起,倒计时条流逝,
|
||||
// 时间到结算(控制台输出得分),R 重开。
|
||||
//
|
||||
// 【缺失能力记录(玩法侧线的下一批依据)】
|
||||
// - UI/HUD 文字(倒计时数字/得分数字只得用图元条凑)
|
||||
@@ -103,10 +106,12 @@ namespace {
|
||||
}
|
||||
|
||||
// 玻璃材质:低金属度高光洁 + alpha 混合 + 靶色自发光
|
||||
// (alpha 0.85、自发光 3——曾用 alpha 0.42 近乎全透,亮背景
|
||||
// 下靶子隐形;拉高保靶子在浅色环境里醒目)
|
||||
mesh.name = "target";
|
||||
mesh.params.factors = {0.05f, 0.15f, 0.0f, 0.0f};
|
||||
mesh.params.baseColor = glm::vec4{color, 0.42f};
|
||||
mesh.params.surface = {1.5f, 0.0f, 2.0f, 0.0f};
|
||||
mesh.params.baseColor = glm::vec4{color, 0.85f};
|
||||
mesh.params.surface = {1.5f, 0.0f, 3.0f, 0.0f};
|
||||
mesh.params.emissiveFactor = glm::vec4{color * 0.85f, 1.0f};
|
||||
mesh.transparent = true;
|
||||
return parsed;
|
||||
|
||||
Reference in New Issue
Block a user