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 |