Software Development 378

5. Vertices_2)정점

2. Direct3D 정점Direct3D는 유연한 정점 포맷이라고 해서 프로그래머가 정점의 최적 정보만을 가질 수 있도록 그 형식을 설정할 수 있습니다.1) 1단계 : float x, y, z 좌표값2) 2단계 : float rhw (이미 변환된 정점에만 사용)3) 3단계 : 블랜딩 값4) 4단계 : 정점 법선5) 5단계 : 정점 포인트의 크기6) 6단계 : diffuse 값7) 7단계 : specular 색8) 1~8까지 텍스쳐 좌표쌍(u, v float 값)멤버 변수의 순서가 바뀌면 렌더링이 않되므로 순서를 지켜서 정의해야 합니다.정점의 구조체가 어떤 정보를 포함하는지에 대한 것은 아래의 값을 비트 OR연산하여 설정합니다.D3DFVF_DIFFUSE, D3DFVF_NORMAL, D3DFVF_SPECUL..

5. Vertices_1)Vector

1. Vector- 벡터 구조체 D3DVECTOR구조체와 D3DXVECTOR3구조체를 제공, D3DXVECTOR3는 벡터를 연살할 수 있는 연산자 오버로딩이 제공됩니다.D3DVECTOR typedef struct D3DVECTOR { float x; float y; float z; } D3DVECTOR; D3DXVECTOR3 typedef struct D3DXVECTOR3 : public D3DVECTOR { public: D3DXVECTOR3() {}; D3DXVECTOR3( CONST FLOAT * ); D3DXVECTOR3( CONST D3DVECTOR& ); D3DXVECTOR3( CONST D3DXFLOAT16 * ); D3DXVECTOR3( FLOAT x, FLOAT y, FLOAT z ); ..

C++/CLI 기본 예제

1. C++/CLI란?'C++/CLI'는 네이티브와 .NET의 중간 지점에 있는 또는 서로를 연결해 주는 언어라고 할 수 있습니다. 2. C++/CLI의 기본적인 흐름 C/C++코드를 C#에서 사용하는 기본적인 방법은 Wrapper 클래스를 통한 방법ㅇ비니다. C++코드를 컴파일 하여 Static Library 파일로 만듭니다. 만들어진 lib 파일을 C++/CLI를 이용해 감싸, dll 파일로 만듭니다. 이렇게 해서 C#에서 이용가능한 Managed Code를 만든 것입니다. C#에서는 C++/CLI로 만들어진 dll파일을 참조하여 사용하면 됩니다. 3. C++로 Native Code 만들기간단하게 두 개의 정수 인자를 받아서 합을 반환하는 함수를 만듭니다.파일->새로만들기->프로젝트, VisualC+..

동사 202개 모음

1. go - 출발점으로 부터의 이동.변화 자동사: 가다 , 출발하다, 나아가다, 도달하다, 떠나다, (어떤 상태로)되다, (어떤 장소에) 놓이다 Ex) I think we should go now. 이제 떠나야겠다.2. start - 운동의 시작 자동사: 시작하다, 움직이기 시작하다 , 출발하다 타동사: (~을) 시작하다 , 시동시키다 Ex) They started for London 그들은 런던으로 향했다.3. begin - 목적을 가진 동작의 개시 자동사: 시작하다, 말을 꺼내다. 타동사: (~을) 시작하다, 을 하기 시작하다. Ex) School begins at 8. 학교는 8시에 시작한다.4. leave - 그대로 두고 떠나다 자동사: 가다, 떠나다 타동사: (~을) 맡기다 , (~을,인) 채..

4. DirectX 프레임워크(framework)

1. 프레임워크란? 프레임워크란 골격이라는 의미로 코드를 작성하기 위해 제공되는 틀을 말합니다. 2. 프레임워크 구조 코드는 크게 Direct3D셋업에 대한 클래스와 게임에 관한 코드로 구분할 수 있습니다.셋업클래스는 게임프로그래머에게 공통된 환경을 제공하고,게임 코드를 작성하는 클래스는 이 클래스를 상속하여 사용합니다. 게임 코드는 실제 게임과 관련된 내용만 들어갑니다. 3. 셋업클래스 생성 위 이미지와 같이 선택 후 클래스 파일을 하나 생성합니다. 그리고 다음과 같이 코딩합니다. 이 클래스는 전부 셋업과 해제에 관한 내용이며, InitD3D(), Render(), Cleanup()은 클래스의 멤버함수가 되고, g_pD3D변수와 g_pd3dDevice는 클래스의 멤버변수가 됩니다. InitD3d(), ..

3. DirectX 기본환경 설정

1. 프로젝트 생성File-> 새 프로젝트 -> 'Win32 프로젝트' 선택 후 확인, 응용 프로그램 마법사에서 마침 선택합니다. 2. Win32 API 기본 코드 생성 - 엑셀레이터 코드 삭제 WIn32 API를 자동생성 코드로 생성하면 엑셀레이터 코드가 자동 생성됩니다. 엑셀레이터 코드는 단축키와 관련된 코드로, 다이렉트x에서는 사용되지 않습니다. 아래 노란색 영역을 지우고, 관련된 부분을 모두 삭제합니다.관련 코드를 모두 삭제하고, 실행시켜보면 다음과 같은 화면이 나옵니다. - 윈도우 핸들 g_hWnd 추가윈도우 핸들 g_hWnd를 전역변수로 추가한 후, InitInstance 함수를 다음과 같이 수정합니다.* Direct 3D환경의 셋업, 렌더링, 릴리즈 등 많은 곳에서 윈도우 핸들을 많이 사용하..