게임개발 썸네일형 리스트형 언리얼 엔진 5, FInstancedStruct: 게임 개발의 새로운 지평을 열다! 언리얼 엔진 5(UE5)에서 게임 개발의 효율성을 한 단계 끌어올릴 수 있는 아주 유용한 기능, FInstancedStruct에 대해 자세히 알아보려고 합니다. 프로그램 관련 글을 쓸 때마다 느끼지만, 새로운 기능을 익히는 건 언제나 설레네요. FInstancedStruct는 저처럼 다양한 데이터를 유연하게 다루고 싶어 하는 개발자들에게 정말 매력적인 도구입니다. 복잡한 시스템을 설계할 때마다 ‘이 데이터를 어떻게 하면 깔끔하게 관리할 수 있을까?’라는 고민에 빠지곤 하는데, FInstancedStruct가 그 해답 중 하나가 될 수 있습니다. 자, 그럼 함께 자세히 살펴볼까요?FInstancedStruct란 무엇일까요?FInstancedStruct는 언리얼 엔진 5에서 제공하는 값 타입 래퍼(Value.. 더보기 언리얼 엔진 5: Sweep과 Trace 완전 정복 – 차이점, 성능, 실전 예제까지! 게임을 개발하다가 보면 Sweep과 Trace는 충돌 판정에서 자주 사용되는 기능입니다. 하지만 두 방식의 차이와 각각의 장단점, 그리고 실제로 어떻게 활용해야 하는지 헷갈리는 경우가 많죠. 이 글에서는 SweepMultiByProfile의 개념부터 Trace와의 차이, 성능적인 부분까지 초보자도 쉽게 이해할 수 있도록 자세히 설명합니다. 실전에서 바로 활용할 수 있는 예제 코드도 함께 소개하니, 언리얼 엔진 충돌 검사에 대해 제대로 알고 싶으신 분들에게 도움이 될 거예요.1. SweepMultiByProfile이란?SweepMultiByProfile은 언리얼 엔진 5에서 지정한 Collision Profile과 **부피(Shape)**를 사용해, 시작점(Start)에서 끝점(End)까지 3D 공간을 ".. 더보기 🎮 [Unreal Engine 5] 액터의 상대 위치를 월드 위치로 변환하는 방법 언리얼 엔진 5(UE5)에서 액터의 상대 위치(Relative Location) 를 월드 위치(World Location) 로 변환하는 방법에 대해 알아보겠습니다.게임을 만들다 보면, 액터를 기준으로 특정 방향이나 거리만큼 떨어진 지점의 절대 좌표가 필요할 때가 많죠.예를 들어, 플레이어 캐릭터 앞쪽 100cm 지점에 이펙트를 생성하고 싶을 때!그럴 땐 이 방법을 쓰면 됩니다 🔧📌 상대 위치 → 월드 위치 변환 함수 (C++)아래는 C++로 작성한 함수입니다.액터를 기준으로 상대 위치를 받아서, 그에 해당하는 월드 위치를 반환해줍니다.FVector ConvertRelativeToWorldLocation(AActor* Actor, const FVector& RelativeLocation){ if .. 더보기 🎮 언리얼 엔진5(Ue5) – UActorComponent에서 TArray 변수 복제(Replicate)하기 언리얼 엔진5에서 UActorComponent 안에 TArray(배열)을 복제하는 방법을 소개해드릴게요. 일반적으로 float 변수 하나를 복제할 때는 UPROPERTY(Replicated)만 써도 충분하지만, 배열처럼 여러 값을 포함하는 자료형은 조금 더 주의가 필요합니다.이번 포스트에서는 TArray를 복제하는 기본적인 방법을 코드 예제와 함께 소개해드릴게요.✅ Step 1 – 헤더 파일 설정우선, 배열 멤버 변수를 선언하고 복제에 사용할 OnRep 함수를 정의합니다.UCLASS( ClassGroup=(Custom), meta=(BlueprintSpawnableComponent) )class YOURGAME_API UMyActorComponent : public UActorComponent{ GENE.. 더보기 🎮 언리얼 엔진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) 구조와 동일합니다. 예.. 더보기 이전 1 2 다음