오버워치 스타일 가챠 연출에서 튀어나오는 개별 아이템 액터
More...
#include <ParadiseGachaItemActor.h>
|
| void | InitializeItemData (const FGachaResult &InResult, UMaterialInstance *InSilhouetteMat, UMaterialInstance *InRealMat) |
| | 아이템의 데이터와 시각적 에셋을 외부에서 주입하여 초기화합니다.
|
| void | LaunchToTarget (FVector TargetLocation, float FlightDuration=1.0f, float ArcHeight=300.0f) |
| | 지정된 목표 위치로 포물선을 그리며 날아갑니다.
|
| void | RevealItem () |
| | 유저가 터치했을 때 호출하여 실루엣을 벗기고 진짜 모습을 보여줍니다.
|
|
void | EnableTouch () |
| | BoxActor가 모든 구슬 착지 확인 후 호출 — 그 시점부터 터치 가능
|
| void | SetFlightSpeedMultiplier (float InMultiplier) |
| | 비행 속도 배율을 설정합니다. (BoxActor 의 꾹 누름 배속과 연동)
|
|
|
FOnGachaItemRevealed | OnItemRevealed |
| | 리빌(연출)이 완료되었음을 알리는 이벤트 방송
|
|
FOnGachaItemLanded | OnItemLanded |
| | 마지막 구슬이 바닥에 닿았을때 델리게이트
|
|
|
virtual void | BeginPlay () override |
|
virtual void | Tick (float DeltaTime) override |
|
|
TObjectPtr< UStaticMeshComponent > | ItemMesh = nullptr |
| | 아이템 외형 (충돌 및 터치 감지용)
|
|
TObjectPtr< USkeletalMeshComponent > | RevealCharacterMesh = nullptr |
| | [캐릭터 전용] 리빌 후 Idle 애니메이션을 재생할 스켈레탈 메시 컴포넌트
|
|
TObjectPtr< UStaticMeshComponent > | RevealEquipmentMesh = nullptr |
| | [장비 전용] 리빌 후 보여줄 장비 스태틱 메시 컴포넌트
|
|
TObjectPtr< UNiagaraComponent > | RarityAuraEffect = nullptr |
| | 등급별 아우라/빛기둥 이펙트를 담당하는 컴포넌트
|
|
TMap< EItemRarity, TObjectPtr< UNiagaraSystem > > | RevealVFXByRarity |
|
TObjectPtr< USoundBase > | RevealSound = nullptr |
| | 터치 시 재생될 사운드
|
| FName | GachaCameraTag = FName(TEXT("GachaCamera")) |
| | 가챠 카메라 검색에 사용할 액터 태그
|
오버워치 스타일 가챠 연출에서 튀어나오는 개별 아이템 액터
생성 시점에는 실루엣 머티리얼로 가려져 있으며, 터치 시 원본으로 변경됩니다. (SRP 적용)
◆ InitializeItemData()
| void AParadiseGachaItemActor::InitializeItemData |
( |
const FGachaResult & | InResult, |
|
|
UMaterialInstance * | InSilhouetteMat, |
|
|
UMaterialInstance * | InRealMat ) |
아이템의 데이터와 시각적 에셋을 외부에서 주입하여 초기화합니다.
- Parameters
-
| InResult | 이 아이템이 담고 있는 가챠 결과 데이터 |
| InSilhouetteMat | 덮어씌울 실루엣(검은색) 머티리얼 인스턴스 |
| InRealMat | 터치 시 보여줄 진짜 캐릭터/아이템 머티리얼 인스턴스 |
◆ LaunchToTarget()
| void AParadiseGachaItemActor::LaunchToTarget |
( |
FVector | TargetLocation, |
|
|
float | FlightDuration = 1.0f, |
|
|
float | ArcHeight = 300.0f ) |
지정된 목표 위치로 포물선을 그리며 날아갑니다.
- Parameters
-
| TargetLocation | 바닥에 안착할 최종 목표 좌표 |
| FlightDuration | 날아가는 데 걸리는 시간 (초) |
| ArcHeight | 포물선의 최고점 높이 (언리얼 유닛) |
◆ RevealItem()
| void AParadiseGachaItemActor::RevealItem |
( |
| ) |
|
유저가 터치했을 때 호출하여 실루엣을 벗기고 진짜 모습을 보여줍니다.
멀티 터치 환경이나 스킵 상황에서 호출될 수 있습니다.
◆ SetFlightSpeedMultiplier()
| void AParadiseGachaItemActor::SetFlightSpeedMultiplier |
( |
float | InMultiplier | ) |
|
비행 속도 배율을 설정합니다. (BoxActor 의 꾹 누름 배속과 연동)
- Parameters
-
| InMultiplier | 1.0 = 기본 / 2.0 = 2배속 |
◆ GachaCameraTag
| FName AParadiseGachaItemActor::GachaCameraTag = FName(TEXT("GachaCamera")) |
|
protected |
가챠 카메라 검색에 사용할 액터 태그
레벨의 CineCamera_Gacha 액터 디테일 패널 → Tags에 이 값을 추가하세요.
The documentation for this class was generated from the following files:
- Source/Paradise/Public/Actors/Gacha/ParadiseGachaItemActor.h
- Source/Paradise/Private/Actors/Gacha/ParadiseGachaItemActor.cpp