忍者ブログ

Memeplexes

プログラミング、3DCGとその他いろいろについて

Silverlightで生き物の模様をシミュレート(チューリングパターン)

このサイトを参考に、生き物の模様を描き出すSilverlightを作ってみました。
ちょっと前NHKのサイエンスZero「シリーズ・細胞の世界(1)体をつくる不思議な“波”」でやっていたものです。

チューリングパターンと言って、2種類の化学物質の反応と拡散をシミュレートすると、生き物の模様が再現できるそうです。
(正確には、これはGray-Scottモデルといいます。)
何を言っているのかちょっとよくわかりませんが、百聞は一見にしかずです。



初めは血のりが飛んでるような絵ですが、
Resumeボタンを押すと、このようにゼブラフィッシュのような模様が出来ます。
zebrafish.JPG
模様ができたら、マウスでドラッグしてみてください。
模様が撹乱されますが、すぐに再生しておもしろいです。

「スパイラルウェーブ」を選択すると青い領域が全滅することがあります。
(スパイラルウェーブはチューリング・パターンではありません)
そういう時はコンボボックスで「青塗り」を選択。
適当に塗りたくっていると復活します。


元ネタのサイトのシミュレータにはない機能も付けてみました。
コンボボックスで「壁作り」を選択するとマウスでピンクの壁を作れます。

GrayScottWithWall.JPG

壁は化学物質を通しません。
波が壁を回りこむようになります。


もともとこれはコンピュータサイエンス界では有名なアラン・チューリングが考えだした理論です(だからチューリング・パターンというのですね)。
長らくホコリをかぶっていたようですが、日本の研究者が実証したとかで再び注目されたようです。

おまけ

プロジェクトファイルです。

拍手[3回]

PR