Ownway.Info
 
HOMEBALLo → BALLoの開発情報
BALLoの開発情報

1: 開発情報
■ 使用コンパイラ

本プログラムは、以下のコンパイラを使って開発している。

■ 使用ライブラリ

本プログラムは、以下のライブラリを使って開発している。

ソースコードをコンパイルするためには、 以上のライブラリをセットアップしておくことが必須条件である。 以上のライブラリ環境において、本プログラムはエラー及び警告を一切出さずにコンパイルできる。 ただし、一部のライブラリはデフォルトのままではなく、 コンパイルオプションを変更してコンパイルしたものを用いる。そのことに関しては後述する。

また、開発支援として使用しているツール群を以下に示す。

Doxygenはソースコードからドキュメントを生成するためのツールで、 Doxyfileというファイルがその設定ファイルである。 Inno Setupはインストーラ作成ツールで、Setup.issというファイルがその設定ファイルである。

■ 特殊なコンパイルを必要とするライブラリ

デフォルトのプロジェクトの設定では、 使用するランタイムライブラリが通常シングルスレッドであるが、 SDLを使用する場合には使用するランタイムライブラリをマルチスレッドに設定する必要がある。 この設定はビルド時にリンクされるライブラリも同様であり、 ANTLRをSDLと一緒に使用するためには、 プロジェクトの設定を変更してビルドしたものを使用する必要がある。 必要な変更は以下の通りである。

以上の設定によって得られたライブラリを、 VC++のパスの通ったディレクトリに置いておくことで正常にビルドが成功する。

2: コードの概要

source.zipをダウンロードして解凍すると、 3Dブロック崩しのソースコードが展開される。 3Dブロック崩しは、メインプログラムと5つのモジュールからなる。 それぞれのモジュールはディレクトリによって分けられているため、 コードがどのように配置されているかを知ることは、 開発をどのように行っていけばいいかの一つの指針となる。 ここでは、各ディレクトリの役割とそこに配置されている重要なファイルについて説明する。

■ /

3Dブロック崩しのルートディレクトリである。 このディレクトリに存在する重要なファイルを以下に示す。

■ /bin/BallGame

このディレクトリは初期状態では存在しない。 ここにはコンパイル後の実行ファイルが格納される。 コンパイル後、このディレクトリに配置される重要なファイルを以下に示す。

■ /html

このディレクトリは初期状態では存在しない。 ここにはDoxygenによって生成されたドキュメントが格納される。

■ /lib

このディレクトリは初期状態では存在しない。 ここにはコンパイル後のモジュールのライブラリファイルが格納される。

■ /src

このディレクトリには3Dブロック崩しを構築するために必要なプロジェクト・ソースコードが含まれている。

■ /src/application/BallGame

3Dブロック崩しをビルドするためのVC++ 6.0用のワークスペース及びメインプログラムが含まれている。 このディレクトリに存在する重要なファイルを以下に示す。

■ /src/ballgame

3Dブロック崩しモジュールのソースコードが含まれている。 このディレクトリはさらに役割ごとにサブディレクトリが作られている。 各サブディレクトリの役割を以下に示す。

3Dブロック崩しの基本的な機能を追加したい場合には、 該当するディレクトリに配置されたソースコードの修正もしくは新しいクラスの追加を行うことになる。

■ /src/framework

SDLによるアプリケーションフレームワークモジュールのソースコードが含まれている。

■ /src/templates/

テンプレートを使った汎用的なサポートモジュールのソースコードが含まれている。

■ /src/tools/

SDL + OpenGLをサポートするモジュールのソースコードが含まれている。

■ /src/xmltools/

Xerces-C++, Xalan-C++をサポートするモジュールのソースコードが含まれている。

戻る: BALLo