전체 글 297

[UE] 언리얼 엔진 배포 빌드(Unreal Engine Installed Build)

Unreal Engine 소스 코드 받기 Unreal Engine 소스 코드 받기는 다음 페이지 참고하여 GitHub에서 받습니다. https://docs.unrealengine.com/5.1/ko/downloading-unreal-engine-source-code/ 언리얼 엔진 소스 코드 내려받기 소스 코드 저장소에 접속하여 언리얼 엔진 최신 빌드를 다운로드하는 법에 대한 단계별 안내입니다. docs.unrealengine.com Unreal Engine 빌드 설정 및 빌드하기 Unreal Engine 소스 코드를 모두 받으면 순차적으로 배치 파일들을 실행합니다. Setup.bat 파일 실행 GenerateProjectFiles.bat 파일 실행 실행을 마치고 나면 UE5.sln 파일이 생성 됩니다. ..

[UE5] 모션 매칭(Motion Matching) 설정

[게임 개발/Unreal Engine] - [UE5] 모션 매칭(Motion Matching) Motion Matching Node 모션 매칭의 노드가 모션 매칭의 핵심입니다. 이 노드의 주요 입력으로는 Database와 Trajectory(궤적)입니다. Trajectory는 캐릭터에 컴포넌트로 추가한 이동 궤적을 예측하기 위한 컴포넌트를 입력합니다. Trajectory Component Trajectory 컴포넌트는 CharacterMovement 컴포넌트와 함께 동작하도록 설계되었습니다. 모션 궤적 컴포넌트는 미래의 움직임에 대한 예측뿐만 아니라 과거 움직임의 기록 히스토리도 지원합니다. 지평선 궤적에 시간 또는 거리 제한을 설정해야 합니다. 모션의 예측은 2초 모션의 과거 기록은 0.5초를 기록하도..

[Unreal Engine] 콘솔 커맨드 제작 방법 (Console Command)

RegisterConsoleCommand 사용 방법 void UMyConsoleCommand::RegisterConsoleCommands() { FConsoleCommandWithArgsDelegate SpawnCmdDelegate; SpawnCmdDelegate.BindUObject(this, &UMyConsoleCommand::EXEC_SpawnNpc); IConsoleManager::Get().RegisterConsoleCommand( TEXT("spawn.npc"), TEXT("spawn.npc [BP이름] [Count] [Distance]"), SpawnCmdDelegate); } void UMyConsoleCommand::EXEC_SpawnNpc(const TArray& Args) { if (..

[UE5] 모션 매칭(Motion Matching)

Motion Trajectory Motion Trajectory Plugin을 사용하도록 합니다. BP_ThirdPersonCharacter 블루프린트를 열어서 캐릭터에 CharacterMovementTrajectory 컴포넌트를 추가합니다. 그리고, CharacterMovementTrajectory에서 Debug Draw Trajectory를 켜줍니다. 다음과 같이 블루프린트 노드를 작성합니다. 실행하면 다음과 같이 캐릭터의 예측과 트랙 히스토리를 시각화 하여 볼 수 있습니다. Pose Search Pose Search Plugin을 사용하도록 합니다. Motion Database와 Motion Database Config 데이터 어셋을 생성합니다. Motion Database 설정 Motion Dat..

이득우의 게임 수학

책의 내용이 무척 알차고 짜임세가 있어서 좋았습니다. 초반에는 게임의 가상세계 구현을 위한 수의 개념, 벡터, 삼각 함수, 행렬등을 매우 구체적이고 알기 쉽게 설명합니다. 이러한 설명들은 결국 아핀 공간의 탄생을 설명하기 위해서라는 생각이 됩니다. 1차원 개념을 2차원 공간으로 이를 다시 3차원 공간으로 심지어는 4차원 공간으로 확장하여 체계적으로 설명합니다. 책의 몇 가지 내용 발췌 이동이 가능한 부분 공간을 "아핀 공간"이라고 부르며 이를 통해 이동 변환을 설명한다. 아핀 공간에 대해 책의 내용을 요약하자면, 벡터 공간에서 이동을 위해 마지막 차원 값을 1로 한정한 부분 공간을 아핀 공간이라고 부른다. 그리고, 한 차원을 높여 설계한 선형 변환을 아핀 변환이라고 한다. 즉, 2차원 이동을 위해 마지막..

독서 리뷰 2023.01.22

[UE] Animation Preview 에디터에서 USkeletalMeshComponent 얻기

AnimNofity 혹은 AnimNotifyState에서 "USkeletalMeshComponent* MeshComp"를 파라미터로 넘겨 받는다. virtual void Notify(USkeletalMeshComponent* MeshComp, UAnimSequenceBase* Animation, const FAnimNotifyEventReference& EventReference) override; virtual void NotifyBegin(USkeletalMeshComponent* MeshComp, UAnimSequenceBase* Animation, float TotalDuration, const FAnimNotifyEventReference& EventReference) override; virt..