Game Development
-
[DirectX] 3-1. 행렬Game Development/DirectX 2024. 6. 17. 13:48
이번 글에서는 앞으로 나올 행렬이라는 것에 대해서 작성해 보도록 하겠습니다. 먼저 행렬이 무엇인지부터 알아보도록 하겠습니다.행렬은 숫자들을 직사각형 형태로 행과 열에 따라 나열한 것입니다.행렬은 행 \(\times\) 열 형태로 크기를 나타내며, \(n \times m\) 행렬이라고 하면 \(n\)행 \(m\)열의 직사각형을 뜻합니다.예를 들어 \(2 \times 3\) 행렬은 2행 3열을 뜻하며 아래와 같이 작성할 수 있습니다.$$ \begin{bmatrix} a & b & c \\ d & e & f \end{bmatrix} $$ 행렬들도 종류가 여러 개가 존재하는데, 그 중 제가 구현한 3가지 정도만 알아보도록 하겠습니다. 첫 번째는 단위행렬입니다.단위행렬은 \(i\)행 \(i\)열만 1이고,..
-
[DirectX] 2-2. Vector3 및 Vector2 클래스 제작Game Development/DirectX 2024. 6. 8. 05:50
이번 글에서는 저번 글에서 정리했던 벡터 연산들을 Vector 클래스를 통해서 구현해 보도록 하겠습니다. 먼저 3차원 벡터 클래스인 Vector3 클래스부터 제작하도록 하겠습니다.구현할 내용들 저번 글에서 정리한 내용들과 크게 다르지 않습니다.// Vector3.h#pragma once#include class Vector3 {public: // 각 축에 대한 크기 float x, y, z; // (0, 0, 0) static const Vector3 zero; // (1, 1, 1) static const Vector3 one; // (0, 0, 1) static const Vector3 forward; // (0, 1, 0) static const Vector3 up; // (1, 0, 0) stat..
-
[DirectX] 2-1. 벡터Game Development/DirectX 2024. 6. 5. 16:01
이번 글에서는 다음 글에서 제작할 Vector 클래스에 들어갈 기능 및 연산들을 한번 정리해 보겠습니다. 먼저 벡터가 뭔지부터 알아봅시다.벡터는 크기와 방향을 가지는 물리적인 양이며, 기호는 \(\vec {A}\)입니다. (이 글에서는 기호를 생략하도록 하겠습니다)벡터는 여러 요소들로 구성되며, 해당 요소들은 각 축들의 방향에 대한 크기입니다.예를 들어 3차원 벡터 \(A = (a, b, c)\)는 x축 방향으로 \(a\)만큼, y축 방향으로 \(b\)만큼, z축 방향으로 \(c\)만큼 향한다는 입니다.자 이렇게 벡터가 무엇인지 간단하게 알아보았으니 이번엔 Vector 클래스에 들어갈 기능 및 연산들에 대해 알아봅시다. 1. 크기(Length)벡터의 크기는 벡터의 길이라고 생각하시면 됩니다.벡터의 A의 ..
-
[DirectX] 1. DirectX 초기화 및 배경 색 칠하기Game Development/DirectX 2024. 6. 1. 18:01
이번 글에서는 DirectX의 초기화와 화면의 배경을 칠해보도록 하겠습니다. 먼저 DirectX를 사용하기 위한 설정부터 해보도록 하겠습니다.'프로젝트 속성 -> 구성 속성 -> 링커 -> 입력'으로 들어간 뒤,추가 종속성에 d3d11.lib; D3DCompiler.lib;를 작성합니다. 이제 설정이 끝났으니, DirextX 초기화, 메시지 루프, 창 초기화 등을 담당하는Engine.h와 Engine.cpp를 작성해 보도록 하겠습니다.// Engine.h#pragma once#include "Window.h"#include #include #include // COM 객체를 관리하는 스마트 포인터using Microsoft::WRL::ComPtr;class Engine {public: Engine(HI..
-
[DirectX] 0. 창 띄우기Game Development/DirectX 2024. 5. 31. 16:10
최근에 프로젝트를 하는 게 있어서 프로젝트에 집중하느라블로그에 글을 못 써서 그런지 되게 오랜만에 쓰는 것 같네요. 이번에는 DirectX로 프로젝트를 하나 또 하게 돼서프로젝트를 하면서 DirectX에 대해서 공부한 내용을 한번 끄적여볼까 합니다.이 글은 C++을 다룰 줄 모르시면 읽는데 불편함이 있을 수 있습니다. 우선 처음이니까 창부터 한번 띄워봅시다.먼저 Visual Studio에서 C++ 빈 프로젝트를 만듭니다.'새 프로젝트 생성 -> C++ 빈 프로젝트' 를 선택한 뒤에 프로젝트 이름과 경로는 아무거나 하시면 됩니다. 이제 프로젝트를 생성했으니 기본적인 셋팅을 해주겠습니다.프로젝트를 우클릭한 뒤 속성을 선택하면 아래와 같은 창이 뜹니다.여기서 왼쪽에 구성 속성이 라고 되어있는 부분에서'구성 속..