본문 바로가기
반응형

DirectX1126

[DirectX11] Box 예제 ※ 아래의 내용들은 DirectX 11을 이용한 3D 게임 프로그래밍 입문 책의 내용을 바탕으로 작성된 것입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 11.. 2022. 11. 17.
[DirectX11] 효과 프레임워크 ※ 아래의 내용들은 DirectX 11을 이용한 3D 게임 프로그래밍 입문 책의 내용을 바탕으로 작성된 것입니다. 정점 셰이더 Direct3D에서 셰이더 프로그램은 주로 효과 파일(effect file)이라고 부르는 텍스트 기반 파일로 작성한다. 하나의 정점 셰이더는 본질적으로 하나의 함수이다 정점 위치는 정점의 다른 특성들은 관여하지 않는 연산들(ex : 절단)에 쓰이기 때문에, 다른 특성들과는 다른 방식으로 처리해야 한다. 기하 셰이더를 사용하지 않는다면 정점 셰이더에서 투영 변환을 반드시 수행해야 한다. - 기하 셰이더가 쓰이지 않는 경우 하드웨어는 정점 셰이더를 떠난 정점이 동차 절단 공간에 있다고 가정하기 때문 - 기하 셰이더를 사용하는 경우에는 투영 변환을 기하 셰이더에게 미룰 수 있다. 정점.. 2022. 11. 8.
[DirectX11] 정점 버퍼와 색인 버퍼 ※ 아래의 내용들은 DirectX 11을 이용한 3D 게임 프로그래밍 입문 책의 내용을 바탕으로 작성된 것입니다. 정점 및 정점 버퍼 - 원하는 자료(특성)를 가진 커스텀 정점 형식을 만들려면 우선 그러한 자료를 담을 수 있는 구조체를 정의해야 한다. - 정점 구조체를 정의했다면, 해당 구조체의 각 성분(필드)이 어떤 용도인지 Direct3D에게 알려 주어야 한다. => ID3D11InputLayer 형식의 입력 배치(input layer) 객체를 이용한다. => 입력 배치 객체는 D3D11_INPUT_ELEMENT_DESC 구조체들로 이루어진 배열을 통해서 구축한다. => D3D11_INPUT_ELEMENT_DESC 배열을 이제부터 입력 배치 서술(input layer description) 배열이라고.. 2022. 11. 7.
[DirectX11] 렌더링 파이프라인(2) ※ 아래의 내용들은 DirectX 11을 이용한 3D 게임 프로그래밍 입문 책의 내용을 바탕으로 작성된 것입니다. 렌더링 파이프라인 렌더링 파이프라인은 현재 가상 카메라에 비친 3차원 장면의 모습에 근거해서 2차원 이미지를 생성하는 데 필요한 일련의 단계 전체를 의미한다. 렌더링 파이프라인 순서 입력 조절기(IA) 단계 정점 셰이더(VS) 단계 덮개 셰이더(HS) 단계 테셀레이터 단계 영역 셰이더(DS) 단계 기하 셰이더(GS) 단계 스트림 출력(SO) 단계 레스터화기 단계 픽셀 셰이더(PS) 단계 출력 병합기(OM) 단계 정점 셰이더(VS) 단계 - 최종적으로 화면에 표시되는 것은 2차원 이미지이다. => 3차원 장면에 가상의 카메라를 배치해야 한다. => 카메라는 세계에서 관찰자가 볼 수 있는 영역 .. 2022. 11. 5.
반응형