예전 (133) 썸네일형 리스트형 [3D] 알파 블렌딩 (ALPHABLEND) 알파 블렌딩 이란 픽셀을 조합하는 기술이다.Dest(대상)에 Src(원본) 을 변경 조합해서 픽셀 색을 조정한다. 알파 블렌딩을 할 때 주의 사항은 현재 그려져 있는 대상과 렌더링할 폴리곤의 색을 합성하는 것이기 때문에 불투명 오브젝트를 렌더링 해야한다. 알파 블렌딩을 할 때는 1. 블렌딩을 하지 않는 물체를 먼저 그리고, 2. 블렌딩을 할 물체를 카메라와의 거리에 따라 정렬한다.3. 블렌딩을 이용하는 물체들을 뒤에서 앞 순서로 그려나간다. 알파 블렌딩은 부하가 심한 작업이므로 렌더링이 끝나면 꺼줘야 한다. 또한 블렌딩이 필요한 폴리곤들을 한번에 처리해 하나의 프레임에서 여러 번 블렌딩을 켜고 끄는 일은 피하는 것이 좋다. 키고 끄는 방법은 g_pd3dDevice->SetRenderState(D3DRS_.. [3D] 컬링 모드 3D 의 컬링 모드에 3가지 인줄 알았는데 알고보니 4가지가 있다. typedef enum _D3DCULL { D3DCULL_NONE = 1, D3DCULL_CW = 2, D3DCULL_CCW = 3, D3DCULL_FORCE_DWORD = 0x7fffffff, /* force 32-bit size enum */} D3DCULL; D3DCULL_NONE 뒷면의 컬링(Culling)는 하지 않는다.D3DCULL_CW뒷면을 우회전으로 컬링(Culling) 한다. (시계)D3DCULL_CCW뒷면을 왼쪽 회전으로 컬링(Culling) 한다. (반시계)D3DCULL_FORCE_DWORD이 열거형을 강제적으로 32 비트 사이즈에 컴파일 한다. 이 값은 사용되지 않았다. g_pd3dDevice->SetRenderSt.. [3D] SetSamplerState 텍스쳐는 스크린 좌표에서 삼각형에 입혀진다. 텍스쳐와 폴리곤의 크기가 다른경우 축소 혹은 확대 되어 적용된다. 이때 왜곡이 발생하는데 필터링을 통해 이러한 왜곡현상을 줄이기 위해 SetSamplerState 함수를 사용한다. HRESULT SetSamplerState( DWORD Sampler, D3DSAMPLERSTATETYPE Type, DWORD Value );Sampler[in] 샘플러 스테이지 인덱스.Type[in] 이 파라미터에는,D3DSAMPLERSTATETYPE 열거형의 임의의 멤버를 지정할 수 있다.Value[in] 설정하는 스테이트값. 이 값의 의미는 Type 파라미터에 의해 정해진다. 성공했을 경우는,D3D_OK 를 돌려준다.실패했을 경우는,D3DERR_INVALIDCALL 를 돌려준.. [C/C++] 템플릿 템플릿 오버로딩을 활용하기 위한 것으로 기능은 결정되어 있으나 자료형이 정해지지 않은 것이다. 템플릿이란 말 그대로 무엇을 만들기위해 찍어내는 틀이다. 템플릿은 크게 함수 템플릿과 클래스 템플릿으로 나눌 수 있다.함수 템플릿은 간단히 말하면 함수를 찍어내는 틀을 말하고, 클래스 템플릿은 클래스를 찍어내는 틀을 말한다. [C++] 스마트 포인터 스마트 포인터란? 다른 객체의 포인터 역할을 하는 객체이다.객체가 소멸될 때 소멸자를 이용해 동적 메모리를 삭제한다. 스마트 포인터를 사용하면 생성과 소멸 작업을 조절할 수 있고, 복사와 대입 동작을 조절할 수 있다. 스마트 포인터는 어떤 동적 할당된 객체를 가리키고 있다가 스마트 포인터로 만들 때에가리킬 객체의 포인터로 초기화한다. [3D] 절두체 컬링의 종류 절두체 컬링의 종류화 간단한 이해를 적은 글로 GPG 5권 1.6 개선된 절두체 선별을 보고 공부한 후 작성했습니다. 컬링이란 게임 내의 물체를 적절히 관리해 렌더링을 효과적으로 하기 위한 일로쉽게 말하면 부하가 심해져서 프로그램에 렉이 걸리지 않기위해 하는 것이다. 절두체란 시야에 보이는 영역을 표현한 입체로 카메라 투영행렬로 나타낼 수 있다. 1. 6 평면 방식 - 가장 일반적인 방법의 컬링이 절두체의 6 평면을 이용한 것인데,한 정점이 절두체 안에 있는지 알기 위해 평면 방정식으로 판단하는 것으로 6 평면 모두를 판단 한다. 단점은 모든 평면의 평면 방정식을 만족해야 안심할 수 있다는 것이다.또한 절두체의 위치나 방향을 얻는데 드는 비용이 상당하기 때문에 카메라 이동 시 마다 계산한다고 해도 불필요.. [3D] 지형에서 지형에서 Vertex 버퍼로 만들 때 필요한 Vertex의 수는(w-1)*(h-1)*6 셀의 수는(w-1)*(h-1) Index 버퍼로 만들 때 필요한 Vertex의 수는w*h Index 버퍼의 수는(w-1)*(h-1)*2 [3D] 3D 물체 중심으로 카메라 회전 (RPG 카메라) 아 ...구글링아무리 해도 안나와서 화났는데어쩌다 됬어 이게 더화나!!!!!!!!!!!!!ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 아 멘붕ㅇㅅㅇ 결론적으로 http://www.gpgstudy.com/forum/viewtopic.php?t=14612 여기서 참고 했는데, 카메라의 모든 벡터들 즉 Look,Up,Right,Eye 를 각도에 따라 회전시켜줘야한다. ... 그러면 엄청 잘됨 ... // LookAt을 중심으로 회전 voidJB_RPGCam::RotateLR(const float& fAngle) { D3DXMATRIXA16matRot; D3DXMatrixRotationY(&matRot, fAngle); D3DXVec3TransformCoord(&m_vLookAt,&m_vLookAt,&matRot); D3DXVec3Tr.. 이전 1 ··· 4 5 6 7 8 9 10 ··· 17 다음