ゲームを製作しているのですが、画像を描画する際には、DirectXを使用した方が良いのでしょうか?
DirectXは「難しそう」とか言うイメージを持って敬遠して、Bitbltを使っています。
速度的に劣ったりしないのなら、このままBitbltを使おうと思っているのですが、どうでしょう。
さあ…。現状で問題ないのなら、それでいいんじゃないんでしょうか?
DirectXを使うと、確かWindowsの本来APIでは操作できない部分も、
操作できるそうですけど、
やはり、必要なければ、無理に使う必要はないと思います。
DirectXを使っていない面白いゲームも、結構たくさんあります。
ただ、サウンドエフェクトなどには、PlaySoundよりDirectSoundのほうがいいとか、あるかもしれません。
(同時再生周りの関係で)
DelphianWorld(http://home1.infonia.ne.jp/~delphian/delphi/)のマルチメディアのページに、
DirectX用コンポーネントがあるので、必要なときにはそれを使ってみては?
ところで、BitbltよりDrawを使ったほうがコードがすっきりするかも、引数三つしかないですし。
CanvasのBrushとかを自動的に選択してくれるぶん、
同名のAPIを使うより、Canvasのメソッドを使ったほうがいいケースもありますから。
DirectXにはスプライト機能があるので、便利です。
速度を要するゲーム(たとえば3Dレーシングゲームなど)では、DirectXやOpenGLのほうがよい場合があります。
その場合はハードウェアもDirectXやOpenGLに対応している必要がありますが。
たかみちえさんの言うように、特に問題がなければBitBltでもよいと思います。
DelphiのDirectXコンポーネントでは、QuadrupleDが有名みたいです。
Delphian Worldにもあります。
返信ありがとうございます。
とりあえず、今のところは支障が無いのでBitBlt使っていこうと思います。
ありがとうございました。
ツイート | ![]() |