기타/DirectX

[DirectX11] 3일차 (DirectX 초기화하기)

푸쿠이 2021. 2. 17. 18:02

1일차에서 윈도우 창을 띄우고,

2일차에서는 1일차를 복습하고.

 

3일차인 오늘은 DirectX를 사용해본다.

 

엔진의 루프 기초는 보통 이런 구조이다.

요즘 엔진은 이 구조에서 살이 엄청 붙어있어서 숨만 쉬어도 무거울 수 있다고 하셨다.

while (true)
{ 
	processinput(); // 플레이어 입력 처리
	update(); // 데이터 변경
	render(); // 그리기
} 

 

Visual Studio 주석 단축키

Ctrl+ k + C 주석달기 (Comment)

Ctrl+ k + U 주석없애기 (UnComment)

 

 

DirectX를 연결해보자.

Shader를 작성하면서 C언어 코드를 사용하게 되는데, 이 때 필요한 것이 d3dcompiler 이다.

이렇게 링커로 바로 연결이 가능한 이유는

Visual Studio Installer에서 DirectX를 포함해서 다운받았기 때문이다.

 

 

렌더링 파이프라인 이미지 참고.

https://www.programmersought.com/article/39043880272/

테셀레이션에 해당하는 쉐이더를 제외하면

크게 VertexShader PixelShader Rasterizer 정도니까 안 무서워해도 된다.

 

 

SwapChain, Double Buffering, Screen Tearing, Anti-aliasing 용어들

 

초기화만 구현했는데 이해하기 좀 어려웠다.

코드에 열심히 주석치긴 했는데...

주석은 내가 이해하고 난 뒤, 나중에 봐도 이해할 수 있도록 적었다.

 

3일차에 작성한 코드. DxApp 클래스 보면 됨.

https://github.com/mingyu243/STL_GraphicsEngine2/tree/d7a6d5aef486c753ca22e8e4f08100bf8cb0916a/STL_GraphicsEngine2/src

 

mingyu243/STL_GraphicsEngine2

Contribute to mingyu243/STL_GraphicsEngine2 development by creating an account on GitHub.

github.com