スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

DXライブラリに挑戦!

以前windowsAPIでゲームを制作したのですが、今度は
DXライブラリを使ったゲーム制作に挑戦しようと思います。

いきなり物理やら3Dやらを使おうとすると、多分ロクな事にならないと思うので、
簡単なものから作り、徐々にレベルを上げて行きたいと思います。

で、何を作るかというと、以前途中で中断したままの
ローグライクゲーム。
これの完成を目指します。

そして、早速参考となるサイトから情報を集め、プログラムを実行。
Hello.jpg
多分、 知っている人は知っているサンプル画像だと思います。

しばらくは順調に進み、 「おぉ~うまく行った!」とか喜んでいたのですが、
途中でつまづきました。

”PlaySound関数”が使えなかったのです。
(音楽を流す関数。)

使おうとすると、 "外部参照が未解決" とエラーメッセージが。

・・・後で調べたところ、winmm.libをリンクする必要があると知ったのですが、
何故かリンクしてもエラーが発生。
(うまくリンク出来てなかっただけかもしれない)

で、結局どうしたかというと、
------------------------------------------------
 PlaySound("subconsciousness.mp3" , DX_PLAYTYPE_BACK);
PlaySoundFile("subconsciousness.mp3" , DX_PLAYTYPE_BACK);

------------------------------------------------
関数名を変更しました。

(windowsAPIと名前が被っているので、
”PlaySoundFile”という名前でも実行できるようにしたとの事。)
【参考】⇒DXライブラリ置き場 更新履歴

まぁ、障害が発生しながらも こんな感じで作業は進んでます。
完成まで頑張るぞ!(`・ω・´)
スポンサーサイト

テーマ : ゲーム製作 関連 - ジャンル : ゲーム

コメント

No title

こういう技術を学ぶには2通りあるのかなーと最近思い始めてきました。
ひとつは本や解説サイトの順を追って学んでいくこと。
もうひとつは、知識がほぼ0の状態から、いきなり作りたい物を作り始める事です。

No title

確かにそうですねv-290
後者はOJTなどが当てはまるかなと思います。

どちらが良いのかはよく分かりませんが、後者の場合は
失敗すると人によっては挫折しかねない方法かな、と思いますv-293
(うまく行けば、必要な知識などを効率よく学べるとは思うのですが)

個人的には…

PlaySoundDxとかにしてほしかったかなぁ…ってどうでも良いですね(笑)

mciSendStringで実装してもよいかもしれませんよ。私はC#用ですが、mp3形式の音楽ファイルを再生するクラスをmciSendStringを利用して自作しました(^-^)

ちなみに、.NETなら、SoundPlayerというwav形式限定ですが、音楽再生用クラスが用意されています。

No title

PlaySoundDxですか(笑)
なんだかそっちの方が良い感じもします。
(printfは printfDxみたいですね)

なるほどーe-451
ありがとうございます 様々な実装方法がありそうですね。
とりあえずはDXライブラリも利用しながら、色々と試行錯誤しながら作ってみますe-454

No title

DXライブラリを使うと、WINAPIを使用した場合のイベントドリブン形式を感じさせないように組めるように作られています。

マルチスレッドを意識しないでいいといいますか、見た目は完全にシングルスレッドプログラムに見えます。

なので、WINAPIでの作業に慣れていると、ちょっと勝手が違うのでとまどうかもしれません(^_^;)

ただ、WINAPIを知っていると、中での動作が予想できるので、理解も早いと思います。

No title

そうですねv-290
windowsAPIとは違う部分が色々あるなーと思いましたv-293
(当然のことではありますが)
ただ、プログラムの考え方や経験などは同じように活かせるので、
慣れる事が出来ると思いますe-454
(この関数はwindowsAPIでいう●●の処理だなーとか
色々 置き換えたりしながら進められます)

しかし便利なものですね。
画像も、windowsAPIではstaticなメンバを持つクラスで色々と管理しようとしてましたが、
DXライブラリではInitGraph()を呼び出すだけでOKだったり。
(裏で、何がメモリに割り当てられたかなど 管理しているんでしょうね)
コメントの投稿
管理者にだけ表示を許可する



上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。