728x90
반응형

분류 전체보기 38

5. Actor Class & Debug(2)

1. Drawing Debug Sphere Draw Debug Sphere : 디버그용 구체를 그릴 수 있다 구체의 중심 위치 (FVector), 반지름 (float), 분할개수 (int32), 선 색 (FColor), 지속시간 (float), 구체 선 두께 (float) 들로 인자가 이루어져 있다 Get Actor Location : 원하는 Actor의 RootComponent위치를 (FVector) 가져온다 모든 Actor들이 가지고 있는 함수이다 #include "DrawDebugHelpers.h" //Debug 관련 함수 사용시 필요한 헤더파일 void AItems::BeginPlay() { Super::BeginPlay(); UWorld* World = GetWorld(); //Actor가 이 ..

Unreal 2023.12.05

4. Actor Class & Debug(1)

1. Actor Creation Actor는 Level에 배치하거나 스폰할 수 있는 오브젝트의 기본 클래스이다 C++클래스를 생성할 때 부모클래스를 선택할 수 있다 이때 Actor Class를 선택하면 Actor를 상속받는 클래스를 만들 수 있다 Actor뿐만 아니라 수많은 엔진 클래스를 상속받을 수 있다 ex) Pawn, Character, UserWidget... 그 후 Next로 Class이름, 경로를 설정하면 된다 이와 같이 Solution탐색기에서 확인이 가능하다 이때 Build.cs파일은 프로젝트에 포함되는 모듈을 제어한다 아래는 ActorClass를 상속받았을 때 자동으로 생성되는 함수들이다 #pragma once //.h파일을 포함할 때 한번만 포함되도록 보장해주는 전처리 지시문이다 #in..

Unreal 2023.12.05

3. Structure of a C++ Program

1. 전처리 장치 / 지시문 (Preprocessor) C++의 전처리 장치 (Preprocessor)는 컴파일러가 보기전에 모든 주석을 제거하고 소스코드를 준비 하는 장치이다 전처리 지시문은 #으로 시작하며 해당 명령을 실행한다 전처리 장치는 C++을 이해하지 못한다 단지 지시사항을 실행하고 컴파일러에 맞는 소스코드를 준비시킨다 (컴파일러는 C++을 이해하는 장치)#include //가장 흔하게 사용되는 #include 전처리 지시문 (iostream파일을 include하라는 명령) #include "CPPStudy.h" #if #elif #else #endif #ifdef #ifndef #define #undef #line #error #pragma이처럼 많은 전처리 지시문들이 존재한다 2. 주석 (..

C++ 2023.11.22

3. Reflection System

1. Reflection System 기본 C++에는 Reflection기능이 없지만 UE에는 내장되어 있다 Refelection 시스템이란 원하는 데이터를 BP에 노출시킬 수 있게 하는 기능, Garbage Collection (GC)로 메모리 할당/해제를 자동으로 해주는 기능 (더 이상 사용되지 않는 Object의 메모리를 자동으로 해제한다), 직렬화, 네트워크 리플리케이션 등의 기능이다 대표적인 Reflection 매크로에는 UENUM(), USTRUCT(), UCLASS(), UPROPERTY(), UFUNCTION()등이 있다 Reflection을 적용하기 위해서는 Class 헤더파일에 “클래스명.generated.h”가 include 되어야 한다 (자동생성) 이 헤더가 있어야 Reflectio..

Unreal 2023.11.18

2. Vector & Rotator & Trigonometry

1. Vector X,Y축 2차원 평면에서 시작점과 끝점이 있는 화살표를 2차원 벡터라고 부른다 (시작점(5,5), 끝점(20,20)) 벡터는 방향과 크기를 가진다 (Direction, Magnitude) 이때 크기는 벡터의 길이다 위의 벡터는 (15,15)로 나타낼 수 있다 (시작점에서 끝점까지 X축 15, Y축 15 이동이 필요하기 때문이다)) 이를 쉽게 계산하기 위해서는 끝점의 X와 시작점의 X를 빼고 끝점의 Y와 시작점의 Y를 빼주면 된다 이 두개의 벡터는 같은 벡터이다 (벡터는 크기와 방향에 의해서만 정의되기 때문이다) 시작점과 끝점이 반대가 되면 벡터의 축 부호를 반대로 해주면 된다 ex) 위의 벡터가 반대로 된다면 (-5,-10)이 된다 3차원 벡터도 2차원 벡터 계산과 같은 방식으로 가능하..

Unreal 2023.11.18

1. Getting Start Unreal Engine

1. Level Editor Viewport 녹색 Play 버튼으로 Editor를 실행할 수 있다 (PIE는 Play In Editor를 의미한다) 실행 후 빨간 네모 버튼으로 중단할 수 있다, 실행 후 Viewport를 클릭 하면 마우스 커서가 사라지고 Shift F1으로 다시 커서를 보이게 할 수 있다 Level Viewport에서 WASD로 이동이 가능하며 마우스 클릭 후 회전으로 돌아볼 수 있고 Q,E로 아래 위로 이동이 가능하다 마우스 우클릭 + C로 Zoom이 가능하다 (화각 변경) Z는 Zoom Out이다 이 부분을 ContentBrowser라고 하며 Ctrl Space로 열고 닫을 수 있다 이때 계속 유지하고 싶다면 우측에 Dock In Layout을 클릭해주면 된다 ContentBrows..

Unreal 2023.11.18

1. Getting Started C++(1)

1. Writing First Program Console 출력 & 입력 Code #include //전처리 지시문에는 ;을 붙히지 않는다, input/output library를 사용하기 위해 include 함 (cout, cin이 여기에 포함되어 있음) int main() //main함수는 프로그램이 실행될 때 가장 먼저 호출되는 함수이다, 모든 C++프로그램에는 main함수 단 1개가 필수로 존재해야 한다 { int FavoriteNumber; //변수 선언시 타입이 필요하며 타입 이름;으로 변수 선언이 가능하다, 변수는 데이터를 담을 수 있다 std::cout > FavoriteNumber; //std:cin은 콘솔창에 원하는 value를 입력할 수 있게 해준다 이 구문은 FavoriteNumbe..

C++ 2023.11.17
728x90
반응형