最近まともなプログラムの技術解説をして来なかったけど、やっと新しい技術関連記事を書く気になったこのごろ・・
初期と比べ技術解説もマイナーな方向に行き、だんだん自分がマニアックな方向に進んでいくのがわかる・・
そして次の記事では「パーリンノイズ」について書いていこうと思う。
これはなんというか、あまりにマニアックすぎて解説HPが英語のサイトしかないようなものであるが(wikipediaにも詳しくのってない)、その英語のサイトを高1までの知識で無理やり解読したところ、これは意外と需要があるのではないかと思い自分なりにまとめて書いてみようと思った。
まずパーリンノイズというマニアックなコンピューターグラフィックス作成技法にたどり着いたわけを説明しよう。
プログラムだけでリアルな雲、炎の再現に挑戦しようとしたのがことの発端。
本来の科学的手法ならリアルな雲や炎を作るには流体方程式や乱流方程式をコンピューターにとかせるという、アマチュアプログラマーにとっては物凄く難しい課題があったわけだが、それをしなくても擬似的にそれっぽく見せる方法があって、それもかなり簡単なプログラムでできるというのだ
それがパーリンノイズ・・
これで作られる画像は自然界にある雲に似ていて、ほかにもパーリンノイズを使えば、「年輪」の表現や、大理石の幾何学模様が簡単に作れてしまうと言う!
ほかにもフラクタル平面とかいうのと関係あるらしい
ランダムな高低差の山を作れたり、パーリンノイズで作った画像は連番アニメーションにしても縦横につなげてもつなぎ目が全く気にならないなど、いろいろな使い方ができるのだ!
ランダムな高低差の山を作れたり、パーリンノイズで作った画像は連番アニメーションにしても縦横につなげてもつなぎ目が全く気にならないなど、いろいろな使い方ができるのだ!
もともとグラフィックの画力が極端にない私はプログラムでエフェクト画像を生成することが多く、パーリンノイズを使えば作れる画像がさらに飛躍的に多くなるってことで、興味がわいた訳だ。
プログラムの中でも四則演算と画像処理の分野は自分の十八番で、ひとまずパーリンノイズは画像処理のアルゴリズムとして自分で極めたいというのがあるので、次の記事では徹底的に細かいところまで書いていこうと思う・・・。
レイトレーシングとパーリンノイズの組み合わせなんてのも考えてみたのでそれもCG画像がうまく作れたらUPしたいと思っている。
次回のパーリンノイズの技術解説の記事では、「自分の全ての知識が詰まっていると言っても過言ではない」って言えるくらいに頑張って書いていきたい!
※2019/12、今まで自分がパーリンノイズだったと思っていたものがバリューノイズというものであると知りました。適宜記載修正しました。