Files
BlueRoseNote/03-UnrealEngine/卡通渲染相关资料/渲染功能/ARC/Gameplay/相机系统扩展.md

62 lines
1.6 KiB
Markdown
Raw Normal View History

2026-05-03 20:37:58 +08:00
---
title: 相机系统扩展
date: 2026-05-03 00:00:00
excerpt: 相机动画水平翻转和自动释放机制
tags:
- ARC
- Gameplay
- Camera
rating: ⭐
---
# 相机系统扩展
返回 [[Gameplay]]
## 概述
为格斗游戏的相机需求扩展了 `CameraAnimInst`
## 水平翻转bPlayCameraAnimFlipH
```cpp
bool bPlayCameraAnimFlipH;
```
在格斗游戏中,当玩家 1 和玩家 2 交换左右位置时(交叉),相机动画需要水平翻转以保持视觉一致性。此标记控制相机震动、特写等动画的水平翻转。
## 自动释放bAutoReleaseWhenFinished
```cpp
bool bAutoReleaseWhenFinished;
```
相机动画播放完毕后自动释放实例,避免格斗游戏频繁的相机震动(受击、必杀技等)导致的实例泄漏。
2026-05-03 21:38:46 +08:00
## 完整代码解析
2026-05-03 20:37:58 +08:00
2026-05-03 21:38:46 +08:00
```cpp
// CameraAnimInst.h — 相机动画实例扩展
class UCameraAnimInst
{
// ASW 新增:播放完毕后自动释放实例
// 格斗游戏频繁触发相机震动(受击、必杀技),
// 没有自动释放会导致实例泄漏
UPROPERTY()
bool bAutoReleaseWhenFinished;
// ASW 新增:水平翻转相机动画
// 格斗游戏中玩家交换左右位置(交叉)时,
// 相机震动需要水平翻转以保持视觉一致
UPROPERTY()
bool bPlayCameraAnimFlipH;
};
```
## 代码修改情况
| 文件路径 | 修改类型 | 修改内容 |
|---------|---------|---------|
| `Source/Runtime/Engine/Classes/Camera/CameraAnimInst.h` | 新增 | `bAutoReleaseWhenFinished` 自动释放标记 |
| `Source/Runtime/Engine/Classes/Camera/CameraAnimInst.h` | 新增 | `bPlayCameraAnimFlipH` 水平翻转标记 |