リファレンス / 3ds Max / MaxScript チートシート

表示・名前・色

  • 3ds Max
  • MaxScript
  • チートシート
MaxScript チートシート の章一覧

ノードの見た目と識別にまつわる操作です。表示・凍結は 関数(hide/freeze) とプロパティのどちらでも操作できます。

表示 / 非表示

hide $Box001       -- 非表示
unhide $Box001     -- 表示
hide objects       -- 全部非表示
unhide objects     -- 全部表示
$.isHidden         -- 非表示かどうか(読み取り)
$.isHidden = true  -- プロパティで切り替えてもよい

凍結 / 解除

freeze $Box001     -- 凍結(選択・編集不可に)
unfreeze $Box001   -- 解除
$.isFrozen         -- 凍結かどうか(読み取り)
$.isFrozen = true
  • ⚠️ 凍結ノードは既定でグレー表示になります。元のワイヤカラーを保ちたいときは $.showFrozenInGray = false

名前

$.name = "Body"            -- リネーム
$Box001.name              -- 名前を読む
uniquename "Part"         -- 衝突しない一意名を作る("Part01" など)

連番でリネームする

i = 1
for o in selection do
(
    o.name = "Part_" + (formattedPrint i format:"03d")  -- Part_001, Part_002 ...
    i += 1
)
  • ⚠️ 同名ノードは作れてしまいます。一意にしたいときは uniquename を使います。

色(ワイヤカラー)

$.wirecolor = red                  -- 定義済みの色名
$.wirecolor = color 255 128 0      -- RGB 指定(0〜255)
$.wirecolor = (random black white) -- ランダム

-- 選択をまとめて色分け
for o in selection do o.wirecolor = color (random 0 255) (random 0 255) (random 0 255)
  • 定義済みの色名: red green blue white black yellow orange など。

ビューポート表示プロパティ

$.xray            = true   -- 半透明(シースルー)表示
$.boxmode         = true   -- ボックス表示
$.backfacecull    = true   -- 裏面を非表示
$.renderable      = false  -- レンダリング対象から外す(表示は残す)
$.showFrozenInGray = false -- 凍結してもグレーにしない
プロパティ 効果
xray 半透明表示
boxmode 簡易ボックス表示(重いシーンの軽量化)
backfacecull 裏面カリング
renderable レンダリングに含めるか(表示とは別)
  • ⚠️ renderable = false表示は残したままレンダリングから除外 します。非表示(hide)とは別物です。

落とし穴まとめ

  • 表示・凍結は関数(hide/freeze)でもプロパティ(isHidden/isFrozen)でも操作できる。
  • 凍結のグレー表示を止めるなら showFrozenInGray = false
  • renderablehide は別。レンダリング除外と表示除外を混同しない。
  • 名前の一意性は保証されない。uniquename を活用する。

関連

← MaxScript チートシート へ