노력과 삽질 퇴적물
* 이 포스트는 메모용으로 차후에도 내용이 변경될수 있으므로, 링크스크랩만 허용합니다. 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..
+X = 엄지 / +Y = 검지 / +Z = 중지 왼손좌표계 : 모니터를 기준으로 안쪽으로 +Z 오른손좌표계 : 모니터 기준으로 화면바깥이 +Z
문자열 출력 strcpy() char str1[]; char str2[] = "문자배열로도도 덮어지기 가능."; strcpy(str1, "새로 덮어씌워지는 문자열"); strcpy(str1, str2); strcat() char str3[] = "가나다라"; char str4[] = "마바사아"; strcat(str3, str4); // -> str3을 출력시, 가나다라마바사아 숫자변환 int atoi (const char *nprt); -> int n1 = atoi("1234"); //n1 = 1234; long atol (const char *nprt); -> long n2 = atil("-1234567"); float atof (const char *nprt); -> float n3 = atof("..
게임 시나리오 개론(김종혁 지음)같은 몇몇 이론서적을 참조해서 작성했습니다. 옛날 자료를 다시 올린겁니다. Ⅰ. 아케이드 장르 (ARCADE GENRE) 아케이드는 오락실에서 자주 볼수 있는 게임으로 [액션,슈팅,퍼즐,퀴즈]등 키 조작이 간단하고 단순한 기술로 이루어진 게임들. 본래 아케이드는 '지붕이 있는 상점가'등의 뜻으로 대형상점가, 대형 업소용 게임장을 지칭. 이것이 업소용 게임의 총칭으로 쓰이다가 국내 PC게임 산업이 발전하기 시작한 초기에 게임잡지나 게임개발사 그리고 개발자들이 개념없이 [액션,슈팅,퍼즐,보드식 퍼즐]장르를 구분없이 어는 순간에 통칭되고 있다. (1)아케이드 장르의 세부 분류 액션(ACTION) - 종스크롤 횡스크롤 다방향스크롤 대전 격투 1인칭 3인칭 슈팅(SHOOTING) ..
객체지향 프로그래밍(OOP) = 캡슐화 + 다형성 + 상속 다형성? => 클래스내 함수들 이름이 같아도 반환타입이나 입력_인수가 다르면, 함수들의 동작은 각각 다르다. ex. int printSum (int a, int b); float printSum (float a, float b); void printSum (int n); void printfSum (); 1. 오버로드 -> 함수명은 같아도, 반환값이나 인수값(매개변수)의 자료형이 다르다. [동명이형] -> 입력되는값을 거의 자동으로 인수값이 맞는 함수에 넣음. -> 오버라이드와는 다르다. 오버라이드는 상위 클래스 메소드(함수)를 하위 클래스에서 재정의 하는것. #include using namespace std; int function(int n..