プロシージャル2 「必然的関係」

プロシージャル

プロシージャルのオーソドックスな例を紹介致します。構成要素がA, B, C, ・・・と複数あります。これはら独立に作製します。そしてそれらの間に関係性を与えて、同期して動くようにするタイプです。独立して作製したものが何らかの関係を持って全体で動作させる技術がプロシージャルです。例として植物が成長していく場合を紹介します。要素として茎と花と葉の3つがあり、初めは小さいですが、次第に大きくなります。花はいつも茎の一番上についているし、葉っぱも茎の特定の位置から生えています。茎が成長した時、花や葉っぱも大きくなる必要があります。また、葉が生える位置も成長するにつれて変化する必要がありますが、特定の場所から成長する必要があります。このように茎と花と葉は関係性を持って動く必要があるのです。今回の題名には「必然的関係」とつけました。これは上述した花の例のように、花や葉っぱが、茎の特定の位置に配置させているように、そらそうでしょう、という関係を必然的関係と呼ぶことに致します。成長するにつれて、葉っぱが前と違う場所から急に出てきたらおかしいでしょう、ということです。プログラムの面白いところとして、通常関係性が無いと思われるものに対して関係性をつけてみる、ということができます。そうすると、意外性、どうして動いているの、といった「未知」を作りだすことができます。これを「創発的関係」と呼ぶことにして、次回のblogで紹介致します。「必然的関係」の場合にも「未知」を作りだせます。しかし解釈的には少し高度になると思います。今回最初に示す花の例は、プロシージャルをプログラムする練習として作製した案件です。2番目の例は、見る方に解釈を促すつもりで作製した映像を示します。大きな鳥が海の上を動き、それにつれて海に波ができるという映像です。鳥と海の関係で、鳥と同期して波が動くことがプロシージャルです。これもまたそうなるでしょうという「必然的関係」です。しかし「この鳥はどこへ行くんだろう」、とか、「海の表現はいろいろできるのに、どうしてこの表現にしたのだろう」、あるいは勝手に物語を作るきっかけになるとか、何かしらの刺激を与えようとして作製しました。勿論何も思わないという方もおられるでしょう。この解釈の可能性のところが「未知」になるわけです。ですから「必然的関係」だからといって、「未知」が生じないわけではありません。

植物の例

植物の例ではTouchdesignerの場合はL-systemがあります。以前に書いた「 「再帰」とは、L-system, ・・・」には、植物が成長し、葉っぱと花をつける動画を紹介しました。これはプロシージャルの例でもあります。今回はblenderを使った例です。blenderは形状を描くアプリケーションプログラムですが、ジオメトリーノードというオブジェクト指向タイプのビジュアルプログラムを備えております。ジオメトリーノードを使って花を作る例はYouTubeにも複数あります。私はUdemyの「手軽に始めるBlender GeometryNodes: 初心者向け基礎講座」と、著者シーメン・レンズの「Blenderジオメトリーノードではじめるプロシージャルモデリング」を参考にして作製しました。まずは作製した映像を見ていただきましょう。

茎と花と葉が同期しており、プロシージャルってこういうことね、というのが分かっていただけると思います。プログラムの詳細はYouTubeや上に挙げた文献を見ていただくとして、関係性を与えているところだけを説明いたします。それはblenderでは「ポイントにインスタンス作成」という機能になります。ポイントというのは座標のことです。インスタンシングと言う機能はblenderでもTouchdesignerでも非常に重要です。これは座標を得て、そこに構成要素を貼り付けることです。葉っぱにしても花びらにしても複数枚あります。これに座標を指定して一度に貼り付けます。例えば花は花びらで構成されています。これは円を描いておいて、円を例えば8ポイントに分割します。この8ポイントが得られる座標です。これに対して花びらを貼り付けることをします。向ける方向、角度等も勿論指定できます。葉っぱの場合は、茎を分割します。茎はカーブという曲線が基になっています。これを例えば10分割するとすると、その分割した場所の座標が得られます。この位置に対して葉っぱを割り付けます。葉っぱの向きが一方向だとおかしいので、ランダムに回転させます。またサイズもランダムに変えています。また、分割したすべての座標から葉っぱがでるのではなく、条件を付けて間引きします。花の位置は常に茎のトップにあります。これは花びらをつける円を、茎を構成するカーブのトップの座標に割り付けることで設定されます。そうした機能が「ポイントにインスタンス作成」というブロックに備わっており、そこへデータを入力します。オブジェクト指向的に述べるなら、「ポイントにインスタンス作成」というクラスがあり、そこには、指定した位置に取り付けるというメソッド、指定した回転をするメソッド、指定した条件で選択するメソッド、指定した大ききにするメソッド、が備わっており、そこへ、プロパティである値を入力することで、その機能が実行されるということです。全体のサイズを変えているのはアニメーションの機能です。時間が推移していくわけですが、この時間に対して、それぞれのサイズと回転角のパラメータを時間とともに大きくするように関連づけています。blenderもTouchdesignerも本当によく考えられており感服致します。

怪鳥モグモグの例

怪鳥モグモグというのは私が作ったキャラクターの名前です。モグモグというキャラクターに羽が生えた姿をしています。モグモグというのはアーマチェアというボーンを入れてボーンを動かすと体が動くという機能の練習に使っている単純な構成のキャラクターです。怪鳥モグモグはblenderで作製し、fbxファイルに落としてTouchdesignerに渡します。Touchdesignerで動きと海を作製しています。海の基になる映像もまたblenderで作製したものです。この映像をTouchdesignerのシェーダー(表面の状態を作る機能)であるpbrに入れて海の表面映像を作製しました。キャラクターを作るのはblenderのほうがやりやすいと思います。もともと形状を作るアプリケーションですから。動きを与えたりするのはblenderでもできますが、私はTouchdesignerのほうがなれております。このため2つのプログラムを使って作製することが多くあります。前に「イマージュ」という題名のblogを書いております。この時のイネボーというキャラクターも同様な作り方です。怪鳥モグモグは羽が生えており、その羽を動かしています。イネボーの体や怪鳥モグモグの体の動かし方と羽の動かし方は、ウエイトという関係性をつけることで動作するようになります。少しだけ違いがあります。この少しの違いによって、見た目では大きく違う動きが作れます。ウエイトによる関係性については、次々回のblogで取り上げようと思っています。それでは怪鳥モグモグが海を渡る映像を見ていただきましょう。

怪鳥モグモグが現れて斜めに横切っていきます。羽と首をゆらして進んで行きます。怪鳥モグモグが中央に来るにつれて波が高くなって海が荒れます。そして音も大きくなります。そして左隅に移動すると、波が穏やかになり、音も小さくなっていることが分かると思います。大きな鳥が海面を移動するので波だつという現象はプロシージャルの必然的関係です。この関係性は次のように作っています。怪鳥モグモグが右上から移動してきます。これはramp関数を使って移動させます。この一定に移動してくる動きに対して、波と音は怪鳥モグモグが中央付近でピークになるように山形に制御しています。この形を作るのがpattern CHOPというオペレータです。ramp信号に対してこの山形のレベルを当てはめるのがlookup CHOPです。そしてこの信号により、波が荒れるのを作るnoise SOPの振幅の大きさ, そして音のボリュームをコントロールしていいます。このように、pattern CHOPとlookup CHOPの組み合わせでは、直線的でない制御が実現できます。波の絵をどのように表すかで随分と世界観が変わります。Touchdesignerの使い方の話になるので省略しますが、ややアニメ風になるように工夫しました。この表現の部分は作り手がどのように考えているか、捉えているかを現しており、上述したようなこのような方法で作製しました、というような「ことわり」では説明できないところです。言葉にするなら、「プロセス」になると思います。この「プロセス」は、その人の固有な考えや、体験、つまりイマージュを背後に持っています。従って、他者から見ると「未知」が現れる重要なとろこになります。本人にも説明できない場合も多くあると思います。

2つ前のblogに「オブジェクト指向プログラム、世界の捉え方」で、グラハム・ハーマンの紹介をしました。彼は、モノが感性レベルで人の影響を受けているということを指摘しており、その一つにコンテキストの変化があることを述べました。コンテキストというのは文脈のことで、モノを置く場所とか、話の前後関係等のことです。ここで上げた2つの映像を見ていただくと、最初の花の映像は、どちらかというと博物館の展示のような、文脈からは切り離させて花があり、花の美しさ、プロシージャルの機能の紹介のように見えると思います。一方怪鳥モグモグは、どちらかというと文脈の中に置かれています。見るそれぞれの方がそれぞれの文脈の中の一場面として配置してほしいという気持ちがあります。こういうのが、ハーマンのいうコンテキストの違いであると思います。怪鳥モグモグをもっとしゃっきりさせた場合、あるいは、傷つきへろへろになっているように見せる工夫などすると、また文脈が違って読み取れるようになります。こうなのか、あーなのかと思うことがモノとのフィードバックです。こうした想像性に関するところに「未知」が生じます。素人の私が作った映像でここまで話すのは恥ずかしいですので、自分の好きな絵や映像をイメージして、コンテキストやモノとのフィードバックについてお考えください。

ハーマンを登場させたついでに、意見を述べたいと思います。華厳経には「四法界」という概念があります。4つの「法界」があり、秩序と本質、「理」と「事」の調和を探究する世界観です。私は井筒俊彦の「コスモスとアンチコスモス」という本でこの概念を知りました。例えば「理事無碍法界」について述べると、「理」は「ことわり」のことで、真理や原理といった意味です。「事」は生じている現象のことです。無碍というのは、妨げられることが無いと言う意味です。ですので、現象を見ると真理がわかり、真理からまた現象へと移行することが、何の妨げもなくできる。ということです。今回の花や怪鳥モグモグの例では、これを見ることで、背後にあるプロシージャルや制御について知れるということになります。しかし「四法界」には感性の領域は全く入っておりません。その人の「プロセス」は考慮されず、「未知」も生じない印象を持ちます。静的な調和の世界です。一方ハーマンは「四方対象」という概念を述べています(「四法界」と「四方対象」を比較することは面白い試みと思います)。何とか感性の世界を入れ、「未知」, 「創発」を見出そう、あるいは説明しようとしているように思えます。私見としては、長い時を経て、「感性」や「プロセス」のベクトルを持ち込んできた気が致します。そういう時代になったということかと思います。

コメント