我只想加载我使用D3DXLoadSurfaceFromFile
从文件加载的位图的一部分。
有人可以向我解释一下这有用吗?我尝试使用RECT rect
设置尺寸为top,bot,right,left,如下所示:
result = D3DXLoadSurfaceFromFile(
surface, //destination surface
NULL, //destination palette
NULL, //destination rectangle
"legotron.bmp", //source filename
&rect, //source rectangle
D3DX_DEFAULT, //controls how image is filtered
0, //for transparency (0 for none)
NULL); //source image info (usuallyNULL)
//makesure file was loaded okay
if(!SUCCEEDED(result))
{
MessageBox(hwnd, "Error, result did not succeed", "Error", MB_OK);
return false;
}
但不幸的是,结果并没有成功。我确信这是一个简单的解释,但对于我的生活,我无法弄明白。
答案 0 :(得分:1)
问题还不清楚,你是否在加载图像时遇到问题,或者图像是否已加载但是表面没有你想要的纹理部分?
无论如何,我假设SUCCEEDED()是一个检查D3D_OK返回值的函数吗?我没有看到你的代码有问题,也许它与SUCCEEDED()检查功能有关。你正在对图像加载部分进行操作,不确定Source Rectangle部分,如果我没记错的话你应该将指针传递给它。