unreal
-
[Unreal/C++] 런타임에서 몽타주에 노티파이 추가하는 방법게임 엔진/Unreal 2024. 1. 25. 17:20
애니메이션 몽타주 로드 시 다음 코드 실행하면 된다. _pAnimAsset = 대충 애니메이션 로드하는 함수. UAnimMontage* pAnimMtg = Cast(_pAnimAsset); if (pAnimMtg == nullptr) { return; } // 노티파이 추가 int newIndex = pAnimMtg->Notifies.Add(FAnimNotifyEvent()); FAnimNotifyEvent& newEvent = pAnimMtg->Notifies[newIndex]; if (UObject* AnimNotifyClass = NewObject(pAnimMtg, UCustomNotify::StaticClass(), NAME_None, EObjectFlags::RF_Transactional)) {..
-
[Unreal/C++] "Unable to destroy previously allocated sequence instance - this could indicate a memory leak." 에러 처리게임 엔진/Unreal 2023. 6. 17. 18:08
정석적인 방법은 Component 등 플레이 마다 Begin과 End 함수가 항상 동작하는 액터에서 시퀀스 플레이어를 관리하여 Begin에 생성, End에 제거하는 식으로 사용하는 것이다. 코드 참고 - ActorSequenceComponent 코드 참고 - ActorSequenceComponent void UActorSequenceComponent::BeginPlay() { Super::BeginPlay(); if (Sequence != nullptr) { SequencePlayer = NewObject(this, "SequencePlayer"); SequencePlayer->SetPlaybackClient(this); // Initialize this player for tick as soon as ..
-
[Unreal/C++] 애니메이션 State Event 타이밍 이슈 처리게임 엔진/Unreal 2023. 6. 17. 17:17
애니메이션 State Event를 사용하는데, 다른 캐릭터의 이벤트 타이밍이 정상적으로 동작하지 않는다면 다음 옵션이 켜져 있는지 확인 후 해당 애니메이션에서만 옵션을 False로 처리하자. USkinnedMeshComponent::bEnableUpdateRateOptimizations (기본값 : True) 해당 옵션이 활성화 되어 있으면 화면에 표시되는 크기에 따라 애니메이션 업데이트를 늦추게 된다. 일반적인 경우에는 성능을 위해 필요하지만 이벤트가 정확한 타이밍에 발동해야 하는 경우에는 해당 동작에만 이 옵션을 꺼주면 정상적인 동작을 확인할 수 있다. bEnableUpdateRateOptimizations | Unreal Engine Documentation bEnableUpdateRateOptim..
-
[Unreal 5] C++에서 이펙트 Looping 체크 방법게임 엔진/Unreal 2022. 12. 21. 19:09
Particle System에서 Looping 체크 방법 UParticleSystemComponent->Template->IsLooping() 으로 체크. Niagara에서 Looping 체크 방법 불가능. ※ UNiagaraComponent->GetAsset()->IsLooping()이 있으나 함수 내부가 구현되어 있지 않다. IsLooping 꼬라지 bool IsLooping() { return false; } 참고문헌 UParticleSystemComponent | Unreal Engine Documentation UParticleSystemComponent A particle emitter. docs.unrealengine.com UParticleSystem::IsLooping | Unreal E..
-
[Unreal 5/C++] 애니메이션 스테이트 노티파이 사용 방법게임 엔진/Unreal 2022. 9. 24. 18:04
애니메이션 스테이트 노티 파이 사용 방법 애니메이션 스테이트 노티파이 애니메이션 그래프에서 스테이트를 클릭해 디테일 창을 확인하면 노티 파이를 확인할 수 있다. 이 노티 파이는 스테이트에 들어오는 순간, 스테이트에서 나가는 순간, 애니메이션 블랜딩 완료 시에 적용된 노티파이를 호출하게 된다. 노티파이 이벤트 사용 방법 스테이트 이름을 "Noti"라고 한다면 다음과 같은 노티파이 이벤트를 생성해야 한다. 즉, "AnimNotify_"가 설정한 이름 앞에 붙어야 한다. 만약 설정한 스테이트 노티파이 이름이"AnimNotify_Noti"라면 "AnimNotify_AnimNotify_Noti"라는 이름의 이벤트로 노티가 발생하게 된다. ※ C++ 함수로 이벤트를 만드는 것도 동일하게 설정된 이름 앞에 AnimN..
-
[Unreal 4] 언리얼 인텔리센스 설정게임 엔진/Unreal 2022. 6. 2. 13:44
언리얼 인텔리센스 최적화 설정 Visual Studio에서 제공하는 기본 인텔리센스가 상당히 느리다. 빠릿빠릿한 반응을 얻기 위해서는 추가 툴이 필요하다. 인텔리센스 속도 개선 먼저, 인텔리센스 자체의 속도를 개선할 수 있는 툴로 Whole tomato의 [Visual Assist]가 있다. Archive of Visual Assist builds and release notes (wholetomato.com) Archive of Visual Assist builds and release notes support.wholetomato.com 해당 사이트에서 최신 빌드를 선택해 설치하면 된다. 언리얼 매크로 사용 시 들여 쓰기 버그 개선 언리얼 매크로(UPROPERTY, UFUNCTION 등)를 사용하는 ..
-
[Unreal 4] 변수 및 프로퍼티 정리게임 엔진/Unreal 2022. 5. 29. 17:37
언리얼 C++ 사용을 위한 기본 개념 블루프린트 / C++ 매핑 타입 기본 매핑 타입 기본적으로 블루프린트에서는 unsigned를 사용하지 않는다. 블루프린트와 연동할 필요가 있는 변수는 uint류와 double을 사용하지 않도록 주의해야 한다. Blueprint C++ Float float - double Integer int32 - uint32 Integer64 int64 - uint64 Bool bool 유틸리티 매핑 타입 Blueprint C++ String FString Name FName Vector FVector Rotator FRotator Transform FTransform 오브젝트 매핑 타입 Blueprint C++ Object UObject* Actor AActor* ActorCom..
-
[Unreal 4] Visual Studio 세팅 정리게임 엔진/Unreal 2022. 5. 25. 20:38
언리얼 엔진용 Visual Studio 구성 엔진 버전 별 비주얼 스튜디오 버전 매칭 언리얼 엔진 버전 비주얼 스튜디오 버전 4.25 이상 VS 2019 4.22 이상 VS 2017 / VS 2019 4.15 이상 VS 2017 4.10 이상 VS 2015 4.2 이상 VS 2013 비주얼 스튜디오 설치 옵션 1. C++를 사용한 게임 개발 체크 2. 설치 세부 정보 - C++ 프로파일링 도구, C++ AddressSanitizer, Windows 10 SDK, IntelliCode, Unreal Engine 설치 관리자 체크 후 설치 권장 세팅 솔루션 구성의 드롭다운 메뉴 폭 늘리기 1. 툴바 우클릭 - 하단의 사용자 지정(C)... 클릭 2. 툴바 우클릭 후 하단의 사용자 지정(C)...[명령(O)]..