Tick 함수로 Actor의 Transform 조정하기 | [언리얼 엔진 C++ (Unreal Engine C++)]
·
Unreal Engine/UE 기초
Tick 함수로 Actor의 Transform 조정하기 Transform 속성 이해하기 Actor와 TransformActor (액터)는 언리얼 엔진에서 게임 세계(월드)에 존재하는 모든 오브젝트를 의미합니다. 건물, 캐릭터, 아이템 등 눈에 보이는 모든 것들이 액터로 표현됩니다.액터에는 세 가지 중요한 속성이 있습니다.위치(Location)회전(Rotation)크기(Scale)이 세 가지 속성을 Transform이라고 부르며, 뷰포트 상에서 보통 x축 (빨간색), y축 (초록색), z축 (파란색)으로 표시됩니다. 위치 (Location)액터가 월드에서 어느 지점에 있는지를 나타냅니다.예) FVector(100.0f, 200.0f, 300.0f)라면 월드의 x축으로 100, y축으로 200, z축으로..
Rotation: Roll, Pitch, Yaw [Transform] | [언리얼 엔진 C++ (Unreal Engine C++)]
·
Unreal Engine/UE 기초
Rotation: Roll, Pitch, Yaw Rotation 회전 언리얼 엔진에서는 그래픽스에서 회전각을 나타내는 방법 중 오일러 각을 사용하는 pitch yaw roll를 사용합니다.각각 수평, 종, 횡 방향의 회전을 뜻합니다. 엔진에서 보면 x, y, z 로도 표시되어있지만 엄밀하게 말하면 Roll, Pitch, Yaw라는 용어로 사용됩니다.X 축 : RollY 축 : PitchZ 축 : Yaw 참조 사이트: https://howthingsfly.si.edu/media/roll-pitch-yaw 참조사이트: https://simple.wikipedia.org/wiki/Pitch,_yaw,_and_roll 사람이 보는 방향으로 예시 Roll: 고개를 갸웃하고 기울이는건 X축Pitch: 고개를..
언리얼 엔진 Actor의 라이프 사이클, Log 사용 | [언리얼 엔진 C++ (Unreal Engine C++)]
·
Unreal Engine/UE 기초
언리얼 엔진 Actor의 라이프 사이클, Log 사용 Log 사용 UE_LOG(LogTemp, Warning, TEXT("My Item appears!!"))로그 카테고리 (Log Category): 여기서는 LogTemp라는 임시 카테고리를 사용했습니다.로그 수준 (Log Level): Warning을 사용하면, 노란색 글씨로 강조되어 출력됩니다. 이 외에도 Log, Display, Error 등 다양한 수준이 있습니다.Display: 일반적인 실행 흐름이나 상태 확인 메시지 (흰색)Warning: 예상치 못한 동작이나 잠재적인 문제 (노란색)Error: 즉시 수정이 필요한 심각한 문제 (빨간색)출력할 메시지: My Item appears!!라는 문자열이 출력됩니다.이 코드를 작성한 뒤 빌드하고, 언..
Actor 클래스 코드 구조 | [언리얼 엔진 C++ (Unreal Engine C++)]
·
Unreal Engine/UE 기초
Actor 클래스 코드 구조 Actor 클래스 코드 구조 언리얼 엔진은 C++ 클래스를 만들 때 헤더 (.h)와 구현 (.cpp) 두 파일을 자동으로 생성합니다.그중에서 자동으로 생성되는 (.h) 를 알아보도록 하겠습니다. .h 코드```cpp#pragma once#include "CoreMinimal.h"#include "GameFramework/Actor.h"#include "Item.generated.h"```#pragma once동일 헤더가 프로젝트 곳곳에서 여러 번 포함되더라도 컴파일러가 한 번만 처리하도록 합니다.과거에는 #ifndef / #define / #endif 패턴보다 간결하고 안전해서, 언리얼을 포함한 모던 C++에서 사실상 표준으로 사용합니다.#include "CoreMinima..
Actor와 Object | [언리얼 엔진 C++ (Unreal Engine C++)]
·
Unreal Engine/UE 기초
언리얼 엔진을 학습하다 보면, 가장 먼저 접하게 되는 개념 중 하나가 UObject와 AActor입니다. 둘 다 엔진에서 매우 중요한 클래스 계층을 이루고 있으므로, 차이점을 확실히 알아두면 좋습니다. Actor와 Object Actor와 Object 개념 Object (UObject)의 개념Object = 객체지향 프로그램에서의 객체UObject는 언리얼 엔진에서 모든 클래스의 최상위 부모 클래스입니다. (뿌리, 조상)모든 클래스는 이 오브젝트 클래스를 상속받는다스스로 월드(레벨)에 배치될 수 없습니다. 주로 데이터나 로직만 담당합니다.예: 플레이어 능력치(HP, 경험치), AI 정보, 게임 설정 값, 임시 계산 로직 등주로 화면에 보이지 않는 데이터나 로직을 처리합니다.단 오브젝트는 실제 월드상에..
Asset Migration, 레벨 생성과 맵 설정 | [언리얼 엔진 C++ (Unreal Engine C++)]
·
Unreal Engine/UE 기초
Asset Migration, 레벨 생성과 맵 설정 Assets Migration Resources 폴더 우클릭 -> Migrate → 옮길 것들 선택 → 원하는 곳 폴더 선택 → (에셋의 경우 꼭 Content 폴더에)복사가아니라 말그대로 옮겨 주는 것Migrate는 선택한 에셋 (또는 폴더)이 참조하고 있는 모든 종속 파일을 함께 복사해 주므로, 누락 없이 옮길 수 있습니다.실제 게임 개발 현장에서는 디자이너와 프로그래머가 하나의 프로젝트에서 함께 작업하는 경우가 더 많지만, 여기서는 학습 목적으로 리소스를 별도 프로젝트로 배포한 뒤 Migrate를 통해 가져오도록 했습니다.기존에 같은 이름의 폴더가 있으면 파일 충돌이 발생할 수 있으므로 주의하세요. 레벨 생성 & 기본 맵 설정 Basic..
언리얼 에디터 Live Coding, 주의 사항 | [언리얼 엔진 C++ (Unreal Engine C++)]
·
Unreal Engine/UE 기초
언리얼 에디터 Live Coding, 주의 사항 언리얼 에디터 Live Coding 기존 빌드 흐름 vs. Live Coding기존 방식Shift + F5 (에디터 연결 종료) → C++ 코드 수정 → Visual Studio에서 빌드 → F5 (에디터 재연결) → 결과 확인Live Coding 활용 시에디터를 종료하지 않은 상태에서 C++ 코드를 수정한 뒤, Live Coding으로 변경 사항만 컴파일하여 즉시 에디터에 반영Live Coding을 사용하면 에디터를 일일이 끄고 켜는 번거로움이 줄어듭니다. Live Coding 제약사항간단한 코드 변경: 함수 내부 로직, 변수 값 변경, 로그 출력 변경 등은 Live Coding으로 즉시 반영됩니다.적용이 안 되는 경우UCLASS, USTRUCT, UE..
빌드 프로세스 이해하기 | [언리얼 엔진 C++ (Unreal Engine C++)]
·
Unreal Engine/UE 기초
빌드 프로세스 이해하기 (솔루션 구조 내 주요 폴더, 빌드 설정 이해하기,전체 솔루션 빌드 vs 부분 빌드, 빌드 전후 체크 포인트,빌드 문제 해결하기) 솔루션 구조 내 주요 폴더 IDE 상에서 보여지는 폴더 구조와 실제 프로젝트의 폴더 구조가 다르다프로젝트 폴더들이 계층적으로 표시되는데, 실제 Windows 탐색기에서 보았던 프로젝트 폴더 구조와는 조금 다를 수 있습니다.IDE 가 빌드와 관리를 편하게 하기 위해서, 일종의 가상 형태로 구조를 재구성. 솔루션 구조 내 Root 폴더들: Engine, Games, Programs, Rules, Visualizers Engine 폴더언리얼 엔진 자체 소스 코드와 리소스가 담긴 곳입니다.에디터 작동, 엔진 코어 관련 코드가 포함되어 있어서 엔진 수정시 들어오..