解像度を変更して、ゲーム全体を新しい解像度に引き伸ばすにはどうすればよいですか? ゲームに基本解像度を持たせたいのですが、それを変更すると、その新しい解像度に引き伸ばされます。同様の質問をいくつか見ましたが、すべての回答で、プレゼンテーション パラメータを変更する必要があることが示唆されました。これを行うと、画面の解像度が変更されますが、他のすべてのオブジェクトは同じサイズのままで、間違った位置に描画されます。
LPD3DXSPRITE オブジェクトを使用して、画面にテクスチャ、いくつかの DirectX テキスト、および次のように定義された頂点を描画します。
#define D3DFVF_VERTEX (D3DFVF_XYZRHW | D3DFVF_DIFFUSE)
D3DXSPRITE_OBJECTSPACE を sprite->Begin() に配置して、射影、ビュー、およびワールド マトリックスを操作しようとしましたが、成功しませんでした。
この方法が可能かどうか、またどのようにすればよいか教えてもらえますか? また、サーフェスにレンダリングしてからサーフェスを引き伸ばすことを提案する別の方法についても読みましたが、それを実装する方法がわかりません。DirectX初心者です。2番目の方法をグーグルで検索しましたが、説明している人を見つけることができず、スプライトからサーフェスに描画できるとは思いません。
編集:
CreateRenderTarget、SetRenderTarget、および StretchRect メソッドを使用してこれを行うことができました。最初にサーフェスに出力し、次にバック バッファーでストレッチしました。