ゲーム開発向けライブラリSGLibについて

目次

  1. はじめに
  2. 製作目的
  3. 特徴
  4. 開発状況
  5. 今後の予定
  6. 終わりに

はじめに

 現在、X680x0同好会の数人のメンバーで、SGLibというライブラリの制作を行っている。そこで、SGLibの簡単な紹介などを行うことにする。

 なお、SGLibはC++言語を対象としている。

制作目的

 ゲームプログラムというのは、一般のプログラムと比較すると特殊である。 一般のプログラミング知識および技術を身につけたうえで、 更にゲーム制作独特の技を身につけなくては、なかなか思い通りのゲームを創ることは出来ない。 そのため、例え面白そうなゲームのアイディアを持っていたとしても、 それをカタチにするまでには多くの労力が必要となる。

 そこで、ゲーム制作に特化したライブラリを用意することによって、 ゲームを創りやすい環境を提供しようと思う。

 ライブラリを提供することにより、ゲーム制作者はゲーム制作とは直接関係ないシステム開発などを省くことができる。 また、システムから創りたい人にとっては資料として有用となるだろう。

特徴

 SGLibは、基本的な描画や入力などの機能を提供する以外に、 ゲームを作るうえで便利な様々な機能を提供する予定となっている。

 基本的な機能というのは、例えば 画像ファイルからテクスチャを生成する機能や、 テクスチャを指定座標に描画する機能、 キーボードからの入力を取得する機能などといったものである。

 そしてこれらの基本的な機能を踏まえたうえで、 スプライト管理機構や、コマンド認識機構などといった、 ゲーム制作をするうえで便利な機構の提供も行っていこうということである。

 これにより、内部の細かい実装を気にすることなく、 ゲーム全体の組み立てを簡単かつスムーズに行えるようになるだろう。

開発状況

 2003年夏頃から、windows上での各機能の実装を行っている。

 描画機構は、DirectX8をベースに現在までに2D描画機構の実装が進んでいる。 ポリゴンベースの描画環境を利用することで、回転描画、拡大縮小描画、 加算合成、頂点色操作といった、様々な機能を容易に実装することが出来ている。

 入力機構は、DirectX8とWin32APIを利用することで、 キーボード、複数のゲームパッド、マウスの入力情報の取得を行っている。

 その他FPSの制御などといった、基本的な機能も一通り実装ができており、 実際にゲーム開発に利用できる段階にまで達している。

 なお、サウンド制御に関しては、SGSoundという独立したパッケージによってサポートされていることを付け加えておく。

 ゲーム制作を助ける追加パッケージ群としては、 スプライト機能のサポートや、シーン管理のための機構などが制作されている。 ライブラリを利用した開発を行う者が増えれば、更に便利なパッケージが追加されることだろう。

今後の予定

 現在SGLibは、windows上でVC++を利用した2D描画ベースのゲーム開発のためのライブラリとなっている。 しかし、今後は3D描画のサポート、VC++以外の開発環境のサポート、非windows環境での実行のサポートなどを行っていく予定である。

 追加パッケージ群も、今後増えていくだろう。

終わりに

 以上、簡単ながらSGLibについての紹介を行った。 現在はX680x0同好会内でのみの公開となっているが、近いうちに一般向けの公開もされる予定となっている。 公開された際には、実際にサンプルやリファレンスを見てプログラムを組んでみて欲しい。