• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ID3DXSprite::Drawメソッドに関して質問です。)

ID3DXSprite::Drawメソッドの座標指定に関する問題

このQ&Aのポイント
  • ID3DXSprite::Drawメソッドの座標指定について質問があります。スプライトの中心を指定する座標を画像の中心にセットする方法について調査しています。
  • スプライトのサイズとウィンドウのクライアントサイズが完全に一致している場合、スプライトを右下にずらすことで問題なく描画できると思っていましたが、実際には地味に左上に描画されます。
  • インターネットで調べるとテクスチャの描画には0.5ピクセルのずれを意識する必要があるという記述があります。この場合でも座標の求め方に問題があるのかどうか知りたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • aris-wiz
  • ベストアンサー率38% (96/252)
回答No.1

うろ覚えで、もうあまり詳しくもありませんので 参考までに。。。 まず、お使いの環境にもよると思います。 DirectX9時代、古いグラフィックカードなどの 制限でテクセルのアライメントを必要とした場合に この0.5アラインの問題が発生します。 なので、この症状が起こっている環境を ずっと使う、或いは上記の環境も視野に 入れたソフトウェアを作るならば、 意識する必要がでてきます。 が、基本的に、現在の主流になっている カードのほとんどで、これらは対策や 準拠化がなされていますし、DirectX10以降では この問題を対策する必要はありません。 別段、座標の求め方などに問題が あるわけでもないと思います(たぶん。。。) テクセルアライメントについては、 DirectX9なら、たしかドキュメントに記載が あったはずなので、一読してみる と良いかもしれません。

ClickHere
質問者

お礼

"テクセルのアライメント"でググってみると、MDSNにその旨が記載されていました。 …イジメですかね、マイクロソフト。Win32APIといい、ややこしいことが多すぎますね。 まさか、根本的に概念が異なるとは…。 自分的には、ピクセルは基本、Win32APIで整数値のみ指定できたので、UINTあたりでキャストしているものとばっかり思っていました。 実際に、10/1pixlが使用できるんですね。 とてもためになりました。ありがとうございます。