ゲームコードの良い(よく整理された)例はどこで見つけることができますか?[閉まっている]


42

ゲームコードの良い(よく整理された)例はどこで見つけることができますか?私はいくつかの組織のヒントを拾うことができることを望んでいます。本のほとんどの例は短すぎて、簡潔にするために多くの詳細を省いています。他のプログラマーがコードのどこを見るべきかを知るために、変数とメソッドをグループ化する方法に特に興味があります。たとえば、上部の初期化子、入力を受け取るメソッド、ビューを更新するメソッドなどです。

OOPであれば、特定の言語は気にしません。Quake 2と3のソースを見ましたが、それらはまっすぐなCであり、オブジェクトの整理に関するヒントを得るのにあまり役立ちません。

それで、あなたはいくつかの良い情報源を見ましたか?「すごい、それはよく組織されている」と言わせるコードへのポインタは素晴らしいでしょう。


1
これは実際には直接的な答えではないため、コメントとして残しておきます。John Lakosの著書Large-Scale C ++ Software Designをチェックすることをお勧めします。それは私にとって非常に啓発的でした。
ブラッフル

回答:


19

いくつかの商用ゲームのソースコードがリリースされています。いくつかのゲームはここにリストされています。これらのコードが適切に編成されているという保証はありませんが、商業的に成功したゲームのソースコードを見ると、実際に何が機能するかを知ることができます。

また、ゲームではありませんが、OpenSceneGraphはゲームのコンポーネントの多くを備え、さまざまなデザインパターン、プラグインなどを使用してC ++で適切に設計されています。それからたくさん。


1
おかげで、ウィキペディアのリストは役に立ちました。Springは本当によく組織されています-すべてのメソッドは一般的な機能(ロード/保存、描画など)ごとにグループ化さ れていますgithub.com/spring/spring/blob/master/rts/Game/Game.hコード構成:hg.icculus.org/icculus/aquaria/file/f08b7288f92c/Aquaria/…批判するべきではありませんが、本物のアーティストは出荷しています。
スマッシャー

私は... OpenSceneGraphとの良好な参照としてオーガを追加します
Klaim

6

Battle for Wesnothは:

シングルプレイヤーとオンライン/ホットシートマルチプレイヤーの両方の戦闘を特徴とする、ファンタジーをテーマにした無料のターンベースの戦術戦略ゲーム

GPLの下でのオープンソースのように無料。私はちょうどそれを見つけた/ダウンロードしたので、ゲームプレイがどのようなものであるかはまだ言えませんが、素晴らしいレビューを得ました。彼らのコードが「きちんと組織化されている」かどうかもわかりません:)しかし、ちょっと、それはオープンソースです。


本当に面白い:):p
Qchmqs


4

優れたOOPを探しているなら、Doom3 SDKのオブジェクトモデルがとても気に入りました。
Ogre3DはヘビーなOOPデザインですが、多くの例とプラグインでかなり肥大化していると思うのでヘビーを強調します。

どう考えているか教えてください。




0

Windward Wrocksでのコードウォーコンペティションに使用している簡単なソースを入手しました。よく整理されていて、とてもシンプルだと思います。しかし、特定のパーツは、すぐに作成されましたが、うまくいきませんでした。そうは言っても、最大規模のゲーム開発チームであっても、迅速に書かれている部分は十分ではありません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.