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

62 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
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;
```
相机动画播放完毕后自动释放实例,避免格斗游戏频繁的相机震动(受击、必杀技等)导致的实例泄漏。
## 完整代码解析
```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` 水平翻转标记 |