Pomdog

Translations: English/日本語

Pomdog は趣味で開発している C++ で作られたオープンソースのゲームエンジンです。 ソースコードはすべて MIT ライセンス の下、公開しています。

リポジトリ

git clone https://github.com/mogemimi/pomdog.git pomdog

ドキュメント(作成中)

ロードマップと機能

ロードマップと機能については GitHub wiki の Roadmap をご参照ください。


開発状況

バージョン番号もつけられないほどのすごい開発版です。 実際にゲームを作りながら、ゲームエンジンを作成しています。一通り遊べるゲームができたらエンジンとしてリリースします。

Note: 優れたゲームエンジンは、ゲームタイトルとともにあります。 CRYENGINE における Crysis, Unreal Engine における Unreal, Frostbite における Battlefield, Doom Engine における Doom, Creation Engine における Skyrim のようにゲームタイトルなしにエンジンが開発されることはありません。

リリース後は master ブランチでリリースタグを切り、最新の開発は develop ブランチで行う予定です。現在は master ブランチが最新のコミットです。

コーディングスタイル

ここではコーディングスタイルについて細かく明記しませんが、以下に挙げるページがきっと役に立つでしょう。ぜひご参照ください:

その他

Q1. イイ感じのゲームエンジンが世の中にたくさんあふれているのにどうして開発を続けるの?
A1. ゲームエンジンを書いて動かしてみるのがたまらなく楽しくて、なかなかやめられないからです。

Q2. このプロジェクトの目的は何?
A2. 「ゲーム作りを楽しくすること」が目的です。
決して「ゲーム開発を簡単にすること」が目的ではありません。もしも誰でも簡単に作れることを目的にするならば、一切コーディングを必要としないビジュアルな開発環境を提供することが最も有効な手段でしょう。でも私はコーディングを苦しいとは思いません。(ごめんなさい半分嘘です、苦しいと思ったことは山ほどあります。)
休日にゲームコーディングを行っているときこそ、至福の時間でしょう。その楽しみを奪ってまでゲームを作り続けることは考えられません。ゲームコーディングの楽しみをもっと大きく膨らませることがこのプロジェクトの目標です。

もう1つ大事なことを言い忘れていました。このプロジェクトが対象としているのは趣味のゲーム開発者です。ゲームビジネスについては一切考慮しません。迅速に開発することでも、ましてコストをかけずに開発することでもなく、あくまでも「ゲーム作りをもっと楽しく」を目指します。

Q3. どうして C++ を使うの?
A3. お気に入りの言語だからです。もしも、世にあふれる計算機が LISP マシンだったら間違いなく LISP を採用していました。残念ながらここは地球で、現在多くの計算機が C/C++ で作られた OS を搭載し、ウェブブラウザも(それと、ブラウザの中に組み込まれたレンダラもスクリプトエンジンもこれまた) C/C++ で記述され、zlib, libpng も C, Git も C, Appache も nginx も C/C++ を使っています。現代の計算機環境と C++ は相性がよさそうです。(それでも苦労しますが、そこはご愛嬌で。)

Note: 筆者の知り合いは地球から何億光年も離れた LISP 星に住んでいます。 また異国の地 Planet Haskell に移り住んだ友人もいます。とはいえ、もっぱら筆者と会って話す機会が多いのは Lua で餅つきをやってる友人でしょう。Lua は(あれらの星々に比べると)我々が住む地球から歩いていけるほど近い距離にあります。そこの冗談だと思ったあなた!今夜窓をあけて空を見上げてごらんなさい。それが Lua です。

Q4. フォークして全く別のソフトウェア、ライブラリ、ミドルウェアを作成してもいい?
A4. かまいません、とっても大歓迎です。ディストリビューションを作成するのも、まったく別のエンジンを作るのも喜びます。公開するのも、使用するのも、フォークするのも自由です。このプロジェクトでは MIT ライセンスを適用していますが、比較的ゆるいプロジェクトなので自由に行ってください。またもしもいい出来のソフトウェアを作ったら、そのときは参考にさせてくださいね。

Q5. このプロジェクトが禁止していることは?
A5. 楽しくなくなるようなことを巻き起こしちゃうことです。それ以外は特に制限していません。

Q6. 何かしら貢献するには?
A6. 貢献していただけるととっても嬉しいです。いつでも GitHub 上の issue または Pull Requests にて受け付けております。日本語・英語どちらでもかまいません。できれば Git のコミットログ(コミットメッセージ)に関してのみ英語で記述していただけるとマージしやすいです。