SwimUVW

カテゴリ

texture

詳細

オペレータ スタックの最上部(2 次シェイプモデリングのすぐ上)から読み取るテクスチャ プロジェクション オペレータを変更します。このため、テクスチャ プロジェクションはすべてのエンベロープおよびシェイプ アニメーションが完了してから適用されます。 オブジェクトを変形するたびに UV 座標が再計算されるため、その座標を使用するテクスチャがオブジェクトのサーフェイス上で泳いでいるように見えます。

SwimUVW はオブジェクトおよび UV プロパティ(テクスチャ プロジェクション)のリストを入力として取得します。 オブジェクトがメッシュや NURBS サーフェイスなどのプリミティブである場合、このコマンドは、オブジェクトに割り当てられたマテリアル(「Material.CurrentUV」を参照)が使用する現在の UV プロパティを変更します。 オペレータがフリーズされたためにテクスチャ プロジェクションがオペレータを持たない場合、このコマンドは何も影響しません。

スクリプト構文

SwimUVW( [InputObjs] );

パラメータ

パラメータ タイプ 詳細
InputObjs 文字列 オブジェクトおよび UV プロパティ(テクスチャ プロジェクション)のリスト

デフォルト値: 現在選択されている値

VBScript の例

' Set up a sphere with a texture projection and texture image.
CreatePrim "Sphere", "MeshSurface"
CreateProjection "sphere", , siTxtDefaultPlanarXY, , "Texture_Projection"
BlendInTextureLayers , , 1, True, siReplaceAndNoBlendInTextureLayers
SetDisplayMode "Camera", "texturedecal"
' Put an animated twist after the texture projection, so the texture sticks to the surface.
ApplyOp "Twist", "sphere", 3, siPersistentOperation, , 0
SaveKey "sphere.polymsh.twistop.angle", 1, -300
SaveKey "sphere.polymsh.twistop.angle", 100, 300
MsgBox "The projection is evaluated before the twist, so the texture sticks to the surface."
' Now modify the projection to swim: the operator is placed at the top of the stack and
' any deformations occur before the UV property is computed.
SwimUVW "sphere"
MsgBox "The projection is now evaluated after the twist, so the texture swims on the surface."
' Perform a new modeling operation. Note that the texture still swims on the surface.
SelectGeometryComponents "sphere.pnt[27]"
Translate , 3.66557060971011, 4.9427099682274, -0.49427099682274, siRelative, siView, siObj, siXYZ, , , , , , , , , , 0
MsgBox "New modeling operations are inserted in the stack below the texture read position."
' Play back the animation.  Note the texture swims on the surface.
PlayForwardsFromStart

関連項目

StickUVW ReprojectUVW CreateProjection CreateSubprojection