Grasshopperでアトラクターについてお探しですね。

広告

Grasshopperでアトラクターを使ってみよう!点や線で作る美しいグラデーション

RhinocerosのプラグインであるGrasshopperを使う楽しみの一つが、「アトラクター」という仕組みを使ったデザインです。

特定の点や線に近づくほど、オブジェクトが大きくなったり小さくなったり、密集したりまばらになったり——そんな変化をつけることで、建築のファサードやプロダクトデザインに美しいグラデーション効果を生み出すことができます。

この記事では、アトラクターの基本的な使い方から、実際にどうやって設定するのかまで、初心者の方にもわかりやすく解説していきます。

Grasshopperの画面を開きながら、一緒に試してみてくださいね。

**この記事で学べること:**
– アトラクターポイント(点)を使った基本的なスケール変化のやり方
– アトラクターカーブ(線)で密度をコントロールする方法
– Graph Mapperを使ったグラデーションの細かい調整テクニック

アトラクターって何?点と線が生み出す魔法のような効果

Grasshopperで3Dモデリングをするとき、「アトラクター(Attractor)」という考え方がとても大切になってきます。

アトラクターは「引き寄せるもの」という意味で、周りにあるオブジェクトの形や大きさ、色、配置の密度などを変化させるための「基準点」のような役割を果たします。

具体的には、Rhinocerosの画面上に置いた「点(ポイント)」や「線(カーブ)」をアトラクターとして設定して、そこから各オブジェクトまでの距離を測ります。

この距離のデータを使って、オブジェクトを大きくしたり小さくしたり、回転させたり、配置を間引いたりすることで、自然界に見られるような滑らかなグラデーション効果を作り出せるんです。

手作業では絶対に無理な複雑なパターンが、計算によって一瞬で作れちゃうのがすごいところ。

アトラクターには主に「点(ポイント)」と「線(カーブ)」の2種類があります。

点を使うと、水面に石を投げたときの波紋みたいに、中心から放射状に広がる同心円のグラデーションが作れます。

線を使うと、川の流れや地形の等高線みたいに、方向性のある有機的なグラデーションが表現できます。

どちらを使う場合も、基本的な考え方は同じです。

「アトラクターからの距離を測って、その数値を別のパラメータに変換して適用する」——このロジックさえ理解できれば、いろんなバリエーションのデザインが作れるようになりますよ。

アトラクターポイント(点)でサイズを変えてみよう

アトラクターを使った一番基本的な方法が、点からの距離に応じてオブジェクトの大きさを変化させる手法です。

実際にGrasshopperでやってみましょう。

まず、ベースになるオブジェクトの集まり(例えばグリッド状に並んだ円やポリゴンなど)を用意します。

それぞれの中心点を「Area」コンポーネントのCentroid端子から取り出します。

次に、Rhinoceros上で好きな場所に点を一つ作って、Grasshopperの「Point」コンポーネントに入れます。

これがアトラクターポイントになります。

そして「Distance」コンポーネントを使って、各オブジェクトの中心点とアトラクターポイントの間の距離を測ります。

これで、それぞれのオブジェクトがアトラクターからどれくらい離れているかの数値リストが手に入ります。

この数値が、グラデーションを作るための大事なデータになるんです。

距離の数値を使いやすく変換する

距離のリストが手に入ったら、次はその数値をオブジェクトのサイズ倍率として使えるように変換します。

なぜかというと、測った距離は「15.3」とか「50.8」みたいに大きくバラバラな数字なので、そのまま「Scale」コンポーネントの倍率に入れちゃうと、オブジェクトが巨大化しすぎて大変なことになっちゃうからです。

ここで便利なのが「Bounds」コンポーネントと「Remap Numbers」コンポーネントの組み合わせ。

「Bounds」で距離リストの最小値と最大値の範囲を取り出して、「Remap Numbers」でその範囲を新しい範囲(例えば0.2から1.5みたいな倍率の範囲)に変換します。

こうして整えた数値を「Scale」コンポーネントの倍率端子に接続すれば、アトラクターポイントに近いオブジェクトは小さく、遠いオブジェクトは大きくなる——という美しいグラデーションの完成です!逆に近いものを大きくしたいときは、「Construct Domain」で範囲の数値を反転させるだけでOKです。

アトラクターカーブ(線)で密度をコントロールする

基本的なスケール変化ができるようになったら、次は「線(カーブ)」を使ってオブジェクトの配置密度を変える応用テクニックに挑戦してみましょう。

建築のファサードパネルや日よけのルーバーなんかで、「特定のラインに沿って要素を密集させて、そこから離れるほどまばらにする」という表現はとても効果的です。

アトラクターカーブを使うときは、距離の測定に「Distance」じゃなくて「Curve Closest Point」というコンポーネントを使います。

このコンポーネントは、各オブジェクトの中心点から指定したカーブまでの最短距離(垂線を下ろした距離)を計算してくれます。

複雑に曲がった線でも、その線に沿った正確な距離データが取れるので、点から測るのとは全然違う、ダイナミックな変化が作れるんです。

距離データで「間引き」をする

カーブからの距離データを使って「密度」を変化させるには、サイズの倍率としてじゃなく、オブジェクトを「間引く」ための条件として使います。

具体的には、測った距離データを「Remap Numbers」で0.0から1.0の間の確率データに変換します。

それから「Random」コンポーネントで作った0.0〜1.0のランダムな数値リストと、さっきの確率データを「Larger Than」コンポーネントで比較して、TrueかFalseのリストを作ります。

このTrue/Falseのパターンを「Cull Pattern」や「Dispatch」コンポーネントにつなげば、アトラクターカーブに近いところではオブジェクトが密に配置されて、遠くなるにつれて一定の確率で消えてまばらになる——という自然な密度のグラデーションができあがります。

サイズ変化だけじゃない、もっと実用的なデザインが実現できますよ。

思い通りのグラデーションに調整するコツ

スケールや密度のグラデーションの基本ができたら、次に大事なのが「変化の度合い」を自分の思い通りに調整することです。

ただ距離をマッピングしただけだと、変化が単調で面白みに欠けることがよくあります。

そんなときに活躍するのが「Graph Mapper」コンポーネント。

「Remap Numbers」の前か後ろにこれを挟むことで、数値の変化を直線的なものから、曲線的な滑らかな変化に変えられます。

グラフの形をマウスでドラッグするだけで、アトラクター周辺だけを急激に変化させたり、全体的にゆるやかに変化させたりと、リアルタイムでモデルの表情を調整できるんです。

3次元への応用も自由自在

アトラクターは平面的なパターンだけじゃなく、立体的な形状のコントロールにも使えます。

例えば、アトラクターポイントからの距離に応じて、平面のグリッドをZ軸方向(高さ方向)に「Move」コンポーネントで持ち上げれば、なだらかな起伏のある地形や、波打つような天井デザインが作れます。

また、複数のアトラクターポイントや複数のカーブを同時に設定して、それぞれの距離の「最小値」や「平均値」を計算して組み合わせることで、干渉し合う複雑な波紋みたいなパターンも作れちゃいます。

アトラクターを使ったグラデーション制御は、基本的な数値操作のロジックさえ覚えてしまえば、アイデア次第で無限のバリエーションが生み出せる、Grasshopperの中でも特に面白い表現手法の一つです。

この記事で紹介した基本ステップと調整テクニックをベースに、ぜひ自分だけのオリジナルなアトラクターデザインを作ってみてくださいね!

広告