昔のXpresso

Xpressoやスクリプト、プラグインの作成に関する質問や自作のスクリプトやノードの紹介はこちらをお使いください
Post Reply
nob
Posts: 43
Joined: 2014年3月18日(Tue) 20時23分

昔のXpresso

Post by nob » 2014年12月03日(Wed) 17時27分

久々に投稿します。
いつもお世話になっている「村人とC4D」ページの昔のページでシーンファイルがダウンロードできるのですが、どうも最近のC4Dではうまく機能しないみたいです。

「動きを計算してアニメーションにしているオブジェクトの進行方向にZ軸を合わせるXPresso」
http://villager-and-c4d.cocolog-nifty.c ... -90ba.html

こういうのあると助かるなと思うので自作してみてるのですが、「値の記憶」を使うのかと推測するのですがお分かりになる方いらっしゃいますでしょうか?

また、Xpressoはどこかの段階でバージョンが変わったのでしょうか?

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

Re: 昔のXpresso

Post by tofuji » 2014年12月03日(Wed) 22時05分

 まず、他のサイトで公開されているファイルに関する質問は、そのサイトに送ってください。
 特にこのファイルはCOFFEEがロックされているので、こちらではどうしようもありません。

 COFFEEをロックしてファイルを公開する(つまりオープンソースではない)ということは、
そのファイルに関する責任を作者が全て負うということです。


---
 
 この仕事は基本的にCOFFEEでやるものです。

 XPressoでも似たようなものは書けますが、構成がトリッキーになり(X優先順位を操作している)、
例外処理ができなかったり(静止している場合を扱えない)、アップベクターを指定できないとか、
ダイナミクスを追加できないといった欠点があります。

 また、現実問題としてCOFFEEが書けない人にこのようなトリッキーなXPressoは作れないと思います。


 以下、「XPressoで書いた場合」と「COFFEEで書いた場合」と「ダイナミクスを追加した場合」のサンプルを出します。

http://www2.11moon.com/sample_files2014 ... eward2.zip


---

 COFFEEもXPressoも基本的には開発時から変わっていません。
 R6のCOFFEEのほとんどはR16でも動作しますし、同様にR8のXPressoのほとんどはR16でも動作します。

 もちろん、CINEMA 4D自体の機能が変わってしまった部分に対応するCOFFEEやXPressoは動作しなくなりますが(タイムライン等)、
上記のサンプルは基本的な機能しか使っていないので、普通に書けばどのバージョンでも動くはずです。

 動かないのは変な書き方をしているからだと思いますが、ロックされているのでわかりません。
 詳細については、ファイルの作者に聞いてください。
---

Toshio Fuji<gtofuji@gmail.com>

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

nob
Posts: 43
Joined: 2014年3月18日(Tue) 20時23分

Re: 昔のXpresso

Post by nob » 2014年12月04日(Thu) 03時43分

tofuji様

いつもすみません。
そうですね、HPに問い合わせるのが筋だと思いました。村人C4Dが長い間更新されていないようでしたので、ついこちらで質問してしまいました。
ベクトル->マトリックスでも回転が出るんですね! 

でもcoffeeでvnormを調整する方が自由度がありますね。
if(pv0 == NULL) pv0= vector(0,0,0);
で、初期化するのも勉強になります。オブジェクトの操作をマトリックスで指定できるように勉強せねばですね〜

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

Re: 昔のXpresso

Post by tofuji » 2014年12月04日(Thu) 19時13分

 オブジェクトを回転させるために必要な、ベクトルとマトリックスの性質について説明しました。

http://www2.11moon.com/sample_files2014 ... trix_1.mp4


 また、それを使って実際にCOFFEEを書く手順を説明しました。

http://www2.11moon.com/sample_files2014 ... trix_2.mp4


サンプルファイル。

http://www2.11moon.com/sample_files2014 ... matrix.zip
---

Toshio Fuji<gtofuji@gmail.com>

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

nob
Posts: 43
Joined: 2014年3月18日(Tue) 20時23分

Re: 昔のXpresso

Post by nob » 2014年12月11日(Thu) 18時23分

丁寧な説明とビデオとサンプルありがとうございます。
おかげで少しずつ勉強しております。

それで、車のリグをCoffeeで作ってみようと思っています。
添付のシーンデータは、車の移動に合わせてタイヤの回転とボディが少し傾く動きを、
実行毎の親オブジェクトの位置と一つ前の実行の位置からベクトルを作って”len(vector)”で長さを出し回転に使っています。
このようにしたのは、車本体が90°や180°回転しても大丈夫なように考えたのですが、ご覧の通りバックしても前進と同じ回転になってしまいます。

例えば、Z方向のベクトルを実行毎に比較して、プラスとマイナスで回転を入れ替えるみたいなことができるのでしょうか?
そもそもベクトルに比較ってあるのでしょうか?

何かお知恵があればよろしくお願いいたします。
Attachments
car_coffe_tag_rig.c4d
(199.54 KiB) Downloaded 410 times

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

Re: 昔のXpresso

Post by tofuji » 2014年12月12日(Fri) 05時30分

---

Toshio Fuji<gtofuji@gmail.com>

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

nob
Posts: 43
Joined: 2014年3月18日(Tue) 20時23分

Re: 昔のXpresso

Post by nob » 2014年12月13日(Sat) 18時02分

tofuji様

ほんとありがとうございます!
丁寧な解説で、色々とわかってきました!
特に内積の使い方は、色々と操作に使えますね。あと、グローバル変数やNULLと0の違いなど、プログラムを勉強してないとなかなかわからないことが多くて非常にたすかりました。

添付のシーンは自分なりに手を加えてみました。
スレッドの最初に教えていただいた方法で、ベクトルからオブジェクトの向きを操作するCoffeeタグを車のボディと前輪のタイヤに適用し
X方向のベクトルの内積の距離で、曲がるとき車体の横方向の回転を加えるようにしてます。
機能別にCoffeeタグを分けるのは邪道だと思いますが、わかりやすさとタグの使い回しがしやすいかと思ってます。

僕はアニメーターではないのですが、ベクターがわかると色々と面白いリグが作れそうで楽しみにしています。
それでは、ありがとうございました。
これからも頑張って勉強していきます。
Attachments
car_coffe_tag_rig_fix.c4d
(302.41 KiB) Downloaded 392 times

nob
Posts: 43
Joined: 2014年3月18日(Tue) 20時23分

Re: 昔のXpresso

Post by nob » 2014年12月13日(Sat) 18時17分

ちょっとやり過ぎかん満載ですが、、、
車がオートで四角い塀の中を走り回るCoffeeアニメーションを組んでみました。

車の親のオブジェクトをSNoiseを利用して動かして、衝突するとダイナミクスの衝突がオンになっています。
車の動きが0(実際には0.1じゃないとうまく行きませんでした)になると、一瞬ダイナミクスがオフになって、また車が走り出す用になっています。

こういうのもベクターが使えると色々遊べて面白いですね!
Attachments
car_coffe_tag_rig_fix2.c4d
(331.36 KiB) Downloaded 383 times

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

Re: 昔のXpresso

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

 現在のダイナミクスは自動車の機能を全部シミュレートできるので、全部ダイナミクスで組んじゃった方が楽です。

http://www2.11moon.com/sample_files2014 ... gy_R16.mp4

http://www2.11moon.com/sample_files2014 ... gy_R16.zip


 上のファイルは昔作ったものですが、「PlayStation3用のゲームパッド」と「Control4D」というUSBデバイス読み込み用プラグインを使って動かしています。
 XPressoは入っていますが、ゲームパッドの値をエンジンやステアリングに送っているだけで、自動車の動きは全てダイナミクスがやっています。


昔のスレッド
https://www.tmsmedia.co.jp/phpbb/viewto ... p=539#p539
---

Toshio Fuji<gtofuji@gmail.com>

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

Post Reply