OpenGLによる3次元図形ライブラリの作成

榎本 仁美

最近グラフィックスライブラリとして注目されているのがOpenGLである。 OpenGLはシリコングラフィックス社のIRIS GLの機能を一般的な機能で置き換 えたもので 、2次元と3次元のオブジェクトに対してすばやく画像を生成す ることができる。OpenGLを使ってグラフィックスプログラムを作るときは、 必要なモデルを点、線分、多角形等の組み合わせで作成しなくてはならない。 プログラミング作業を単純化するためにユーティリティライブラリや、プログ ラミングガイド用の補助ライブラリが用意されてはいるが、扱っている3次元 図形の数は少なく、基本的なものに限られてしまう。そのため自動車や分子モ デルなどの複雑な形状については、膨大なプログラミングと、オブジェクトを 表現するために様々な数式や計算が必要となり、プログラマーにとって大きな 負担になると考えられる。
そこで本研究では、球、錘、柱等の基本立体図形以外でユーザーがよく使う もののうち、OpenGL には用意されていない図形についての関数群や、図形のみ ならずユーザー・インタフェース等の部品を提供することを目的とした。複雑 な図形を作成しようとするユーザーは、ライブラリ内の関数を呼び出すだけで 簡単に目指すオブジェクトを作成することができる。取り上げた図形は角が丸 みを帯びた四角柱と楕円面や双曲放物面など9種類の2次曲面である。これら を組み合わせて使用することにより、さらに現実味あふれる画像が作成できる のではないかと考えている。また、ユーザーが事前に実際の描画がどのように なされているかを見るためのビューアも作成した。
図形についてはほぼ十分だと思われる。しかし、ボタンについては一つの関 数を選択しただけでは機能しないため、複数の関数を組み合わせる必要があ るが、この点は改良の余地があるかもしれない。今後の課題としてはライブ ラリをもっと増やすこと等があげられる。
BACK