노력과 삽질 퇴적물
* 요약0. "이 세상 게임은 내 작품에 무릎꿇게 될거다"같은 중2병은 당장 심신수양부터 하고 오세요. 1인 인디게임이나 혼자서 전과정을 하지, 학교과제 프로젝트만 해도 소~대규모로 구성된 팀으로 분업하는게 일반적입니다. * 요약1. C는 고대유물이다. 하지만, 아직도 현역이다. * 요약2. GPG를 늦게 안 만큼 손해봤다. * 요약3. 프로그래밍쪽은 공간좌표와 벡터/선형대수/기초물리가 가능하다는 전제로 작성한 정리입니다. * 요약4. 이 글은 기본적으로 실무자분들의 블로그를 참조해서 개발서적을 추려냈습니다. 1. 프로그래밍 언어입문서.-> C가 보이는 그림책: 개인적으로 '~가 보이는 그림책'은 첫발 딛기에 좋습니다. -> C++ 기초 플러스(5판): 자바를 하고 C++을 하시는게 이해와 정립에 득이 ..
* 이 포스트는 메모용으로 차후에도 내용이 변경될수 있으므로, 링크스크랩만 허용합니다. 1. 기초지식 ① 좌표계 ② 점의 표현 ③ 폴리곤 ④ 버텍스, 라인 2. Rendering Pipeline (모르면 개고생일만큼 중요) ① 가장 범용적인 파이프라인 형태 ② DX에서의 파이프라인 3. 기하 변환 ① 절차 ② 변환 ③ Back Face Culling (후면 선별) 4. 레스터 변환 ① 가시성 ② Depth buffer의 종류 ③ Fogging 5. DX의 3D관련 메모리 * Shader에서 사용되는 메모리는 레지스터로 불림 ① 화면 해상도 만큼 필요한 버퍼 메모리 ② 프로그래밍 형식에 따라 가변되는 메모리(Resource라고 부름) ③ 반드시 Graphic Card에 존재해야 하는 메모리 ④ 필요시 Sy..
* 이 포스트는 메모용으로 차후에도 내용이 변경될수 있으므로, 링크스크랩만 허용합니다. 1. DX 초기화 2. 그래픽 카드 3. 기타 초기화 & 게임프로그래밍 루프 4. Lost Device 1. DX 초기화 ① DirectX Library의 설치 여부검사 및 장치 인터페이스 포인터 얻기 -> 매우 간단g하게 IDirect3D9 인터페이스의 포인터를 얻는다. 즉 Direct3D에 접근 가능한 포인터를 얻는 것이다. 일단 이 포인터를 통해 아래 장치 성능을 확인할 수 있다. ② D3DCAPS9을 통한 장치 성능 확인 ③ 화면 크기/동작 모드 등 설정 -> D3DPRESENT_PARAMETERS 구조체의 값 설정 ④ D3DPRESENT_PARAMETERS를 통한 IDirect3DDevice9 객체 생성 //..
* 이 포스트는 메모용으로 차후에도 내용이 변경될수 있으므로, 링크스크랩만 허용합니다. 0. 다이렉트 엑스(DirectX)란? 1. DirectX의 구조 2. DirectX9 ① DX9부터 유명무실한 기능 ② DX9에서도 사용되고 있는 기능 3. DirectX10 4. DirectX11 0. 다이렉트 엑스(DirectX)란? -> 윈도우상 멀티미디어 어플리케이션 개발에 유용한 API다. 개발을 편하게 할뿐 개발을 대신하진 않는다. 1. DirectX의 구조 -> DirectX Graphics API : 그래픽 HW에 직접액세스 하는것보다 느려도, 호환성에 유용. -> 요즘 보급형 VGA는 광원효과에서 Emulation Layer가 필요. 2. DirectX9 DirectX = 2..
1. IDirect3D9인터페이스 2. D3DCAPS확인 3. 구조체 인스턴스 초기화 4. 객체생성. 1. IDirect3D9인터페이스 -> DirectX Library의 설치 여부검사 및 장치 인터페이스 포인터 얻기(2가지) ① IDirect3D9 *D3D; //COM(컴포넌트 객체모델) 인터페이스는 대문자I로 시작. ② LPDIRECT3D9 D3D = NULL; // D3D 디바이스를생성할D3D객체변수 D3D = Direct3DCreate9( D3D_SDK_VERSION ); //①나 ②로 얻은 포인터등을 사용. ////////////////////초기화: 시작//////////////////// LPDIRECT3D9 g_pD3D = NULL; //선언 HRESULT InitD3D( HWND hWnd..
* 각 소스마다 주석으로 소스내 구조흐름과 노트정리를 해두었습니다. * 튜토리얼 3부터는 자체적으로 변형한것들입니다. Tutorial 00: 다이렉트X 도큐먼트 C:\Program Files\Microsoft DirectX SDK (August 2009)\Documentation\DirectX9\directx_sdk.chm 을 실행해서 참고하는것도 좋습니다. Tutorial 01: CreateDevice /*----------------------------------------------------------------------------- // File: Tutorial 1.cpp //----------------------------------------------------------------..