オブジェクト同士の接触によるテクスチャーの変化について

CINEMA 4DおよびBodyPaint 3Dに関する一般的な議論や情報交換をするフォーラムです。
yuu
Posts: 80
Joined: 2010年6月21日(Mon) 08時44分

オブジェクト同士の接触によるテクスチャーの変化について

Post by yuu » 2011年12月15日(Thu) 21時35分

Cinema4Dでオブジェクト同士が接触した部分のみテクスチャーの色や模様を変えようと考えてるのですがうまくいきません。
接触したところのみ、赤くしたり、テクスチャーの模様を変えたりできるのでしょうか?

ご存じでしたらぜひ教えてください。
よろしくお願いします。

miyata
Posts: 537
Joined: 2009年12月29日(Tue) 16時25分

Re: オブジェクト同士の接触によるテクスチャーの変化について

Post by miyata » 2011年12月16日(Fri) 14時39分

やり方は2つあります。
一つは、XPressoの衝突判定ノードを使い、ポリゴン選択範囲でマテリアルを分ける方法です。
もうひとつは、プロクシマルシェーダを使い、接触しているところのマスクを作成して、質感を変える方法です。

yuu
Posts: 80
Joined: 2010年6月21日(Mon) 08時44分

Re: オブジェクト同士の接触によるテクスチャーの変化について

Post by yuu » 2011年12月21日(Wed) 11時32分

ありがとうございます。
いろいろ試しながら、使いこなしていきたいと思います。

tofuji
Posts: 889
Joined: 2011年3月10日(Thu) 10時41分
Location: 東京都渋谷区

Re: オブジェクト同士の接触によるテクスチャーの変化について

Post by tofuji » 2011年12月21日(Wed) 15時40分

やり方は2つあります。
一つは、XPressoの衝突判定ノードを使い、ポリゴン選択範囲でマテリアルを分ける方法です。
もうひとつは、プロクシマルシェーダを使い、接触しているところのマスクを作成して、質感を変える方法です。
そんなに簡単ではないので、サンプルを出しておきます。

1. ポリゴン選択範囲を使う方法は、ポリゴン選択範囲を書き換える機能がXPressoにないので、COFFEEで書く必要があります。

http://www2.11moon.com/sample_files/201 ... ision2.mp4
http://www2.11moon.com/sample_files/201 ... ision2.zip


2. プロクシマルを使う方法も、普通に作ると衝突する前から光ってしまうので、何らかの対策が必要です。これも、事実上COFFEEを使うしかないでしょう。

http://www2.11moon.com/sample_files/201 ... esktop.mp4
http://www2.11moon.com/sample_files/201 ... lision.mp4
http://www2.11moon.com/sample_files/201 ... lision.zip
---

Toshio Fuji<gtofuji@gmail.com>

掲示板に書いたサンプルのまとめサイト
http://www2.11moon.com/index_as.html

miyata
Posts: 537
Joined: 2009年12月29日(Tue) 16時25分

Re: オブジェクト同士の接触によるテクスチャーの変化について

Post by miyata » 2011年12月21日(Wed) 18時30分

tofuji wrote:
1. ポリゴン選択範囲を使う方法は、ポリゴン選択範囲を書き換える機能がXPressoにないので、COFFEEで書く必要があります。
COFFEEを使わなくても、適用なポリゴン選択範囲を作成して、衝突判定ノードにドラッグしておけば、ポリゴン選択範囲は自動更新されます。

サンプルを添付しておきます。
colision.c4d.zip
(79.47 KiB) Downloaded 290 times

tofuji
Posts: 889
Joined: 2011年3月10日(Thu) 10時41分
Location: 東京都渋谷区

Re: オブジェクト同士の接触によるテクスチャーの変化について

Post by tofuji » 2011年12月21日(Wed) 19時02分

 なるほど、「衝突判定」ノードの方に選択範囲タグを書き換える機能がついているのですね。忘れていました。ご指摘ありがとうございます。

 しかし、この仕様では「近づいただけで選択する」とか、「衝突したポリゴンを1列分拡大して選択する」とか、
「衝突後(もしくは分離後)一定時間を置いて選択する(選択解除する)」というような機能を追加することができません。

 ですから、「選択範囲」ノードの方にタグの内容を上書きする機能を付けるべきだと思います。
実際「MoGraph選択範囲」ノードにはその機能がついていますし、よく使います。
---

Toshio Fuji<gtofuji@gmail.com>

掲示板に書いたサンプルのまとめサイト
http://www2.11moon.com/index_as.html

Yokkon
Posts: 12
Joined: 2013年7月03日(Wed) 19時31分

Re: オブジェクト同士の接触によるテクスチャーの変化について

Post by Yokkon » 2014年7月12日(Sat) 11時39分

似たような表現ですので追加でご質問させて頂きます。

上記でご説明頂いている方法はオブジェクト「自身」のテクスチャのカラーが点く方法ですが
接触する「相手側」のテクスチャのカラーを反映させるにはどのようにすれば良いのでしょうか。

tofuji
Posts: 889
Joined: 2011年3月10日(Thu) 10時41分
Location: 東京都渋谷区

Re: オブジェクト同士の接触によるテクスチャーの変化について

Post by tofuji » 2014年7月12日(Sat) 12時13分

 「自身」に付いているマテリアルを、「相手側」に適用します。

 プロクシマルの場合はこれだけでOKですが、ポリゴン選択範囲を使っている場合はXPressoも複製し、変更する必要があります。
---

Toshio Fuji<gtofuji@gmail.com>

掲示板に書いたサンプルのまとめサイト
http://www2.11moon.com/index_as.html

Yokkon
Posts: 12
Joined: 2013年7月03日(Wed) 19時31分

Re: オブジェクト同士の接触によるテクスチャーの変化について

Post by Yokkon » 2014年7月12日(Sat) 13時59分

tofuji wrote:ポリゴン選択範囲を使っている場合はXPressoも複製し、変更する必要があります。
すみません、具体的にどのようなノードやファイル構造になるのでしょうか。

tofuji
Posts: 889
Joined: 2011年3月10日(Thu) 10時41分
Location: 東京都渋谷区

Re: オブジェクト同士の接触によるテクスチャーの変化について

Post by tofuji » 2014年7月14日(Mon) 20時00分

---

Toshio Fuji<gtofuji@gmail.com>

掲示板に書いたサンプルのまとめサイト
http://www2.11moon.com/index_as.html

Post Reply