このトピックで説明されるプロパティは、すべてのノード サブクラスで操作できます。
特に記載がない限り、これらのプロパティはアニメートできません。
<node>.name String default: varies シーン オブジェクトの名前を取得または設定します。
<node>.baseObject A subclass of Node default: varies シーン ノード内の基本オブジェクトにアクセスします。これは、スタック上で処理されるときにノード タイプを変更するモディファイヤを持つノードに関連します。たとえば、押し出しモディファイヤの行からシェイプとして開始し、スタックの最上部、いわゆるワールド状態で編集可能メッシュになります。baseObject プロパティは、モディファイヤ スタック内の基本オブジェクトにアクセスできます。シーン ノード オブジェクト上の classOf() 関数はワールド状態オブジェクト(スタックの最上部)のクラスを返すため、baseObject プロパティを使って、ノードの作成に使われたオリジナル オブジェクトのクラスを決定することができます。
<node>.baseObject は、3ds Max 5.1 以降書き込み可能になっています。
例
s=sphere() b=box() s.baseobject = b.baseobject
<node>.material Material default: undefined オブジェクトのマテリアルを取得または設定します。
<node>.parent Node default: undefined オブジェクトの親を取得/設定します。オブジェクトがトップレベルのオブジェクトである場合に親プロパティにアクセスすると、undefined を返します。
例
foo_mom = $foo.parent $foo.parent = $baz
このプロパティを設定すると、<node> を元の親から分離し、指定したノードの子として割り当てることができます。
次のように、親のプロパティに undefined を代入することによってオブジェクトを分離し、それをトップレベルのオブジェクトにすることができます。
$foo.parent = undefined
<node>.children NodeChildrenArray default: undefined これにより、特殊な配列サブクラス NodeChildrenArray が生成されます。「NodeChildrenArray 値」を参照してください。** は、通常の MAXScript 配列のインデックス指定でアクセスでき、**forNodeChildrenArray ループ内や collection-mapped 関数を使って処理できます。
例
c = $foo.children[i] move $foo.children [10,10,10] for c in $baz.children do print c
子の数は count プロパティによって取得できます。
num_children = $foo.children.count
NodeChildrenArray にインデックスを指定して子を直接設定することはできませんが、append() 関数を使って新しい子を追加したり、deleteItem() 関数を使用して子を削除することはできます。
例
$foo.children[$foo.children.count+1]=$baz-- does not work append $foo.children $baz-- works deleteItem $foo.children $baz-- removes $baz as child
子のインデックスの順序は、3ds Max 階層表示における順序に一致し、子が親に追加されたときの順序になります。
<node>.mesh TriMesh 編集可能メッシュ オブジェクトであるシーン ノードや基本オブジェクト、または編集可能メッシュ オブジェクトに変換可能なシーン ノードや基本オブジェクトでは、このプロパティにより、TriMesh が生成されます。この TriMesh には、モディファイヤが適用されてからスペース ワープが適用されるまでのソース オブジェクトのメッシュのコピーが含まれます。このプロパティは、シーン ノードまたは基本オブジェクトが編集可能メッシュ オブジェクトでない限り、読み取り専用です。その場合、基本オブジェクトは指定した TriMesh に置換されます。TriMesh および編集可能メッシュの詳細は、「Editable_Mesh: GeometryClass および TriMesh:値」を参照してください。
<node>.boundingBox: 読み取り専用です。ノードのバウンディング ボックスを表す Box3 値を返します。3ds Max 2022 以降で使用可能です。
<node>.displayByLayer Boolean default: true true の場合、オブジェクトの可視性はレイヤによってコントロールされます。
<node>.motionByLayer Boolean default: true true の場合、モーション ブラーはレイヤによってコントロールされます。
<node>.renderByLayer Boolean default: true true の場合、レンダリングはレイヤによってコントロールされます。
<node>.colorByLayer Boolean default: true true の場合、オブジェクトはレイヤのカラーを使用します。false の場合、オブジェクトのカラーが代わりに使用されます。
<node>.globalIlluminationByLayer Boolean default: true true の場合、アドバンスト ライティングを含めるかどうかは、レイヤによってコントロールされます。
<node>.isTarget Boolean default: false ノードが他のオブジェクトの LookAt コントローラのターゲットである場合は true、その他の場合は false を返します。オブジェクトがライトまたはカメラの LookAt コントローラの自動的に作成されたターゲット オブジェクトであり、このプロパティを false に設定した場合、ライトまたはターゲットを削除することなく、ターゲット オブジェクトを削除できます。
<node>.lookAt Node default: undefined <node> を参照しているノードを取得するか、ノードが <node> を参照するように設定します。これは、<node>.target プロパティの逆です。<node> が何らかのオブジェクトの LookAt コントローラのターゲットでない場合は、undefined が返されます。<node> が複数のオブジェクトのターゲットである場合は、いずれかのオブジェクトが 1 つだけ返されます。このプロパティを使って <node> を他のオブジェクトのターゲットとして設定すると、そのオブジェクトに対して LookAt コントローラが自動的に割り当てられます。
<node>.target Node default: undefined <node> の LookAt コントローラのターゲット ノードを取得または設定します。ターゲットがない場合やノードに LookAt コントローラがない場合は undefined が返されます。このプロパティを使用してオブジェクトを <node> のターゲットとして設定した場合は、LookAt コントローラが自動的に <node> に割り当てられます。ノードを target プロパティに割り当てる場合には注意が必要です。ターゲット オブジェクトを指定すると、ターゲット オブジェクトと、ターゲットの元になる最後のオブジェクトが共に 3ds Max に格納されます。そのターゲット オブジェクトを削除すると、参照元のオブジェクトも削除されます。****ターゲット オブジェクトが targetobject クラスのオブジェクトの場合、参照元のオブジェクトを削除すると、ほかのオブジェクトがターゲット オブジェクトを参照している場合でも、そのターゲット オブジェクトは削除されます。
<node>.targetDistance Float default: undefined ノードからターゲットまでの距離を取得/設定します。<node> にターゲットがない場合は、undefined を返します。このプロパティを設定すると、ターゲットはオブジェクトとターゲットを通るベクトル上の指定した距離に移動します。
例
$spot01.targetDistance $cam2.targetDistance = 100
<node>.isHidden Boolean default: false ビューポートでノードが非表示に設定されているかどうかを取得/設定します。このプロパティが false の場合でもノードが非表示になる場合があります。ノードがフリーズとしてフラグ設定され、[表示] (Display)パネルの[非表示] (Hide)ロールアウトで[フリーズ オブジェクトを非表示](Hide Frozen Objects)がオンになっている場合は、このプロパティの値にかかわらずノードは非表示になります。
ビューポート内でノードが非表示になるのは次の場合です。
1.ノードの非表示フラグがオンになっている。
2.ノードのレイヤ非表示フラグがオンになっている。
3.[カテゴリによる非表示](Hide By Category)を使用してノードのカテゴリが非表示になっている。
4.ノードがフリーズされており、[フリーズ オブジェクトを非表示](Hide Frozen Objects)が有効になっている。
ノードの isHidden プロパティには、条件 1 と 2 の組み合わせが反映されます。条件 1 または 2 のどちらかが true の場合、プロパティは true を返します。プロパティを true に設定すると、ノードの非表示フラグが設定されます。プロパティを false に設定すると、ノードの非表示フラグとノードのレイヤの非表示フラグの両方がクリアされます。
条件 2 は、ノードのレイヤを取得し、theNode.INodeLayerProperties.layer.isHidden を使用してレイヤの isHidden プロパティをチェックすることで処理できます。
条件 3 の処理については、3ds Max 6 で追加された「hideByCategory 構文」を参照してください。
条件 4 は、theNode.isFrozen を使用してノードのフリーズ状態を取得し、maxOps.hideFrozenObjects プロパティをチェックすることで処理できます。
<node>.isNodeHidden Boolean default: false ノードの isNodeHidden プロパティには、前に示した条件 1 のみが反映されます。このプロパティは、ノードの非表示フラグが設定されている場合は true を返し、設定されていない場合は false を返します。このプロパティによって設定されるのは、ノードの非表示フラグのみです。
<node>.isHiddenInVpt Boolean default: false これは、上記の 4 つの条件のうちいずれかが true (何らかの理由でビューポート内のノードが非表示になっている)であれば true を返す読み込み専用のプロパティです。
<node>.isFrozen Boolean default: false ビューポートでノードがフリーズされているかどうかを取得/設定します。
ビューポートでノードがフリーズされるのは次の場合です。
1.ノードのフリーズ フラグがオンになっている。
2.ノードのレイヤ フリーズ フラグがオンになっている。
ノードの isFrozen プロパティには、条件 1 と 2 の組み合わせが反映されます。条件 1 または 2 のどちらかが true の場合、プロパティは true を返します。プロパティを true に設定すると、ノードのフリーズ フラグが設定されます。プロパティを false に設定すると、ノードのフリーズ フラグとノードのレイヤのフリーズ フラグの両方がクリアされます。
条件 2 は、ノードのレイヤを取得し、theNode.INodeLayerProperties.layer.isFrozen を使用してレイヤの isFrozen プロパティをチェックすることで処理できます。
<node>.isNodeFrozen Boolean default: false このプロパティには上記の条件 1 のみが反映されます。このプロパティは、ノードのフリーズ フラグが設定されている場合は true を返し、設定されていない場合は false を返します。このプロパティによって設定されるのは、ノードのフリーズ フラグのみです。
<node>.isSelected Boolean default: false ノードの選択状態を取得/設定します。
<node>.xray Boolean default: false シェーディング ビューポート内で、ノードが[シースルー](See Through)モードで表示されるかどうかを取得/設定します。
<node>.boxMode Boolean default: false ビューポートの box mode にノードが表示されるかどうかを取得/設定します。
<node>.allEdges Boolean default: false ビューポート内にノードのすべてのエッジが表示されるかどうかを取得または設定します。
<node>.vertexTicks Boolean default: false ノードのすべての頂点をビューポート内でティックとして表示するかどうかを取得または設定します。
<node>.backFaceCull Boolean default: false ビューポート内でノードの背面が非表示かどうかを取得または設定します。
<node>.showTrajectory Boolean default: false ビューポートにノードの軌道を表示するかどうかを取得または設定します。
<node>.ignoreExtents Boolean default: false 全範囲ズームを実行するときに、ノードの範囲を無視するかどうかを取得/設定します。
node>.showFrozenInGray Booleandefault:true ノートがフリーズした時にグレー表示されるかどうかを取得/設定します。
<node>.wireColor Color default: random color ノードのワイヤフレームのカラーを取得または設定します。
<node>.showLinks Boolean default: false ノードから子への階層リンクをワイヤフレームで表示するかどうかを取得/設定します。
<node>.showLinksOnly Boolean default: false ノードの階層リンクをワイヤフレームだけで表示するかどうかを取得/設定します。このプロパティを true に設定すると、showLinks も true に設定されます。
<node>.showVertexColors Boolean default: false シェーディング ビューポートで、ノードに割り当てた頂点のカラーを表示するかどうかを取得/設定します。
INode インタフェースによって公開されます。
<node>.vertexColorType Name
vertexColorType enums: {#color|#illum|#alpha|#color_plus_illum} 頂点カラーの表示タイプを取得/設定します。
INode インタフェースによって公開されます。
例
$Sphere01.vertexColorType = #illum
<node>.vertexColorsShaded Boolean default: false ビューポートで、ノードの頂点 カラー ディスプレイをシェーディングするかどうかを取得/設定します。true の場合、カラーはシェーディングされず、純粋な RGB 値で表示されます。false の場合、カラーはビューポートに割り当てられた他のカラーと同じように表示されます。
<node>.isDependent Boolean default: false ノードに従属フラグ セットが設定されている場合は true、設定されていない場合は false を返します。ノードは、3ds Max の[表示] (Views)/[従属を表示](Show Dependencies)モードのシーン内で従属しています。[修正] (Modify)パネルが開いている場合、[従属を表示](Show Dependencies)に表示される現在のモディファイヤに従属しているすべてのノード、または編集中のオブジェクトは緑でハイライトされ、ノードの従属フラグが設定されます。[修正] (Modify)パネルが閉じている場合、または[表示] (Views)/[従属を表示](Show Dependencies)がオフの場合、このプロパティは常に false を返します。このプロパティは、読み取り専用です。
<node>.visibility Boolean default: true -- animatable これは、ブール値のプロパティです(ただし、3ds Max トラック ビューにおける値は符号付き浮動小数点)。true または on は表示を意味し、false または off は非表示を意味します。レンダリング時のノードの可視性をコントロールするには、このプロパティをアニメートします。
例
my_node=box() animate on ( at time 0 my_node.visibility =on at time 35 my_node.visibility =off at time 57 my_node.visibility =on )
既定では、可視トラックに割り当てられたコントローラはありません。可視トラックの .controller プロパティにアクセスすると、エラーが発生します。キーを追加してそれらを操作できるようにするには、コントローラを割り当てる必要があります。上に示されたようにプロパティをアニメートすると、コントローラを自動的に割り当てるように 3ds Max が設定されます。コントローラを手動で .visibility プロパティに割り当てることもできます。
例
--assigns a controller: my_node.visibility = bezier_float() --set the current value to semi-visible: my_node.visibility.controller.value = 0.5 --animate the value to 0 on frame 100 animate on at time 100 my_node.visibility.controller.value = 0.0
このプロパティのコントローラは、ノードの 1 番目のサブアニメーションに保存されます。このコントローラ(存在する場合)には、次のようにアクセスします。
<node>[1].controller -- the visibility controller
また、ノードの可視性コントローラを取得するには、getVisController() を使用します。
<node>.renderable Boolean default: true ノードがレンダリング可能かどうかを取得/設定します。
<node>.inheritVisibility Boolean default: true ノードに親がある場合、親の可視性を継承するかどうかを取得/設定します。このプロパティは、オブジェクトを右クリックして表示される[オブジェクト プロパティ](Object Properties)ダイアログ ボックスの[可視性を継承](Inherit Visibility)プロパティに対応します。
<node>.primaryVisibility: boolean : Read|Write ノードの[カメラに対して可視](Visible to Camera)オプションを取得/設定します。
INode インタフェースによって公開されます。
<node>.secondaryVisibility: boolean : Read|Write ノードの[反射/屈折に対して可視](Visible to Reflection/Refraction)オプションを取得/設定します。
INode インタフェースによって公開されます。
<node>.receiveShadows Boolean default: true レンダリング時にノードが影を受けるかどうかを取得/設定します。このプロパティは、オブジェクトを右クリックして表示される[オブジェクト プロパティ](Object Properties)ダイアログ ボックスの[シャドウを他から受ける](Receive Shadows)プロパティに対応します。
<node>.castShadows Boolean default: true レンダリングのとき、ノードが影を付けるかどうかを取得/設定します。このプロパティは、オブジェクトを右クリックして表示される[オブジェクト プロパティ](Object Properties)ダイアログ ボックスの[影付け](Cast Shadow)プロパティに対応します。
<node>.applyAtmospherics: boolean : Read|Write ノードが環境効果による影響を受けるかどうかを取得/設定します。
INode インタフェースによって公開されます。
<node>.renderOccluded Boolean default: false ノードの背後にある隠れたオブジェクトをレンダリングするかどうかを取得/設定します。このプロパティは、オブジェクトを右クリックして表示される[オブジェクト プロパティ](Object Properties)ダイアログ ボックスの[隠れたオブジェクトをレンダリング](Render Occluded Objects)プロパティに対応します。
<node>.gbufferChannel Integer default: 0 ノードの G バッファ オブジェクト ID チャネル値を取得または設定します。3ds Max で有効なオブジェクト ID 値の範囲は、0 から 65535 です。このプロパティは、オブジェクトを右クリックして表示される[オブジェクト プロパティ](Object Properties)ダイアログ ボックスの[G-バッファ オブジェクト チャネル](G-Buffer Object Channel)プロパティに対応します。
<node>.imageMotionBlurMultiplier Float default: 1.0 -- animatable ノードのイメージ モーション ブラーの乗数値を取得または設定します。このプロパティのコントローラは、ノードの 6 番目のサブアニメーションに保存されます。このコントローラには、次のようにアクセスします。
<node>[6].controller-- the imageMotionBlurMultiplier controller
また、getImageBlurMultController() および setImageBlurMultController() メソッドを使用して、ノードの imageMotionBlurMultiplier コントローラを取得および設定することもできます。
<node>.motionBlurOn Boolean default: true モーション ブラーがオブジェクトに対して使用可能になっているかどうかを取得/設定します。このプロパティは、オブジェクトを右クリックして表示される[オブジェクト プロパティ](Object Properties)ダイアログ ボックスの[モーション ブラーが有効](Motion Blur Enabled)プロパティに対応します。
<node>.motionBlurOnController Controller default: undefined ノードに対して使用するモーション ブラーのオン/オフ コントローラを取得/設定します。
<node>.motionBlur Name default: #none ノードに対して使用するモーション ブラーのタイプを取得/設定します。有効なパラメータ値は、#none、#object、および #image です。以前のバージョンとの互換性を維持するため、このプロパティは false (なし)または true (オブジェクト モーション ブラー)に設定することも可能です。このプロパティは、オブジェクトを右クリックして表示される[オブジェクト プロパティ](Object Properties)ダイアログ ボックスのモーション ブラーのタイプに対応します。

<node>.generatecaustics Boolean default: false ノードがコースティックスを生成するかどうかを取得/設定します。コースティックスは、3ds Max スキャンライン レンダラーではサポートされていません。
<node>.rcvcaustics Boolean default: true ノードがコースティックスを受けるかどうかを取得/設定します。コースティックスは、3ds Max スキャンライン レンダラーではサポートされていません。
<node>.generateGlobalIllum Boolean default: false ノードがグローバル イルミネーションを生成するかどうかを取得/設定します。グローバル イルミネーションは、3ds Max スキャンライン レンダラーではサポートされていません。
<node>.rcvGlobalIllum Boolean default: true ノードがグローバル イルミネーションを受けるかどうかを取得/設定します。グローバル イルミネーションは、3ds Max スキャンライン レンダラーではサポートされていません。