atlantis を Raspberry Pi に移植しました。
atlantis は、OpenGL の初期の頃のデモアプリケーションで、母クジラ、子クジラ、イルカ、サメ4匹が泳ぎまわります。

オリジナルのソースコードは、以下からダウンロードできます。(GLUT のソースにも含まれます。)
https://www.opengl.org/archives/resources/code/samples/glut_examples/demos/demos.html
ソースのコピーライトを見ると 1993, 1994 となっているので、もう 20 年以上前ですね。
Windows 用の実行ファイルも含まれていますが、Cosmo 3D (SGI の Windows 用 OpenGL) の DLL が必要なので、動かせる環境はもうないでしょうね。そのため、Windows でも自前でビルドする必要がありそうです。
また、X のスクリーンセーバの xscreensaver-gl-extra にも改良版の atlantis が含まれています。たぶん、O2 が発売された頃にプロジェクションマッピングに対応したものがベースとなっていると思います。
オリジナルは GLUT + OpenGL ですが、Raspberry Pi で動かすために、SDL2 + OpenGL ES 1.1 に書き換えました。Raspberry Pi2 なら、そこそこ動きます。
よく見るとクジラのポリゴンが裏返っているようです。
ということで、クジラのポリゴンをキー入力で裏返す機能も付けました。
以下は、クジラのポリゴンを裏返して正しい表示にしたものです。




コメントを投稿するにはログインしてください。