2026/04 17

39. UGameInstanceSubsystem

(1) 상속받는 이유 : 게임 전체 실행 동안 유지되는 전역 시스템을 만들기 위한 목적(2) 언리얼 엔진이 자동으로 생성·관리해주는 게임 단위 싱글톤 시스템(3) 게임 세션 기준 (GameInstance 단위)- GameInstance 생성 시 생성- GameInstance 종료 시 파괴(4) 멀티플레이 (각 클라이언트/서버 별로 존재) UGameInstanceSubsystem은 GameInstance가 생성될 때 같이 생성되고, 게임이 종료될 때 같이 사라진다.- 레벨이 바뀌어도 유지됨- 따로 new/delete 관리할 필요 없음

Unreal Engine 2026.04.19

38. UEngineSubsystem

엔진 전체에서 공통적으로 사용하는 기능을 관리하는 클래스입니다. -> 엔진 전체 기준 (프로세스 단위)-> GEngine을 통해 접근UMyEngineSubsystem* Subsystem = GEngine->GetEngineSubsystem(); - 전역 매니저- 싱글톤처럼 동작하는 시스템 ( 게임 실행 동안 딱 1개만 존재 )- 모든 GameInstance, 모든 월드에 공통으로 존재- 엔진 시작 시 생성, 엔진 종료 시까지 유지- 멀티플레이 ( 클라이언트/서버 구분 없이 공유됨 ) 생성 흐름(1) 엔진 시작(2) Subsystem Collection 생성(3) UEngineSubsystem 상속 클래스 탐색(4) 자동 인스턴스 생성(5) Initialize() 호출 엔진이 자동으로 생성/관리하는 전역..

Unreal Engine 2026.04.18

9. 회전 행렬

(1) 회전행렬은 실제 우리눈에 직접적으로 보이는 면적과 연관이 있기 때문에 크기와 공간을 공유 합니다.(2) 그리고 그렇기 때문에 더더욱 순서 크기를 먼저 변환하고 회전을 시켜줘야 합니다.(3) 회전행렬은 3개의 벡터로 이루어져있다. X축 y축 z축 3개의 벡터는 수직을 이루어야 한다.- Z 기준void RotationZRad(float _Angle){ // 코시시코 Identity(); Arr2D[0][0] = cosf(_Angle); Arr2D[0][1] = sinf(_Angle); Arr2D[1][0] = -sinf(_Angle); Arr2D[1][1] = cosf(_Angle);} - Y축 기준void RotationYRad(float _Angle){ Identity(); Arr2D[0][0]..

게임 수학 2026.04.18

6. 항등 행렬

(1) 항등행렬이라는 녀석이 있는데 유일하게 결과가 교환법칙이 성립하게 만드는 행렬이 존재(2) 행렬은 무조건 기본적으로 항등행렬로 만들어 놓는것을 원칙(3) 행렬 == 차원 공간이라고 합니다.- 카메라가 바라보는 공간- 내가 바라보는 공간- 캐릭터의 공간-공간을 정의하는 것 크기 회전 위치 이미 항등행렬에도 회전과 위치와 크기가 다 들어가 있는 상태입니다.void Identity(){ // 이함수 기억해 놓으세요. // Arr1D 주소값위치부터 100 // sizeof(float) * 16 크기만큼을 164 번지 까지를 // 0으로 채워라. memset(Arr1D, 0, sizeof(float) * 16); Arr2D[0][0] = 1.0f; Arr2D[1][1] = 1.0f; Arr2D[2][2] =..

게임 수학 2026.04.18

5. 행렬

(1) 3차원 변환행렬 1x4벡터를 곱해서 변화시키는 행렬을 3차원 변환행렬 ->3차원 변환행렬을 4x4로 이루어집니다.(2)크 * 자 * 이 * 공 * 부기 전 동 전 무행 행 행 행 행렬 렬 렬 렬 렬struct{ float v00; float v01; float v02; float v03; float v10; float v11; float v12; float v13; float v20; float v21; float v22; float v23; float v30; float v31; float v32; float v33;};float4 ArrVector[4];float Arr1D[16] = { };float Arr2D[4][4];

게임 수학 2026.04.18

4. 벡터의 외적

(1) 외적은 벡터와 벡터로 이루어지며 결과는 다시 벡터가 나옵니다.(2) Cross라고 불립니다. (3) View 행렬 -> 회전 행렬 방향 구할 때 쓰임- 카메라가 회전의 반대방향으로 회전시켜야 합니다.-> 회전행렬을 만들어 내야 합니다. - 회전행렬을 구할수 있는 방법-> 코시시코를 통해서 구하는 방법-> 수직인 3개의 벡터의 모임이 곧 => 회전행렬-> 회전행렬이 되려면 -> 3개의 벡터가 무조건 수직이어야 해.- A와 B벡터와 수직인 C벡터를 구한다. -> Z와 Y의 외적 공식을 통해 X의 값을 알 수 있다.. (외적)- 내적과 같이 B와 A를 바꾸면 방향이 반대가 될 수 있다. (4) 첫번째 어느방향으로 돌아야 할지를 알수 있습니다.(5) 이특성을 이용해서 캐릭터의 회전방향 매쉬의 앞면과 뒷면..

게임 수학 2026.04.18