フォローする

ロープを作成する

プロシージャルなロープを作成します。

はじめにCircleとLineを作成します。

CircleのPrimitive TypeはPolygonにしてください。

Divisionを3にして、三角形をつくります。

CopytoPointを作成し、Line1をInput1にCircle1をInput2に接続します。

ビューポートで確認すると、ポリゴンのポイントにカーブが複製されていることがわかります。

ただし、このLineがY軸方向を向いてしまっています。

LineのDirectionを下記のように変更します。

これで、Z軸方向を向いたLineが複製されました。

更にLineのLengthを10に設定し、Pointを50に増やします。

PolyWireを追加します。伸ばしたLineにそってポリゴンが作成されます。

これがロープの元になります。

polyWireのWire Radiusがロープの太さ、Divisionsがロープの丸みになります。

値を調整してください。ここではRadiusが0.5、Divisionsが8となります。

このままでは1つ1つのロープが離れすぎていることがわかります。

ロープの元はCircleで作成した三角ポリゴンです。CircleのRadiusの文字の部分をマウスの中ボタンでドラッグすると、縦、横両方同時に変更できます。この値を小さくし、3つのロープを近づけます。

009.jpg

つぎにこのロープをTwistする必要があります。

CopytoPointsとpolyWireの間にTwistを追加します。

Twistを表示して、Primary AxisをZ軸に設定して、Strengthの値を上げることでロープがねじれていきます。

Z軸に設定するのは、LineがZ軸方向を向いているからです。

ロープがねじれました!

PolyWireを表示するとロープのような形ができています。

TwistのStrengthをあげることでどのくらい強く編まれたロープなのかを決めることができます。

LineのLengthを伸ばすと、ロープの長くなりますが、ポイント数を挙げままだとロープが不自然にのびてしまうことがわかります。

そこで、最初に決めたLengthとPointの比率を保ちつつ、長さを調整することができるようにします。

Lengthを参照して、Pointsを自動決定したいので、まずはLengthを右クリックして、Copy Parameterを選択します。

次にPointsを右クリックして、Paste Relative Referencesを選択します。

これにより、Pointsパラメーターにch("dist")というエクスプレッションが入力されます。

このchというエクスプレッション関数は、他のパラメーターを取得するという意味があります。つまり、このままの状態だとLengthの距離を取得して、そのままPointsに入力することになります。

エクスプレッションを設定する前にこのシーンでは、Lengthが10、Pointsが70が一番良い状態でした。

そこで、エクスプレッションに*7を追加し、ch("dist")*7となるようにします。

エクスプレッションが入力されたパラメーターを中ボタンでクリックすると、計算結果の値をみることもできます。

これでロープをどれだけのばしても、型崩れしないようになりました。

各パラメーターを調整することで、下記のようなワイヤーロープにすることも可能です。

0 コメント

記事コメントは受け付けていません。