Texture load

반응형

하나하나 차근차근....조금해하지말고...

기억하기 :  __uuidof

The __uuidof keyword retrieves the GUID attached to the expression. The expression can be a type name, a pointer, reference, or array of that type, a template specialized on these types, or a variable of these types. The argument is valid as long as the compiler can use it to find the attached GUID.
A special case of this intrinsic is when either 0 or NULL is supplied as argument. In this case, __uuidof will return a GUID made up of zeros.
Use this keyword to extract the GUID attached to an object by the uuid extended attribute

추가된 func :
ID3D10Texture2D*   tex     = NULL; 
ID3D10Resource* res = NULL; 

// id3dx10threadpump - 배경스레드를 생성하여 비동기방식으로 텍스쳐 로드, id3d10resource
 HRESULT hr = D3DX10CreateTextureFromFile(device, L"back.jpg", NULL, NULL, &res, NULL);
// id3d10resource(자원)을 id3d10texture2d(2d 텍스쳐자원)으로 바꾼다.   
 res->QueryInterface(__uuidof(ID3D10Texture2D), (LPVOID*)&tex);
 res->Release();

2d 텍스쳐를 로드하면 로드된 자원이 id3d10resource 인터페이스 객체로 표현되므로
이를 2d텍스쳐 자원에 해당하는 id3d10texture2d 인터페이스 객체로 바꿔야 한다.

// 렌더링
// 텍스쳐 자원을 후면버퍼로 복사함 - 한 텍스쳐 자원을 다른 텍스쳐 자원으로 일부만 복사.
 device->CopySubresourceRegion(backBuffer, 0, 0, 0, 0, tex, 0, &srcRect);
 backBuffer->Release();


'Study > Directx 10' 카테고리의 다른 글

좌표변환 (로컬 <-> 화면)  (0) 2010.05.18
텍스쳐 매핑.  (0) 2010.05.16
방향성광원, 점광원  (0) 2010.05.15
광원(확산, 정반사, 환경)  (0) 2010.05.15
다수의 광원.  (0) 2010.05.15
TAGS.

Comments