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 に答える