4

DirectX 7を学んでから、人は大きく変わりました。

どこを見ても(ウィキペディアを除く)、何かをする前にDWriteからD2DまたはGDIにレンダリングする必要があると書かれています。

そのウィキペディアの記事は間違っていますか?Direct3Dにレンダリングできませんか?

どうやら、D2DをD3Dに書き込むには、D3D10.1デバイスも開く必要があるため、D2Dにレンダリングする必要はありません。

D3D11でテキストをレンダリングするだけで、本当にこれらすべてが必要ですか?

4

1 に答える 1

2

残念ながら、MicrosoftはDirectXAPIからネイティブテキストのサポートを削除することを決定しました。これで、DirectWriteを使用してから、GDIまたはD2Dにレンダリングすることができます。これはやや不格好です。あるいは、独自のフォント処理クラスを作成して、それを使用することもできます(これは、私のプロジェクトで行うことを選択したものです)。 )。

カスタムフォント処理クラスを作成する方法についての優れたチュートリアルがここにあります:http ://www.rastertek.com/dx11tut12.html

もちろん、独自に作成する必要がありますが、それは良い出発点を提供し、必要なすべての手順を確認できます(おそらく追加したいものは、複数のフォントのサポートです。そのために、Fontクラスを作成することをお勧めします。 Font-Handlerは、連想文字列とともにstd :: map <char *、Font *>)に格納します。

お役に立てれば!:)

于 2011-07-24T21:05:44.653 に答える