- 締切済み
勉強になるゲームのプログラミングの本
ゲームを作ってみたいと思っています! 参考になる本や資料があれば教えていただけないでしょうか? 目標は3Dゲームを作ることです。 参考となる本や資料は説明しか書いていないノウハウ本よりも、 コードが多めのもので構いません。 難易度も問いません。 言語についてもC・C++に限定するつもりはないです。 (現在習熟中の言語は、C・C++とVB) よろしくお願いします。
- C・C++・C#
- 回答数2
- ありがとう数0
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- srwproject
- ベストアンサー率0% (0/0)
ゲーム開発を入門されるということで、オススメの入門の流れと個人的にゲーム開発を経験して感じたことなどを書かせていただきます。 ゲームを開発するには大きく分けて二つの手段があります。 まずはどちらを選ぶのかを決めましょう。 1.プログラムを1から書く 2.ゲームエンジンを使う ■1.プログラムを1から書く場合 プロを目指される方向けです。 ●やらなきゃいけないこと ▼その1:数学 3Dゲームを開発するためには様々な数学的知識が必要となります。 特に3Dゲームの場合は以下の数学を用いることが多いです。 ・三角関数 ・ベクトル ・内積&外積 ・行列(マトリクス) ・クォータニオン ▼その2:グラフィックスAPIの習熟 3Dグラフィックスを表示するためにはGPUに描画するデータを渡す必要があります。 GPUとデータのやりとりをするためにはグラフィックスAPIを介するため、自分でAPIのラッパーを組む必要があります。 現在ではOpenGLかDirectXのDirect3Dの二択です。 ・Direct3D DirectXというAPIのパッケージに含まれるコンポーネントの一つです。 Direct3D11.1以降ではD3DXという補助ライブラリが削除されてしまい、既存のソースコードとの互換性が失われてしまいました。 代わりにDirectXToolKitやDirectXTexというC++専用の補助ライブラリが公開されています。 バージョンの幅が広くDirectX全体での資料の数はOpenGLよりもはるかに膨大だと思います。 ・OpenGL(スマートフォン・MacOSなら一択) OpenGLでは開発・動作OSを選びません。 個人的な感想ですが、インターネット上における日本語での3D表現技法の解説はOpenGLを用いたものが多いような気がします。 ▼その3:各種処理のライブラリ化 ゲーム開発においては必ずと言えるほど修正作業が入り、修正対象のコードがあちこちに点在するととても厄介です。 なのでよく使う処理や関数、クラスをライブラリ化することが重要です。 例えば衝突判定に関する処理などはライブラリ化することになります。 他にも前述のグラフィックスAPIのラッパーをライブラリ化したり、ゲームのシステムがある程度固まればフレームワーク化して管理しやすくすることも大切です。 ●まとめ 以上のことから、1からプログラムを書いて3Dゲームの開発入門をしようとするのはとてもハードルが高いです。 プロになりたいわけでもなく本当はプログラムも書きたくない、といった方であればおとなしく次点の選択肢である「ゲームエンジン」を利用するのが最も賢い選択でしょう。 ■2.ゲームエンジンを使う場合 ▼開発速度や効率 使用するエンジンと開発するゲームによっては「使い方の勉強→素材集め→ゲーム開発」といった一連の流れが一週間もあれば終わるでしょう。 最近ではUnityやUnrealEngineといった高性能な無料のゲームエンジンがあるので、ちょっとゲームを作ってみたいという方にはとてもオススメです。 上記二つのエンジンではAssetStoreという機能により、他のユーザーが作成して公開した各種素材やモジュール化されたプログラムが利用できます。 これらを組み合わせるだけで簡単にゲームが作れるので非常に高速かつ簡単にゲーム開発が行えます。 ▼やらなきゃいけないこと:使い方を覚える チュートリアルを実践しましょう。 やらなきゃいけないことはこれくらいです。 ▼まとめ 圧倒的な速度と効率、そしてゲームの作りやすさがそこにあります。 プログラムが書けなくてもインターネットで「ゲームエンジンの名前(例えばUnity) 目的のプログラム(例えばAIやキー入力) アセット オススメ」と検索するだけでおそらく見つかります。 思いついたゲームを作ってみたいというだけであれば使わない理由はないです。 ■難しいのはわかった!それでもプログラムを書いてゲームを作りたい方の場合 プログラムの習熟を目的にされている方やプロを目指される方であればやはりこちらを選択されると思います。 ●やったほうがいいこと ▼その1:公開されているライブラリを使おう 正直なところ私もしっかりと3Dの数学を理解できているわけではありません。 それでも1からフレームワークを自作し、DirectX11を用いて3Dのアクションゲームを作れました。 ひとえにライブラリのおかげでしょう。 難しい3Dに必要な計算(例えばマトリクスやクォータニオンの生成)は算術ライブラリを用いて行えますし、グラフィックスAPIに関しても補助ライブラリがあります。 ▼その2:物理エンジンを使おう 3Dゲームを開発するのであれば使うべきでしょう。 正直企業でも完全に自社製の物理エンジン・ライブラリを使用しているところは少ないと思います。 それほど公開されている物理エンジンが高品質で扱いやすいからです。 ただしプロのゲームプログラマーを目指されるのであれば物理エンジンは使わずに自分で一通り物理ライブラリを組んでみることをオススメします。 ●「ゲームプログラム」入門においてのオススメ ▼まずはゲームロジックに関するプログラムを勉強しましょう。 ・その1:DXライブラリを使おう グラフィックスAPIに触れる必要がないので、ゲーム開発の入門には最適です。 ・その2:2Dシューティングゲームを作ろう シューティングゲームには様々なジャンルに共通する要素があるのでとても勉強になります。 ・その3:3Dパズルゲームを作ろう 3Dの描画や3Dゲームプログラミングに慣れましょう。 ・その4:3Dアクションゲームを作ろう 3Dに慣れたらいよいよアクションゲームを作ってみましょう。 この頃になれば恐らく3Dとゲームプログラミングについて詳しくなっていると思います。 ■オススメ一覧 では長々と書きましたが本題であるオススメのもの一覧をピックアップしていきたいと思います。 ●プログラムを書いてゲーム作りたい方向け ▼グラフィックスAPI ・DirectX(コンシューマゲームを作りたい方) ・OpenGL(スマートフォンやWindowsOS以外で動作するゲーム) ▼フレームワーク ・Cocos2d-x(スマートフォン用) ▼ライブラリ ・DXライブラリ(ゲーム開発入門・コンシューマゲーム入門用) ・DirectXToolKit(DirectX用) ・DirectXTex(DirectX用) ・DirectXMath ▼エンジン ・Havok ・PhysX ・Bullet ▼サイト ・マルペケつくろーどっとこむ(※初心者向け) http://marupeke296.com/ ・新・ゲームプログラミングの館(※初心者向け) http://dixq.net/g/ ・全日本学生ゲーム開発者連合 交流会 発表資料置き場+α(※中級者~向け) http://www.zengeren.com/content/wiki/ ・ZeroGram(※上級者向け) http://zerogram.info/ ▼本 ・ゲームプログラマのためのC++ ISBN-13: 978-4797366761 ・実例で学ぶ ゲーム開発に使える数学・物理学入門 ISBN-13: 978-4798130866 ・動かして学ぶ3Dゲーム開発の数学・物理 ISBN-13: 978-4798136929 ・ゲーム開発者のためのAI入門 ISBN-13: 978-4873112169 ●ゲームエンジンを使いたい方 ▼ゲームエンジン Unity UnrealEngine ■グラフィックスAPIに関するオススメについて ▼プロを目指される方 DirectX12がリリースされたばかりでどうなってくるかはわかりませんが、コンシューマゲームに携わるのであればDirectXの習熟をオススメします。 スマートフォンのゲームにおいてはOpenGLを推奨します。 ▼本 最新のSDKではD3DXライブラリが削除されてしまっているため正常に動作する保障はありませんので、参考程度にしてください。 DirectXでの開発においては私は「鎌田 茂雄」さんという方が書かれている本をオススメします。 ・DirectX10/11プログラミング ISBN-13: 978-4990500634 ・DirectX3D11必携 ISBN-13: 978-4990500665 ■最後に いろいろと難しいことを書かせていただきましたが、後々(市販品レベルのゲーム開発をしたくなった時などに)必要になってくる技術や参考資料が多めです。 最初のうちは「このジャンルのゲームどうやって作るんだろう?」 → 「”ジャンル名 ゲーム 作り方”で検索してみよう」などといった風に一つ一つ調べていくといいと思います。 ゲーム作りは大変ですが、作り終えた時の達成感や人に遊んでもらった時の充足感はとても大きいです。 はじめてのゲーム作り、ぜひ頑張ってください。
3Dゲームを作りたいなら、プログラミング言語より、ゲームエンジンを勉強したほうがいいんじゃないでしょうか。UnityやUnreal Engineといったものですね。最近はこの種の入門書も増えてきましたから、そうしたものから探すとよいでしょう。
関連するQ&A
- .NETプログラミングの勉強サイトはありますか?
C#.NETやVB.NETを勉強しています。どちらも.NET言語なので、似ているのですが、細かな文法の違いに戸惑っています。C#.NETでコードを書けても、VB.NETでは書けなかったり、またその逆だったり。どなたか、C#とVB.NETのコードを比較している本とかサイトとかがありましたら、教えてください。 いくつかのサイトや本は見つけましたが、自分がほしいコードがなかったりしますので、量が多ければ多いほどうれしいです。 また、C++/CLI.NET もあれば、尚いいのですが・・・ よろしくお願いします。
- ベストアンサー
- その他(プログラミング・開発)
- プログラミング言語ってどうしてこんなに多いの?
会社に新入社員が実習で入ってきました。気さくな20歳の女の子ですが、C言語とかを使ってプログラムは組めるそうです。パソコン歴は長いのですが、BASIC言語で組んだ頃で終わりです。 なにかすっごく嫉妬を感じたのですが、どうしてこんなに言語が存在するのでしょうか?。言語の特性とできましたら、習熟の難易度などをかかれていただくと助かります。また、今もっとも注目を浴びている言語がありましたら、参考までにお願いします。
- ベストアンサー
- その他(プログラミング・開発)
- 連珠のゲームプログラミング
大学の卒業研究で連珠のゲームプログラミングを作っています。 HPや本を調べたのですが詳しく載っているものがありません。 良い参考書、参考になるHPを知っている方がいましたら教えてください。お願いします。 言語はVBなのですが、アルゴリズムなど全体の流れを知りたいので他の言語でもかまいません。お願いします。
- 締切済み
- その他(ソフトウェア)
- タクティカルRPGゲームプログラミングの本を探しています。
タクティカルRPGゲームプログラミングの本を探しています。 今まで書店やインターネットで探して来ましたが、見つかりませんでした。言語はできれば、JAVAかCがいいのですが、なんでもいいので、タクティカルRPGゲームプログラミングの本を知っていたら、教えてください。 よろしくお願いします。
- 締切済み
- その他(プログラミング・開発)
- ゲームプログラミング本
今日からゲームプログラミングを学びたいと思い、本を買おうと思ったのですが何を買っていいのかわかりません。本自体の値段が高いため下手に手を出せません。 ソフトはC/C++で、勉強したいジャンルはRPGやアクションですがオススメの本を教えて下さい!しかし自分は初心者同然なのでもし、いきなりその勉強は速い!ならば、なにかこれから初めていけば理解できていくなどのオススメの参考書を教えて下さい!
- 締切済み
- C・C++・C#
- トランプゲームのプログラミング
今課題研究でトランプゲームの「大富豪」を作ろうと最終決定したのですが 大富豪を作る上でつけようと思っている機能 ・ネット対戦対応(誰か一人がホストとなってそこに接続する方式) ・ローカルルールをいろいろゲーム前に設定できる ・チャット可能(これは時間が余ったらで) ・自分のキャラが言葉を発する、例えばあがったら「やったー」など(これも時間が余ったらで) VBで作ろうと思っていたのですが どうもちょっと難易度が下がってしまうような気がしてなりません トランプゲームでオンライン対戦対応というゲームを作るには どのような言語が向いてるのでしょうか やはり見た目重視でいってしまうとVBになってしまうと思うのですが できればその言語を使う上での長所や短所など教えてくれると嬉しいです 駄文ですいませんでした よろしくお願いします
- ベストアンサー
- その他(プログラミング・開発)
- 試用期間のプログラミングコード
自作でプログラムを組んでいるのですが、ベクターなどで有料プログラムの試用版として期間限定でつかえるようにプログラムされているような物を作りたいのですがアドバイスいただけないでしょうか。期間限定で動作させるプログラミングコードだけ知りたいのでほかの内容はいりません。また参考とする文献サイトなどご存知であればお教えいただけないでしょうか。MQ4、C言語、VBなどご存知なものがありましたら宜しくお願いいたします。
- 締切済み
- SE・インフラ・Webエンジニア
- これからC++を勉強するための本は
最近C++を勉強し始めました。 龍神録というサイトを参考に、一通りの流れを確認した程度の知識です(内容は全く理解できてません;) これからC++でシューティングゲームを作るためにはどのような本を購入したほうがよろしいでしょうか? また、お勧めの本がありましたらよろしくお願いします。 最終的な目標としては虫姫さま・東方あたりを目標にしたいとは思っております。
- ベストアンサー
- C・C++・C#
- プログラミングの勉強を始めるには
プログラミングの勉強を始めようと思ったのですが、何から手を付けたらいいのか わからないため、質問させていただきました。 現在の目標としてはiOSやAndroidで動くアプリケーションの開発ですが、 できれば、基礎を身につけ、様々な分野に応用できるようにしたいと思っています。 プログラミングの勉強には、まず何から手をつけたら良いのでしょうか? やはりC言語あたりでしょうか? ついでに、何かおすすめの本がありましたら教えていただきたいです。
- ベストアンサー
- その他(ソフトウェア)
- はじめてのゲームプログラミング
最近C++言語を勉強しはじめました。 「Cの絵本」「C++の絵本」を読み、基本を理解しました。 そこで、次にどの書籍を購入すればいいのか悩んでいます。 最終的には簡単なシューティングゲームを作りたいと思っています。 「猫でもわかるゲームプログラミング」「Professionalゲームプログラミング」のどちらを購入しようかと悩んでいます。 どちらの方がいいでしょうか。 また、わからない単語などを調べたいときに調べられる、辞書のような書籍で、お勧めのものはありますか? ほかにもお勧めの本がありましたら、紹介お願いします。
- ベストアンサー
- C・C++・C#