strange items(楽天)


shade10.5〜15用スクリプト(WINDOWS&MAC用)一覧はこちらです。


bannerst.jpg
リンク用のバナーです。
リンクはご自由にどうぞ。

2010年05月31日

shade用スクリプトその61(パスジョイント複製)

新)パスジョイント複製20130123.txt

旧)パスジョイント複製120330.txt

旧)パスジョイント複製110912.txt

旧)パスジョイント複製110413.txt

旧)パスジョイント複製20100626.txt

旧)パスジョイント複製20100610.txt

パスジョイントに「方向制御」オプションがあるのはstandard,professional版のみのようですので、申し訳ないのですがこのスクリプトはbasicでは正常に動作しません。


shade13.22にあわせて修正(2013.01.23)
shade13.01に対応(2012.03.30)
shade12.03で結果がきちんと更新されない場合があるのを修正しました。(2011.09.12)
shade12.02に対応(2011.04.13)
ブラウザの構成によっては動作しないバグを修正しました。(2010.06.11
「初期位置」オプションを追加しました。詳しい使い方は下の方の「初期位置オプションを使った鎖の作り方」をご覧ください。(2010.06.06
「複製ごとに回転する」オプションを追加しました。詳しい使い方は下の方の「複製ごとに回転を加える」をご覧ください。(2010.06.26

スクリプトウィンドウにコピペしてから「実行」でスクリプトを使用するか、スクリプトウィンドウの「保存」でshadeのインストールフォルダの「scripts」内に名前をつけて保存してから、shadeを再起動してメニューに追加されたスクリプトを選んで実行してください。
(スクリプトウィンドウにコピペする場合は、スクリプトウィンドウ内のテキストを全て削除してからペーストしてください)


shadeの形状整列ウィンドウではパスに沿って形状を配置できるのですが、この方法では形状の向きは一定となってるようです。
このスクリプトではパスジョイントの「方向制御」機能を使って、線形状に沿ってオブジェクトを複製しつつ、個々の複製物の向きをパスの向きにあわせて変えていくという事ができます。

shadeのマニュアル(黒本)には自転車のチェーン作成のチュートリアルで形状の向きを変えつつパスに沿って配置するという事もやってますが、こちらのスクリプトでは間隔や複製回数をいろいろ試行錯誤してすぐに結果を確認できるというメリットがあると思います。


とりあえず使い方など。
まずは下準備として、パスとなる線形状を作成します。
ブラウザ上でその線形状の下(弟階層)に「パスジョイント」を作成します。(「パート>パス」)
パスジョイントの中に複製したいオブジェクトを入れるか作成してください。
(一つの形状ではなく複数の形状をパスジョイント複製したい場合は、パスジョイントの中にパートを作成し、そのパート内に複製したい形状をまとめて入れてください)

pathcopy001.png
ブラウザではこんな感じになってると思います。
pathcopy002.png
図形ウインドウではこんな感じです。
(今回はブロック型の「閉じた線形状の掃引体」を、アーチ状の線形状に沿って複製します)

パスジョイントを選択状態で形状情報パネルを開き、「方向制御する」にチェックを入れてください。
形状情報パネルの「パス」スライダーをドラッグし、オブジェクトがパスに沿って向きを変えながら正しく動くか確認してください。
(向きがおかしい場合は、形状情報パネルの「上方向」の箇所を「X」「Y」「Z」「自動ロール」のいずれかに変えて、移動時の向きが正しくなるようにしてください。)

これで下準備は終わりです。
ブラウザでパスジョイントを選択状態で、この「パスジョイント複製」スクリプトを実行すると…

pathcopy003.png
上記のようなダイアログウィンドウが開きます。

「複製回数」は何個の複製オブジェクトを作成するかの設定です。
実際は最初の位置(パスジョイントのスライダ値が0の位置)にも1個複製しますので、ここで入力した個数+1個の複製物が作成されます。

「ステップ」は複製物同士の間隔です。
先ほど設定した「複製回数」x「ステップ」がちょうど1になるように設定すると、パスの始めから最後までオブジェクトをきっちり複製できます。
例えば「複製回数」が5で「ステップ」が0.1など「複製回数」x「ステップ」が1以下の場合、パスの途中までしか複製されません。
逆に「複製回数」が10で「ステップ」が0.2などでは、パスの終端(1.0)を越える場合はまたパスの先端に戻って複製が繰りかえされます。

「リンクを使う」チェックボックスをONにすると、メモリをあまり消費しないリンク形状形式で複製が作成されます。
リンク機能を搭載してないbasicユーザーの方はこのチェックボックスをONにして「ok」を押してしまうと不具合が出る(shadeが落ちるなど)かもしれませんので、ONにはしないようご注意ください。

とりあえず「複製回数」を20、「ステップ」を0.05にして「ok」を押すと…

pathcopy004.png

pathcopy005.png

という風にパスとなる線形状に沿って向きを変えながらオブジェクトを複製できました。
複製物は「複製結果」というパートの中に入れてあります。
始点の位置にあるオブジェクト(パスジョイントの中に入れてあるオブジェクト)と始点位置の複製物は同位置に重なって存在してますので、どちらか片方のレンダリングチェックボックスなどはOFFにした方がいいでしょう。
(リンク複製した場合は、リンクの方のレンダリングをOFFにしてください)


<おまけ>
pathcopy006.png
こういう自由曲面をパスジョイント複製します。

pathcopy007.png
ブラウザでCTRL(WIN)/COMMAND(MAC)キーを押しながら「複製結果」パートの左の三角を押してパート内を一括オープンし、中の自由曲面を手動でチマチマと一つの自由曲面にまとめると…。
「自由曲面をまとめる」スクリプトを使えば一瞬でまとめられます)

pathcopy008.png
というような形状も作れます。
パスジョイント複製を実行する前に、パスジョイント内の自由曲面を「形状編集>切替」で後でまとめやすいように切替しておくのをお忘れなく。



<「初期位置」オプションを使った鎖の作成>

「初期位置」というオプションを追加しました。(2010.0606)
デフォルトでは0になってますが、例えばこの「初期位置」を0.5とすると、曲線の真ん中あたりからパスジョイント複製が始まります。
この「初期位置」オプションを使ってチェーンを簡単に作ってみましょう。

pathcopya001.png
線形状の始点にリングを作成します。

pathcopya002.png
「複製回数」25、「ステップ」0.04、「初期位置」0でパスジョイント複製したのが上記です。
(ステップと複製回数はリングの大きさによって調整してください)

pathcopya003.png

パスジョイントパートの中にあるリングを横から見て90度回転して立てます。

pathcopya004.png
今度は「複製回数」24、「ステップ」0.04、「初期位置」0.02でパスジョイント複製します。
複製回数は25ではなく24という風に1回減らしておきましょう。
すると鎖ができました。

パスジョイントパート内にあるポリゴンメッシュが複製結果の一部形状と同位置に重なってますので、パスジョイント内のポリゴンメッシュは非表示・レンダリングOFFにしておきます。

pathcopya005.png
実際の鎖は線形状と直行する方向にもねじれたりして、それが無いのがやや不自然ですが。
pathcopya006.png
トゥーンレンダリングしてみました。


<複製ごとに回転を加える>
「パスジョイント複製」に「複製ごとに回転する」オプションを追加しました。

pathk001.png
例えば上記のオブジェクトをパスジョイント複製する場合、

pathk002.png
「複製ごとに回転する」にチェックを入れ、「回転角度」と「回転軸」を設定してから実行すると、

pathk003.png
という風に、回転させながら複製する事ができます。

スクリプト内部で行ってる事は、まずパスジョイント値が0の位置に複製を作った後、その複製物を掃引パスとなる線形状の始点のコントロールポイント位置を中心に「回転角度」分だけ回転させ(「回転軸」で設定した軸(X軸、Y軸、Z軸)と平行な軸まわりに回転)、それからパスジョイント値を変えて所定の位置まで移動させる・・・・という風にやってます。

この「複製ごとに回転する」オプションを使った方が、

pathk004.png
pathk005.png
という風に一度の操作で鎖を作成できます。

また、「各回転に乱数を加える」オプションも利用すると、個々の回転にぶれを与えながら複製できます。



posted by stxsi at 16:52| shadeスクリプト | このブログの読者になる | 更新情報をチェックする
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。