C/C++でゲーム製作

お知らせ:このページは2013年3月末をもって削除予定です。
長らく更新していなかったにもかかわらず、見ていただいてありがとうございました。

目次

C/C++でゲームを作るには

ゲームを作ろうと思ってC言語を学び始めても、入門書のプログラムは黒い画面に文字が出るだけ。どうすればゲームを作れるの? ……と疑問に思っている人は多いのではないでしょうか。

簡単な方法として、ゲーム用のライブラリを使えば画像の描画や音声の再生が簡単にできるようになり、ゲームを作ることができます。DirectXやOpenGLを自力で学ぶのは大変らしいので、既存のライブラリをありがたく使わせてもらいましょう。このページでは主なライブラリを紹介しています。

なお、プログラミングでゲームを作ろうと思うとかなりの時間と努力が必要です。プログラミングにあまり興味がなくただゲームを作りたいだけならゲーム作成ツールも検討してみてください。

ゲーム用ライブラリの紹介

プログラミング初心者にお勧めなのは「DXライブラリ」です。本格的にやりたい方には、「Selene」のほうが高機能だし3Dゲームも作れるしお勧めかも。よく知らないのでここでは紹介していませんが、3D用ライブラリは海外の「Irrlicht」や「OGRE」が定番らしいです。

わからないことは自分で調べるのが基本です。掲示板等で質問に答えてくれる人は、忙しい日常の合間を縫って答えてくれているかもしれないのです。なのでその前に、マニュアルをよく読んで試行錯誤したり、Google検索や掲示板の過去ログ検索で過去に同じ質問が無かったかを調べてからにしましょう。大抵はそれで解決するものです。また、ライセンスもよく読んで守ってくださいね。

DXライブラリ
チュートリアルやマニュアルが充実していてプログラミング初心者にもお薦めです。2D専用。
Selene
高機能かつ2Dゲームも3Dゲームも作れるライブラリです。DirectXは習得したけどフレームワークを作るのめんどくさいよっていう人向けな印象。DXライブラリと比べるとドキュメントがまだ整備されていませんが、サンプルプログラムが一通りそろっているのでそれを読めばだいたい使い方がわかるでしょう。同梱されている簡易版の「Lue」はC言語の知識のみで利用できてポインタも極力使われていません。現在、新バージョンとなる2.0系が開発中です(1.0系とは別物)。
Simple DirectMedia Layer
略してSDL。対応プラットフォームの数はダントツ。WindowsだけでなくLinuxやMacなどでも動かしたいならこれ。ただ、Linuxとかの文化に慣れていないと扱いづらそうな感じです(これもちゃんと使ったことがないのでよく知りません)。
GamDevPukiWiki - ライブラリ
ここで紹介しなかったものを含め、いろんなライブラリが紹介されています。

ブックマーク

ゲームプログラミングWiki
ゲームプログラミング初心者のための講座。
C言語何でも質問サイト
DXライブラリを使った初心者向けのゲームプログラミング講座。
ゲームプログラム
ゲームプログラミングに関する実践的な情報。
GamDevPukiWiki - 段階的学習!
課題を一つずつクリアしていくことによってスムーズにステップアップしていこう、という企画。
びぎなーずセレネ
Seleneの使用方法を初心者向けにまとめるためのWiki。
Gekkao
Lunaを使ったゲームプログラミング講座。
初心者の初心者による初心者の為のSDL
初心者向けのSDL講座。
Javaでゲーム作りますが何か?
言語はJavaですが、C++でゲームを作るにあたって参考になります。
マルペケつくろーどっとコム
C/C++でのゲーム作成のハイレベルな技術が紹介されています。
GamDevPukiWiki - Links
ゲーム製作関連リンクいろいろ。