728x90

DirectX 15

4. Primitive Type

Primitive Type # 여러가지 Topology 타입을 소개하기 위한 예제이지만 이후에는 이미지 디버깅 용도로 사용하게 된다. # 상수 버퍼를 사용하는 예제에서의 쉐이더를 쓰면 선이 안 나오니 주의. 그래서 상수 버퍼 예제를 이 다음으로 옮겼다. 샘플 업데이트sample.h #pragma once #pragma comment(lib, "TLib.lib") #include "zCore.h" #include "mathHeader_L.h" namespace Lypi { class Sample : public zCore { // 버텍스 버퍼 및 레이아웃 ID3D11Buffer* m_pVertexBuffer; //정점 버퍼 인터페이스 ID3D11InputLayout* m_pVertexLayout; //정점..

3. VertexBuffer, IndexBuffer

Vertex Buffer 일단 아래와 같은 쉐이더 파일을 라이브러리 혹은 샘플 폴더에 만들자. # 쉐이더 코드는 txt로 적어도 아무런 상관이 없다. # 구문 강조 기능을 위해서 확장자를 hlsl로 했다면 설정에서 빌드에서 제외를 해주는 것이 정신건강에 이롭다. # 픽셀 쉐이더에서 하얀색으로 지정했다. VS.txt float4 VS(in float4 p : POSITION) : SV_POSITION { return p; } PS.txt float4 PS(in float4 p : SV_POSITION) : SV_Target { return float4(1.0f, 1.0f, 1.0f, 1.0f); } # 아래와 같이 코드를 작성하면 화면에 사각형이 그려진다. #쉐이더 파일의 경로에 주의할 것. #T를 누르면..

2. Timer, Input, Write

# Timer : 게임내 시간을 측정하는 기능 # Input : 키 입력을 받는 기능 # Write : 화면에 간단한 텍스트를 띄우는 기능.# 타이머와 입력한 키에 대한 정보를 텍스트로 띄어주는 내용.# 여기까지 1차적인 라이브러리 내용이다. DxTimer.h #pragma once #include "stdHeader_L.h" namespace Lypi { class DxTimer { private: LARGE_INTEGER m_liFrequency; //초당 주파수 LARGE_INTEGER m_liCurTime; //현재 프레임에서의 시간 LARGE_INTEGER m_liBefTime; //이전 프레임에서의 시간 LARGE_INTEGER m_liBef1sTime; //1초전 시간 float m_dGam..

1. 윈도우 띄우기

# 아무 기능 없이 윈도우만 띄우는 기능까지만 들어간 라이브러리. # 헤더파일의 DX관련 헤더와 라이브러리는 참조하기 쉽게 위치를 옮겨놨다. # 실질적인 기능은 zCore파일에서 정의된다. stdHeader_L.h #pragma once #define DIRECTINPUT_VERSION 0x0800 #define _CRT_SECURE_NO_WARNINGS #pragma warning( disable:4005) //매크로 재정의 에러 띄우지 않기. //#define _DISABLE_EXTENDED_ALIGNED_STORAGE //메모리 자동 정렬 사용 안함? #pragma region //헤더 파일 및 라이브러리 파일 추가 #include #include //Windows Runtime C++ Templa..

0. Sample Main

# 이 카테고리의 포스팅에는 코드만 있을 뿐 코드에 대한 자세한 설명은 모두 생략되어 있다. 나아중에 시간이 나거나 필요하면 추가할지도... # 라이브러리를 실행시키기 위해 만든 main용 프로젝트.# 현재 특별한 내용은 없음.# Init(), Frame(), Render(), Release()는 기본적으로 정의하는 메소드로 약속한다. sample.h #pragma once #pragma comment(lib, "TLib.lib") #include "zCore.h" namespace Lypi { class Sample : public zCore { public: bool Init(); bool Frame(); bool Render(); bool Release(); public: Sample(LPCTSTR..

반응형