その1とその2ではラインに対してメッシュ(ICO球)を配置しました。
そしてご想通り、それはカーブに対しても同じことが出来ます。
今回はカーブを生成し、そのカーブ上にICO球を配置してみます。
カーブからのインスタンス配置
まずはカーブを生成。
![](https://3dcg.awaya-nokisaki.com/wp-content/uploads/2024/04/スクリーンショット-2024-04-18-191106-1024x259.png)
このカーブを利用したジオメトリノードを組んでみます。
一番最初に『グループ入力』のジオメトリ(ソケット)から始まっている事が”自分の生成した物を利用して~”という事になります。 こんな感じ。
![](https://3dcg.awaya-nokisaki.com/wp-content/uploads/2024/04/スクリーンショット-2024-04-18-190659-1024x501.png)
実行結果はこうなります。
![](https://3dcg.awaya-nokisaki.com/wp-content/uploads/2024/04/スクリーンショット-2024-04-18-191558-1024x313.png)
この状態でカーブの位置を編集すると、編集されたカーブの形に合わせてICO球の位置が変わります。
(数は変更してないのでICO球間の距離は必然的に広がる。)
![](https://3dcg.awaya-nokisaki.com/wp-content/uploads/2024/04/スクリーンショット-2024-04-19-031711.png)
例えば道路などモデリングした際にカーブに添わせて電柱を配置し、距離感などを操作するときなどに使い勝手がありそう…?
ランダム値
![](https://3dcg.awaya-nokisaki.com/wp-content/uploads/2024/04/スクリーンショット-2024-04-19-043531_1200-1024x318.png)
ついでですので、ランダムに配置したい時のノードなども併記しておきます。
上記のように”ポイントにインスタンスを作成”の『選択』欄にランダム値ノードを接続すると実現出来ます。設定は「ブーリアン」にしてください。
上記は確率0.5(50%)なので半分がランダムに消去されていますね。シード値で位置が変わります。
選択ソケットによる操作
![](https://3dcg.awaya-nokisaki.com/wp-content/uploads/2024/04/スクリーンショット-2024-04-19-084329-1024x300.png)
選択ソケットにインデックスからの値を入れてやるとランダム以外の操作ができます。
Bの値を変えてやると、”Bの値”番目のものだけ表示されていると思います。
※余談ですが、ジオメトリ統合ノードを使ってこのように接続してやると、カーブとICO球双方が見えるようになります。(2つの出力を合成するという用途のノードです)
n個以上は消去
![](https://3dcg.awaya-nokisaki.com/wp-content/uploads/2024/04/スクリーンショット-2024-04-19-070757-1024x324.png)
上記では数式→比較より「小さい」を選択し、Aのソケットにはインデックスを繋ぐことにより、Bの欄の値を変化させるとICO球の発現が変化します。
上記ではBの値が23なので、23個のICO球が表示され24個目以降のICO球は消えています。
n個ずつあけて表示
![](https://3dcg.awaya-nokisaki.com/wp-content/uploads/2024/04/スクリーンショット-2024-04-19-081729-1024x286.png)
少々複雑になりますが、n個おきにICO球を表示させたい場合は、剰余(あまり)を使います。
そのまま繋ぐとn個おきにICO球が”消える”という実行結果となります。そこで、その後に『否定』のブーリアンを繋いで、正誤結果を逆転させています。
数値を入力してみると分かりますが、値は”整数の場合”に期待通りの表示をしてくれます。
コメント