少し前にC言語の勉強を始めた者です。
ざっくりとした質問になってしまいますが、描画にWin32APIのGDI関数だけを使って
リアルタイムに動くゲーム(グラ●ィウスとかのシューティングのような)を作ることは可能なのでしょうか?
また、作ることができる場合どのようなものまでつくれるのでしょうか?
(なにかゲームの作品名をあげてもらえるとイメージしやすくて助かります。)
ウインドウズに付属するピンボール(Space Cadet)のようなものはDirectXをつかっているのでしょうか?
よろしくお願いします。
GDIのみでゲーム作り
Re:GDIのみでゲーム作り
私は実際にWINAPIだけを使ってシューティングをある程度まで完成させました。
私の作り方がまずかったのか、弾を300発程度描画したら、処理落ちしたり
ほかにも高度なエフェクトを表現できなかったので、
今は描画部分をDirectXに移行させて現在作り直しています。(DXライブラリではありません)
ですので、シューティングもある程度のものなら十分作れると思います。
ですが、画像を回転させたり、高度なアルファブレンディングをしたりなどになってくると
DirectXなどを使わないと表現できなくなってきます。
ですので、そんなにクオリティの高いゲームでなければ十分作れます。
私の作り方がまずかったのか、弾を300発程度描画したら、処理落ちしたり
ほかにも高度なエフェクトを表現できなかったので、
今は描画部分をDirectXに移行させて現在作り直しています。(DXライブラリではありません)
ですので、シューティングもある程度のものなら十分作れると思います。
ですが、画像を回転させたり、高度なアルファブレンディングをしたりなどになってくると
DirectXなどを使わないと表現できなくなってきます。
ですので、そんなにクオリティの高いゲームでなければ十分作れます。

Re:GDIのみでゲーム作り
シエルさん、回答ありがとうございます。
やはりある程度までは可能なのですね、
しかし高度な表現が使えないということですか・・
状況に応じてDirectXを使うこともしなきゃいけないということですね。
ちなみにシエルさんは開発環境(コンパイラ)はなにをつかっていますか?
私はMinGWを使っているのですが、MinGWからのDirectXの使い方がいまいちわかりません。
(本当はDXライブラリをMinGWで使える方法がわかればいいんですが・・・)
参考になるサイトとかをご存知であれば教えていただけると助かります。
やはりある程度までは可能なのですね、
しかし高度な表現が使えないということですか・・
状況に応じてDirectXを使うこともしなきゃいけないということですね。
ちなみにシエルさんは開発環境(コンパイラ)はなにをつかっていますか?
私はMinGWを使っているのですが、MinGWからのDirectXの使い方がいまいちわかりません。
(本当はDXライブラリをMinGWで使える方法がわかればいいんですが・・・)
参考になるサイトとかをご存知であれば教えていただけると助かります。
Re:GDIのみでゲーム作り
私はVisual C++ 2008 Express Editionです。
私はまだC言語暦5ヶ月程度ですので、ほかのコンパイラは使ったことがありません^^;
MinGWなんか聞いたことないですね^^;
DXライブラリも普段まったく使わないので、ちょっとアドバイス出来そうにありません。
申し訳ありません。
ですので、ほかの方よろしくお願い致します^^
私はまだC言語暦5ヶ月程度ですので、ほかのコンパイラは使ったことがありません^^;
MinGWなんか聞いたことないですね^^;
DXライブラリも普段まったく使わないので、ちょっとアドバイス出来そうにありません。
申し訳ありません。
ですので、ほかの方よろしくお願い致します^^
Re:GDIのみでゲーム作り
使ったことはないのですが、SDLと言うのあるので試されてはどうでしょう。
「SDL - Wikipedia」
http://ja.wikipedia.org/wiki/SDL
MinGW + SDL で Windowsソフト開発
http://ai11.net/2005/05/06/
「初心者の初心者による初心者の為のSDL」
http://tokyo.cool.ne.jp/sdl/
「SDL - Wikipedia」
http://ja.wikipedia.org/wiki/SDL
MinGW + SDL で Windowsソフト開発
http://ai11.net/2005/05/06/
「初心者の初心者による初心者の為のSDL」
http://tokyo.cool.ne.jp/sdl/