ページ 11

Dxライブラリを用いないでゲームを作成する

Posted: 2017年3月16日(木) 22:23
by リディアンドミナント
[1] 質問文
 [1.1] 自分が今行いたい事は何か
C言語、又はC++を用いてゲーム制作を行おうとしています。
条件は自分でスクリプトエンジンを作成することです

 [1.2] どのように取り組んだか(プログラムコードがある場合記載)
まだ何もしてません。
C言語は昔勉強して、また再開しようとしてる所です。

 [1.3] 目的
ゲームを作りたいと思っています。
作りたいと思っているジャンルは、シューティングゲーム(縦スクロールとグラディウスみたいなゲーム)とアクションゲーム(ロックマン、マリオ)です。

 [1.4] 実行したいこと
ネットサーフィンをしていたら、東方はスクリプトエンジンを自ら作成してゲーム制作してると見ました。
・つまり東方はDxライブラリを使ってないのでしょうか?
・Dxライブラリを用いないで作るのと違いは何かあるのでしょうか?
・私も自らスクリプトエンジンを構築してゲームを作ってみたいのですが、具体的に必要な知識は何でしょうか?

以上3つの質問を教えて欲しいです。
よろしくお願いします。

Re: Dxライブラリを用いないでゲームを作成する

Posted: 2017年3月16日(木) 22:31
by らっぱっぱ
ゲームエンジン・アーキテクチャ 第2版

Re: Dxライブラリを用いないでゲームを作成する

Posted: 2017年3月17日(金) 10:54
by リディアンドミナント
らっぱっぱさん、返信ありがとうございます。
こちらの書籍を立ち読みしてみます。

また質問事項に簡単な解答でもいいのでお答えくださると嬉しいです

Re: Dxライブラリを用いないでゲームを作成する

Posted: 2017年3月21日(火) 16:58
by Durandal
・つまり東方はDxライブラリを使ってないのでしょうか?
Dxライブラリは使われていないと思います。
・Dxライブラリを用いないで作るのと違いは何かあるのでしょうか?
Dxライブラリを用いるとメモリ使用量が大きいです。
過去に「初期化しただけのDxライブラリゲーム」とフリーゲーム「恐怖の森」のメモリ使用量をタスクマネージャで比較してみたことがありますが、およそ2倍の使用量であったと記憶しています。またDxライブラリはすこし動作が重いです。気にならないレベルだと思いますが。
開発のしやすさに関してはDxライブラリを用いたほうがやりやすく、開発効率がよいです。
・私も自らスクリプトエンジンを構築してゲームを作ってみたいのですが、具体的に必要な知識は何でしょうか?
まずはWin32APIの知識が必要になります。
これを学べば、CUI(背景が黒く、文字だけの画面)からGUI(画像表示などいろいろできる)へ進化できます。実際、ブラウザなどほとんどのソフトがWin32PIで作られていると思います。

しかしWin32APIでゲームを作ろうとすると重すぎて話になりません(3Dゲームはほぼ不可能)。
そのため、効率的に画像や3D物体を表示するための DirectX というライブラリが必要になります。これさえあれば2Dだろうが3Dだろうが音ゲだろうがゲームなら何でも作れます。
市販のWindowsゲーム(GTAや東方など)や市販のXboxゲーム、Dxライブラリまでもが内部でDirectXを利用しています。

しかしDirectXを使うためにはグラフィックや数学のベクトルなどといったさまざまな知識が必要とされます。初期化するだけで挫折者が出るほどコーディングも難しいです。
正直、相当なやる気と覚悟がなくては画像1枚表示することすらできないと思います。

なので多少動作が重くなってもDxライブラリを用いたほうが良いかと思います。同じゲームを作るにしても、簡単でバグも出にくいので。

Re: Dxライブラリを用いないでゲームを作成する

Posted: 2017年3月24日(金) 10:53
by リディアンドミナント
Durandalさん返信ありがとうございます。
各質問に答えていただきありがとうございます。
二人の意見を交えて今後のプログラミングを趣味として活かそうと思います。