Loading...

string -> char* -> WCHAR* 타입 변환

WCHAR* szWchar; char* szChar; string csString; csString = "타입 변환하는 방법입니다."; // string -> char* szChar = (LPSTR)(LPCSTR)csString.c_str(); // char* -> WCHAR* // 다음과 같은 방법도 있으나 끝에 쓰레기 값이 같이 출력된다. // MultiByteToWideChar(CP_ACP, 0, szChar, strlen(szChar), szWchar, strlen(szChar)); // 권장 방법 szWchar = new WCHAR[strlen(szChar)+1]; _swprintf(szWchar, L"%s", CA2W(szChar)); MessageBox(szWchar, _T("변환 완료"),..

Directx9 셰이더 프로그래밍 예제 수정방법.

세가지 오류가 발생한다. 1. error C2061: 구문 오류 : 식별자 'LPDIRECTXFILEDATA' d3dfile.h 폴더에 #include 를 추가한다. 2. error C2664: 'D3DXLoadMeshFromXof' : 매개 변수 1을(를) 'LPDIRECTXFILEDATA'에서 'LPD3DXFILEDATA'(으)로 변환할 수 없습니다. d3dfile.cpp 파일에서 아래 부분을 고쳐준다. if( FAILED( hr = D3DXLoadMeshFromXof( (LPD3DXFILEDATA)pFileData, D3DXMESH_SYSTEMMEM, pd3dDevice, &pAdjacencyBuffer, &pMtrlBuffer, NULL, &m_dwNumMaterials, &m_pSysMemMes..

2009. 6. 26. 13:02

밉맵 필터링

밉맵 (mipmap) 은 텍스처 집합으로, 각 텍스처는 동일한 이미지에 대해 점진적으로 낮은 해상도를 가지며, 각 이미지의 높이와 너비 (혹은 레벨) 는 이전 레벨보다 2의 거듭제곱만큼 작다. 하지만 반드시 제곱이어야 하는건 아니다. 고해상도 밉맵 이미지는 유저에게 가까운 개체, 저해상도 밉맵 이미지는 멀리 있는 개체에 사용되며, 이는 보다 많은 메모리를 사용해 렌더링된 텍스처의 질을 높이는 방식이다. D3D는 밉맵을 덧붙여진 표면들의 체인으로 표현한다. 즉 가장 높은 해상도의 텍스처가 맨 처음에 위치하며 가장 낮은 해상도의 텍스처가 맨 마지막에 위치한다. 다음 비트맵 텍스처는 3D 1인칭 게임에서 컨테이너 표지를 나타낸다. 이 텍스처가 밉맵으로 만들어지면, 텍스처는 해상도 순으로 위치하며, 각 텍스처의..

텍스쳐 렌더링

모니터에 출력하기 위한 하드웨어의 구성을 살펴보면 버스, 그래픽 프로세서, 비디오 메모리 + 프레임 버퍼, 비디오 제어기 등으로 구성되어 있다. 비디오 제어기는 프레임버퍼에 저장되어 있는 픽셀정보를 이용해서 화면에 색상을 표현하는데 이러한 픽셀은 장차 모니터로 출력될 그래픽 프로세서가 처리한 결과물이다. OpenGl에서는 프레임 버퍼의 구성이 Front Buffer, Color Buffer, Depth Buffer, Stencil Buffer, Accumlation Buffer, Auxiliary Buffer등으로 구성되어 있는데 이중에서 Direct3D는 전면버퍼와 색상버퍼, 깊이버퍼, 스텐실 버퍼만이 존재한다. 서피스는 처음에는 픽셀의 집합정도로 사용되다가 3D로 와서 좀 더 확장되어 색상뿐만 아니라..

2009. 6. 25. 09:26

HDR Cube Map Sample

이 예제는 부동소수점 텍스쳐와 높은 동적 범위의 광원과 함께 입방체 환경 맵핑에 대해 말한다. d3d9에서 텍스쳐를 위해서 부동소수점 포맷이 유용하다. 이 포맷은 빛이 재질에 흡수되는 부분에서 환경맵핑이 된 매시의 좀 더 사실적인 빛 효과를 만들수 있게 하기 위해 1.0보다 큰 색상값을 저장할 수 있도록 한다. Sample Overview 이 샘플은 두가지의 랜더링 기술(입방체 환경맵핑과 높은 동적 범위 광원)을 보여준다. 1. 입방체 환경맵핑 - 입방체 환경 맵핑은 큐브텍스쳐맵 내부의 하나의 3D 물체의 환경 주위에서 랜더링 되는 기술로서 해당 물체는 빛이 가미된 효과를 만들기 위해 강한 빛을 계산하는데 메모리를 소모하지 않고 큐브맵을 사용할 수 있다. 2. HDR - 높은 동적 범위(HDR) 광원은 ..