1

所有代码都是伪代码

我有一个尺寸为 1024 x 768 的图像。

这是一张.jpg

我有一个大小为 1024 x 768 的窗口。

我创建了一个精灵,为其获取纹理,然后将其绘制到屏幕上。

例如:

D3DXCreateSprite( gfx.d3dDevice, &sprite );
D3DXCreateTextureFromFile( gfx.d3dDevice, _fileName, &gTexture );
....
pos.x = 0.0f;
pos.y = 0.0f;
pos.z = 0.0f;
sprite->Draw( scenes[ 0 ]->backgroundImage->gTexture, NULL, NULL, &pos, 0xFFFFFFFF );

当它出现在屏幕上时,图片被扭曲并且看起来不应该如何:

在此处输入图像描述

我的问题是:

当纹理、精灵或绘图功能似乎都没有功能时,如何控制图像输出的大小..?

我想也许这与 Rect 有关,但它只是剪辑图像//耸肩//

可能是我需要使用的:

4

1 回答 1

2
result = D3DXCreateTextureFromFileEx( 
    gfx.d3dDevice, 
    _fileName, 
    1024, 
    768, 
    D3DX_DEFAULT, 
    0, 
    D3DFMT_UNKNOWN, 
    D3DPOOL_MANAGED, 
    D3DX_DEFAULT, 
    D3DX_DEFAULT, 
    0, 
    NULL, 
    NULL, 
    &gTexture 
);

D3DXCreateTextureFromFileEx 允许在没有任何大小扭曲的情况下创建纹理:

于 2013-03-28T20:50:56.640 回答