OpenGL water (Win32 MFC)
since 2000/04/07
last modified 2017/01/24
このプログラムは、M$派の取り込みのための作業の第二段として用意した
水面を疑似的に計算するプログラムです。
もともと、金子さんのWebpage
"kaneko's software page"のBBSで話題になりました
水サンプルプログラム
を基にOpenGLで実現しました。そのため、アルゴリズム部分はそのまま金子さんの
プログラムから流用させて頂きました。
また、このプログラムに使われている水のテクスチャには、うえさんのWebpage
"---Edge Design Works---各種素材とPCお役立ち情報!"から入手しました水の背景を
使用しています。
金子さん、うえさんお二人のご厚意により、このプログラムを完成させることが出来ました。
この場にて失礼ながら、お二人に心から感謝します。
2001.05.12...
あれから、つい最近takuniさんから「フラットシェーディングをグローシェーディングに
したらどうですか?」との内容のアドバイスのメールを頂きました。しかも、
グローシェーディングを実現するのための詳細なソース付きで。
このようにWebpageを公開していると、このようなメールはたいへん有難いですね。
本当にわざわざありがとうございます。
2016.08.01...
あれから、もう十数年の月日が流れ、色々な事がありました。
金子さんのご冥福をお祈りいたします。
2017..01.24...
niftyホームページのサービス提供の終了に伴い、金子さんのホームページが移動しましたので、
このPage及びこのサイトのTopPageで対応しました。
- OpenGL water (MS-Windows95/98/NT用,lzh圧縮)
OpenGL water のソースコード (Win32MFC, lzh圧縮)
操作方法は、[スペース]キーで中央をへこませ、カーソルで回転します。
[PageUp]、[PageDown]キーにより、水面への距離を調整出来き、
また、[c]キーにより水面の動きをクリア出来ます。
このプログラムの水面への影の付け方は、「光源に対する法線べクトル」と「水面の位置情報を
エッジ抽出して計算した色(明暗)情報」の二つを組み合わせて行なっています。
また、テクスチャ(ビットマップ画像)の取り込みには、Win32API
関数auxDIBImageLoad()を用いています。
[Top Pageに戻る]