DirectX89 4. 삼각형 띄우기 오늘 한 것들 1. CreateGeometry를 만들어 삼각형의 구조(VertexData)를 만들고, VertexBuffer를 만들어 GPU에 건내주기 2. CreateInputLayout에서 VertexBuffer를 Input Assembler에 넣을 때 GPU에게 어떻게 분석해서 끊어 읽을지 알려주기 3. Default.hlsl에서 Vertex shader, Pixel shader 만들기 4. 셰이더 파일을 로드하는 LoadShaderFromFile을 이용해 Blob에 저장하고, GPU에 건낼 수 있는 VS와 PS를 Blob을 이용해 만들기 5. VS를 이용하여 CreateInputLayout 함수 완성하고, GPU에 넘길 Vertex의 구조 묘사한 내용을 InputLayout 변수에 채우기 6. _.. DirectX 2023. 12. 9. 3. 장치 초기화 요약: Device, DeviceContext, SwapChain을 선언하고, CreateDeviceAndSwapChain을 이용해 생성해 채워주고, CreateRenderTargetView로 SwapChain의 후면버퍼를 GPU에게 전달할 수 있는 RenderTargetView 형태로 만들었다. 그리고 SetViewport로 출력할 화면을 설정하고, RenderBegin에서 RenderTargetView와 Viewport를 GPU에 세팅하고, RenderEnd에서 SwapChain의 버퍼에 그린 것을 제출해 회색 화면을 출력했다. 1. ComPtr을 이용한 Device, DeviceContext 선언 2. SwapChain 3. CreateDeviceAndSwapChain 4. RenderBegin, .. DirectX 2023. 12. 6. 2. 기본 프레임워크 이번 시간에 한 것 한 줄 정리 : DirectX로 무언가를 하기에 앞서 세팅을 한다. Windows desktop application 새 프로젝트를 GameCoding이란 이름으로 만든다. 실행을 해보면 윈도우 창이 실행된다. Source Files에 99. Headers라는 필터를 만들고 헤더 파일을 넣는다. 01. Main라는 필터를 만들고 GameCoding 파일을 넣는다. 그리고 GameCoding 프로젝트 우클릭을 해서 properties(속성)을 열고, C/C++에 precompiled header(미리 컴파일된 헤더)라는 곳이 있다. 이렇게 설정을 한다. 99. Headers 필터 안에 Andromeda 필터를 만들어 pch 클래스를 생성한다. pch.h에 공용으로 사용할 기능들을 넣어주.. DirectX 2023. 12. 2. 1. 렌더링 OT 컴퓨터의 구조는 여기에 GPU가 더해진다. CPU와 GPU의 차이는 무엇일까? CPU는 소수 정예 GPU는 양으로 승부 GPU가 쓰이는 곳은? CPU는 포괄적이라 필수적인 거고, 중요한 업무 GPU는 연산량 많지만 복잡하지 않은 경우. 외주 주는 느낌. GPU가 유리한 경우: 게임, 암호 화폐 채굴, AI 서버에서는 GPU를 사용할까? 사용하지 않는다. 연산을 병렬적으로 던지고 수거해야 해야 하고, 각 연산이 독립적이어야 하기 때문에 게임 서버와는 맞지 않기 때문이다. 게임에는 왜 필요할까? 움직이는 것을 픽셀에 그려줘야 하는데 각 점마다 어떤 색상인지 계산을 해야 한다. 해상도 * 프레임을 생각하면 1초에 계산해야 할 량이 많다. 영화와 게임의 차이는 무엇인가? 렌더링이란 간단히 말해 무엇인가? 3D .. DirectX 2023. 12. 1. 0. DirectX OT 및 계획 DirectX란? GPU에게 일을 시키는 라이브러리 CPU가 있는데 GPU에게 외주를 주는 이유가 뭘까? CPU 만으로는 연산량이 벅차서 외주를 주는 거 외주도 정해진 규격대로 던져야 하는데 그걸 학습하는 과정이다. 출처: https://learn.microsoft.com/ko-kr/windows/win32/direct3d11/overviews-direct3d-11-graphics-pipeline 화면에 어떤 그림이 그려지기 까지의 일련의 과정 언리얼, 유니티 엔진에서 다 해주는데 왜 공부해야 할까? 큰 규모의 게임 만들 때 렌더링 지식이 필요하다. 원리 알아야 응용 가능하기 떄문이다. 서버 프로그래밍을 하게 되더라도 3D세상 이해도 있냐, 없나는 큰 차이가 있다. 삼각형 띄우는 것, 벡터, 행렬부터 물.. DirectX 2023. 12. 1. 이전 1 ··· 5 6 7 8 다음