« 2012年10月 | トップページ | 2013年2月 »

2013年1月の記事

2013年1月 1日 (火)

OpenGLで「地球」を表示するプログラムEarth View

OpenGLで「地球」の画像を表示するプログラムを作りました。

Earthviewscreen
マウスドラッグで回転したり、マウスホイールで拡大縮小したりできますが、まぁ、それだけ。それほど面白いプログラムではありません。

ただ、注目していただきたいのは、地球の輪郭が滑らかな円になっている点です。OpenGLでこういう画像を作るときは、普通は60面体とか120面体とかにテクスチャを貼り付けたモデルを使うと思いますが、それだと内側はともかく輪郭が折れ線になってしまいます。

このプログラムは、そうじゃなくて、OpenGLのフラグメントシェーダー(Direct3Dのピクセルシェーダーと同じようなもの)を使って正確な球を描画しているんです。そういうプログラムの見本ということで。

C# + OpenTK で書いた .NET 3.5アプリケーションなので、実行ファイルはWindows用の.exeファイルのように見えますが、そのままLinuxのmonoでも動きます。(Ubuntu 12.04 LTSで動作確認してあります。)ソースとバイナリをまとめて、例によってSkyDriveに「earthview.zip」という名前で置いてありますので、お試しください。(ファイル名の「.zip」の部分は表示されないかもしれません。)

« 2012年10月 | トップページ | 2013年2月 »