언리얼엔진 썸네일형 리스트형 🎮 [Unreal Engine 5] 액터의 상대 위치를 월드 위치로 변환하는 방법 언리얼 엔진 5(UE5)에서 액터의 상대 위치(Relative Location) 를 월드 위치(World Location) 로 변환하는 방법에 대해 알아보겠습니다.게임을 만들다 보면, 액터를 기준으로 특정 방향이나 거리만큼 떨어진 지점의 절대 좌표가 필요할 때가 많죠.예를 들어, 플레이어 캐릭터 앞쪽 100cm 지점에 이펙트를 생성하고 싶을 때!그럴 땐 이 방법을 쓰면 됩니다 🔧📌 상대 위치 → 월드 위치 변환 함수 (C++)아래는 C++로 작성한 함수입니다.액터를 기준으로 상대 위치를 받아서, 그에 해당하는 월드 위치를 반환해줍니다.FVector ConvertRelativeToWorldLocation(AActor* Actor, const FVector& RelativeLocation){ if .. 더보기 🎮 언리얼 엔진5에서 특정 클래스의 액터 찾기 (C++ ) 언리얼 엔진5(UE5)에서 특정 클래스의 액터(Actor)를 찾는 방법을 소개해드리려고 합니다.게임 개발을 하다 보면, 월드 내에 존재하는 특정 클래스의 액터를 탐색하거나 조작해야 하는 경우가 많죠.이번 포스팅에서는 C++ 코드로 해당 기능을 구현하는 방법을 알아보겠습니다.✅ C++ 코드로 클래스 기반 액터 찾기언리얼 엔진에서는 UGameplayStatics::GetAllActorsOfClass 또는 TActorIterator를 이용해월드(World) 내 특정 클래스에 해당하는 모든 액터를 가져올 수 있습니다. 📌 예제 코드// AMyActor는 찾고자 하는 액터 클래스입니다.void AMyActorFinder::FindMyActor(UWorld* World){ if (!World) return;.. 더보기 🎮 [언리얼 엔진 5] UWorldSubsystem에서 파라미터 복제(Replicate) 구현 방법! 언리얼 엔진 5에서 UWorldSubsystem 안의 변수를 복제(Replicate)하는 방법을 소개드릴게요.UWorldSubsystem은 일반적인 액터가 아니라서 DOREPLIFETIME 같은 복제 매크로가 직접 적용되지 않아요. 그래서 약간의 우회적인 방식으로 구현해야 합니다. 아래 내용을 따라 해보시면 쉽게 구현하실 수 있어요 😊✅ 왜 UWorldSubsystem에서 복제가 어렵나요?UWorldSubsystem은 AActor가 아니기 때문에:DOREPLIFETIME 사용 불가bReplicates 같은 속성 없음네트워크를 통해 직접 복제 불가따라서 복제를 위해서는 복제 가능한 별도의 액터를 만들어서 그 액터를 통해 데이터를 주고받는 방식으로 우회합니다.✅ Step 1. 복제 가능한 액터 생성하기AA.. 더보기 🎮 언리얼 엔진5에서 int64 값을 UE_LOG로 출력하는 방법! 오늘은 언리얼 엔진 5 (Unreal Engine 5, 이하 UE5)에서 int64 타입의 숫자를 로그로 출력하는 방법을 소개할게요.디버깅하면서 큰 숫자를 다뤄야 할 일이 많으신가요?그렇다면 int64 타입 로그 출력법을 꼭 알아두셔야 합니다!🧩 UE_LOG로 int64 출력하기UE5에서는 UE_LOG 매크로를 사용해 로그를 남길 수 있습니다.특히 int64처럼 64비트 정수형 데이터를 출력할 땐, 정확한 포맷 문자열이 필수입니다!✅ 코드 예시:void LogInt64Value(){ int64 MyInt64Value = 123456789012345LL; UE_LOG(LogTemp, Log, TEXT("My int64 value is: %lld"), MyInt64Value);} 📝 코드 설명.. 더보기 🎮 UE5 "Ctrl + 1" 키 조합 입력 설정하기 (Enhanced Input) ✅ 1단계: Enhanced Input 시스템 활성화먼저 프로젝트가 Enhanced Input을 사용하도록 설정합니다.Edit > Plugins로 이동Enhanced Input 플러그인 활성화Edit > Project Settings > Input 에서→ Default Input Class가 Enhanced Input Subsystem 기반인지 확인🎮 2단계: Input Action 2개 생성조합 키를 만들기 위해 두 개의 Input Action이 필요합니다.🎯 A. Ctrl 키용 Input Action이름: IA_CtrlValue Type: Boolean용도: Ctrl 키가 눌렸는지 감지🎯 B. Ctrl + 1 조합용 Input Action이름: IA_CtrlOneValue Type: Boolea.. 더보기 UE5 구조체에서 operator< 를 오버라이드하여 자동 정렬하는 방법 언리얼 엔진 5 (UE5) 에서 구조체를 사용할 때, 배열을 정렬하는 깔끔한 방법을 소개해 드립니다.특히 자동화 작업(Automation Task) 같은 구조체를 정렬할 때 유용한 팁인데요. 매번 람다식을 쓰지 않고, 아예 구조체 자체에 operator바로 시작해 볼게요 :)기존 방식: Sort() + 람다식 사용하기보통 UE5에서 배열을 정렬할 때는 이렇게 람다식을 사용합니다.TArray AutomationTasks;AutomationTasks.Sort([](const FAutomationTask& A, const FAutomationTask& B) { return A.OperatorOverridePriority 이렇게 하면 OperatorOverridePriority 값을 기준으로 정렬되지만,.. 더보기 언리얼 엔진 5 (UE5) TArray의 Push 와 Pop 은 왜 FILO 인가요? 언리얼 엔진 5 (UE5)를 사용하시면서 헷갈릴 수 있는 TArray의 Push() 와 Pop() 함수가 왜 FILO 방식인지 쉽게 정리해 보겠습니다. 📌 TArray 란?TArray는 UE5에서 제공하는 동적 배열 클래스입니다.쉽게 말해, 우리가 원하는 만큼 데이터를 넣고 뺄 수 있는 가변 길이 배열이라고 볼 수 있어요. 📌 Push() 와 Pop() 의 역할Push(Element)→ 배열의 끝에 요소를 추가합니다.Pop()→ 배열의 마지막 요소를 제거하고 반환합니다.여기서 핵심은, 항상 배열의 뒤쪽(끝)을 기준으로 동작한다는 점이에요! 📌 FILO 란?FILO는 First-In, Last-Out, 즉 먼저 들어온 것이 나중에 나간다는 뜻입니다.쉽게 말해, 스택(Stack) 구조와 동일합니다. 예.. 더보기 언리얼 엔진 5(UE5)에서 캐릭터 위치에서 벡터 그리기 안녕하세요, 언리얼 엔진 5(UE5)에서 캐릭터의 위치를 기준으로 벡터를 그리는 방법을 알려드리겠습니다.디버그 라인을 활용하면 게임 내에서 벡터를 시각적으로 확인할 수 있어, 디버깅이나 개발에 매우 유용합니다.📌 벡터 그리기 함수 만들기아래 코드를 캐릭터 클래스에 추가하면, 현재 캐릭터의 위치에서 특정 방향으로 벡터를 그릴 수 있습니다.void AYourCharacterClass::DrawVector(){ FVector Start = GetActorLocation(); // 캐릭터 위치 가져오기 FVector Direction = GetActorForwardVector(); // 캐릭터가 바라보는 방향 float Length = 300.0f; // 벡터 길이 설정 FVector E.. 더보기 이전 1 2 다음