3ds Max 9 MAXScript の新機能

このページでは、3ds Max 9 の MAXScript 言語の変更と改良点について簡単にその概要を説明します。各機能の詳細については、ドキュメントの各ページのリンクをお読みください。

ジオメトリ

ProBoolean 拡張機能

インタフェース: PolyBoolean

ProBoolean 合成オブジェクトを作成および管理するためのメソッドを公開します。

インタフェース: ProCutter

ProCutter 合成オブジェクトを作成および管理するためのメソッドを公開します。

露出コントロール

Logarithmic_Exposure_Control : ToneOperator

この露出コントロールに使用する 新しいトーン マッピング アルゴリズムが実装されました。古いアルゴリズムも、下位互換性の理由でまだ使用できます。新旧の動作を切り替えるための新しいプロパティ .useLegacyAlgorithm が追加されました。

DirectX および DirectX シェーダ

インタフェース : SceneEffectLoader

新しい SceneEffectLoader インタフェースは、[シーンの効果ローダ](Scene Effect Loader)ユーティリティを MAXScript に公開します。

ビューポート描画メソッド

新しいメソッド gw.setDirectXDisplayAllTriangle() を使用すると、Direct3D ドライバの[カスタマイズ](Customize) > [基本設定](Preferences) > [ビューポート](Viewports) > [ドライバを設定](Configure Driver)ダイアログ ボックスにチェックボックスとして表示されている UI、[三角形エッジをすべて表示](Display All Triangle Edges)を変更できます。

mental ray

3ds Max 9 で追加された新しい mental ray の機能

2 つの新しい読み込み専用プロパティ(.LastTotalNonRenderTime_ms および .LastTotalGeomTranslationTime_ms)が mental ray レンダラーに追加されました。これらのプロパティには、変換時間に関する詳細が含まれています。

Arch___Design__mi: material

新しい Arch & Design マテリアル(3ds Max 9 で追加)は、シェーダ プリセット、光沢反射、カスタム BRDF 反射機能、ビルトインの環境オクルージョン、ラウンド コーナー効果などの高度な機能を提供します。

mr_Sky : light

mr_Sun : Light

新しいフォトメトリック ライト3ds Max 9 では、追加されました。mental ray を使用してレンダリングした場合に、物理的に正確なスカイ ライトおよびサン ライトを実現します。

mr_Physical_Sky : textureMap

新しい mental ray シェーダ3ds Max 9 に追加されました。物理的な空を環境マップとして視覚的に表します。

ビットマップ プロキシの管理

インタフェース : BitmapProxyMgr

新しい BitmapProxyMgr インタフェースは、MAXScript にビットマップ プロキシ システムを公開します。

Asset Tracking System

インタフェース: ATSOps

新しいプロパティ CheckNetworkPaths がアセット トラッキング システムに追加されました。

新しいメソッド( GetFileStatus()、GetFileSystemStatus()、TestFileSystemStatus() )がアセット トラッキング システムに追加されました。ファイルの状態を問い合わせることができます。

新しいメソッド( ResolveSelectionToUNC()、ResolveSelectionRelativeToProjectFolder() 、および ResolveSelectionToAbsolute() )がアセット トラッキング システムに追加されました。選択したパスを UNC、相対パス、または絶対パスに変換することができるようになりました。

checkin()、checkout()、undocheckout()、addfiles() 、および getlatest() の戻り値が<void>から<bool>に変更されました。

新しいメソッド( IsInputFile()、SetWorkingFolder()、GetWorkingFolder()、IsFileShareLocked() )がアセット トラッキング システムに追加されました。

パスの設定、アクセス、および管理

PathConfig 構造体

新しい PathConfig 構造体は、相対パスと絶対パスを操作し、システム パスおよびプロファイル パスにアクセスするための高度なメソッドを公開します。

3ds Max システム ディレクトリ

新しいパス名が追加されました。システム ディレクトリ名の値を要求する GetDir()、SetDir() メソッド、および pathConfig 構造体の一部のメソッドに対するオプションとして、 #animations、#archives、#downloads、#maxData、#Photometric、#proxies、#renderassets、#renderPresets、#renderoutput、#temp、#userMacros、#userScripts、#userStartupScripts、#userIcons が追加されました。

新しいメソッド (ConvertDirIDToInt())が MAXScript に追加されました。システム ディレクトリ名 ID に対応する整数を返します。

mapPaths 構造体

新しいメソッド( getFullFilePath() )が mapPaths 構造体に追加されました。マップ パスを使用してファイル名を解決し、このファイルが見つかった場合には完全な修飾名を返します。

pluginPaths 構造体

新しいプラグイン パス構造体は、 count() get() の 2 つのメソッドを提供します。count() メソッドは定義されているプラグイン パスの数を返し、get() はインデックス付きのプラグイン パスを返します。

xrefPaths 構造体

新しいメソッド( getFullFilePath() )が mapPaths 構造体に追加されました。外部参照パスを使用してファイル名を解決し、このファイルが見つかった場合には完全な修飾名を返します。

SymbolicPaths 構造体

新しい symbolicPaths 構造体は、システム シンボル パスへのアクセスおよびユーザ定義のシンボル パスの管理を行うための高度なメソッドを公開します。

logsystem_Struct

新しいメソッド logName logsystem 構造体に追加されました。このメソッドを使用して、ログ ファイル名とパスを定義することができます。

ファイル名のプロパティおよび引数の型の String から Filename への変更

ベイク処理要素

すべてのベイク処理要素におけるプロパティ .fileName および .fileType の型は、String から Filename に変更されました。

bipedSystem : System

プロパティ .fileName および .dirName の型は、String から Filename に変更されました。

BitmapTexture : TextureMap

プロパティ .fileName の型は、String から Filename に変更されました。

HairMod : モディファイヤ

ヘア インタフェースの SavePreset() メソッドと LoadPreset() メソッドにおけるプリセット名引数の型は、String から Filename に変更されました。

Particle_Cache : SpacewarpModifier

Point_Cache: Modifier

Point_CacheSpacewarpModifier : SpacewarpModifier

プロパティ .cache_name の型は、String から Filename に変更されました。

Reflect_Refract : TextureMap

プロパティ .bitmapName および .outputName の型は、String に対応する StringsArray から Filename に対応する FilenameArray に変更されました。 

インタフェース: RenderElementMgr

SetCombustionOutputPath() メソッドと SetRenderElementFilename() メソッドのファイル名引数の型、および GetCombustionOutputPath() メソッドと GetRenderElementFilename() メソッドの戻り値の型は、String から Filename に変更されました。

Unwrap_UVW : モディファイヤ

メソッド renderUV() に対するファイル名引数の型は、String から Filename に変更されました。

ViewportManagerCustAttrib インタフェース: viewportmanager

メソッド saveFXFile() に対するファイル名引数の型は、String から Filename に変更されました。

インタフェース: colorMan

メソッド loadColorFile()、saveColorFile()、setIconFolder() に対するファイル名引数の型、およびメソッド getColorFile()、getFileName()、getIconFolder() の戻り値の型は、String から Filename に変更されました。

インタフェース: msZip

メソッド fileInPackage() および unloadPackage() に対するファイル名引数の型は、String から Filename に変更されました。

インタフェース: menuMan

メソッド loadMenuFile() および saveMenuFile() に対するファイル名引数の型、およびメソッド getMenuFile() の戻り値の型は、String から Filename に変更されました。

インタフェース : actionMan

メソッド loadKeyboardFile() および saveKeyboardFile() に対するファイル名引数の型、およびメソッド getKeyboardFile() の戻り値の型は、String から Filename に変更されました。

インタフェース: dragAndDrop

メソッド dropPackage()、downloadPackage() および DownloadUrlToDisk() に対するファイル名引数の型、およびメソッド getDownloadDirectory() の戻り値の型は、String から Filename に変更されました。

インタフェース : LoadSaveAnimation

メソッド getAnimFileDirectory() および getAnimMapFile() で返される型は、String から Filename に変更されました。

インタフェース : BitmapLayerManager

メソッド getLayerCount() getLayerName() 、および LoadLayer() に対するファイル名引数の型は、String から Filename に変更されました。

インタフェース: maxOps

メソッド canImportBitmap() および loadCUIFile() に対するファイル名引数の型は、String から Filename に変更されました。

インタフェース : BrushPresetMgr

メソッド LoadPresetFile() および SavePresetFile() に対するファイル名引数の型は、String から Filename に変更されました。

インタフェース : visualMS

メソッド createFormFromFile() に対するファイル名引数の型は、String から Filename に変更されました。

インタフェース : XMLMaterial

メソッド export() および exportArray() に対するファイル名引数の型は、String から Filename に変更されました。

インタフェース: Hair

メソッド ExportDRA() に対するファイル名引数の型は、String から Filename に変更されました。

インタフェース: BipAnalyzer

メソッド LoadAnalysisFile() および SaveAnalysisFile() に対するファイル名引数の型は、String から Filename に変更されました。

インタフェース: ATSCustomDepsOps

メソッド GetFiles()、AddFile()、SetFile() RemoveFileByName() に対するファイル名引数の型は、String から Filename に変更されました。

インタフェース: memStreamMgr

メソッド openFile() に対するファイル名引数の型は、String から Filename に変更されました。

Mixin インタフェース: maxOps.GetCurRenderElementMgr(...) : インタフェース: RenderElementMgr

メソッド SetCombustionOutputPath() および SetRenderElementFilename() に対するファイル名引数の型、およびメソッド GetCombustionOutputPath() GetRenderElementFilename() の戻り値の型は、String から Filename に変更されました。

Mixin インタフェース: memStreamMgr.openString(...) : インタフェース: memStream

メソッド getFileName() の戻り値の型は、String から Filename に変更されました。

Mixin インタフェース: netRender.getManager(...) : インタフェース: NetManager

メソッド NewJob() に対する file: キーワード引数の型は、String から Filename に変更されました。

Mixin インタフェース: (schematicviews.open "A";schematicviews.current) : インタフェース: SchematicView

メソッド getBackgroundImageName() の戻り値の型、およびメソッド setBackgroundImageName() に対するファイル名引数の型は、String から Filename に変更されました。

Mixin インタフェース: batchRenderMgr.createView(...) : インタフェース: batchRenderViewOps

プロパティ . presetFile および . outputFilename の値の型は、String から Filename に変更されました。

自動バックアップ

自動バックアップのコントロール

インタフェース: autosave

新しい autosave インタフェースは自動バックアップ機能を公開します。ユーザはこのインタフェースを使用して自動バックアップ機能を使用可能/使用不可にしたり、バックアップの間隔や自動バックアップ ファイルの数と名前を変更したり、タイマーをリセットしたり、自動バックアップ システムが現在アクティブであるかどうかをチェックすることができます。自動バックアップ システムはリファクタリングされ、シーンを保存する必要性を表すシーン ダーティ フラグを考慮するようになりました。さらに、保存が完了するとタイマーがリセットされ、ユーザがシーンを十分に作業してから次の自動保存が行われるようになりました。

コントローラ

GetMasterController() メソッド

新しいメソッドは、システムのマスター コントローラへのアクセスを提供します。

アニメーション レイヤ

インタフェース : AnimLayerManager

新しい AnimLayerManager インタフェースは、MAXScript にアニメーション レイヤ システムを公開します。

Float_Layer : FloatController

新しい Float_Layer コントローラは、階層化された実数型コントローラを管理する目的でアニメーション レイヤ システムによって作成および使用されます。

Point3_Layer : Point3Controller

新しい Point3_Layer コントローラは、階層化された Point3 コントローラを管理する目的でアニメーション レイヤ システムによって作成および使用されます。

Point4_Layer : Point4Controller

新しい Point4_Layer コントローラは、階層化された Point4 コントローラを管理する目的でアニメーション レイヤ システムによって作成および使用されます。

Position_Layer : PositionController

新しい Position_Layer コントローラは、階層化された位置コントローラを管理する目的でアニメーション レイヤ システムによって作成および使用されます。

Rotation_Layer : RotationController

新しい Rotation_Layer コントローラは、階層化された回転コントローラを管理する目的でアニメーション レイヤ システムによって作成および使用されます。

Scale_Layer : ScaleController

新しい Scale_Layer コントローラは、階層化されたスケール コントローラを管理する目的でアニメーション レイヤ システムによって作成および使用されます。

Layer_Output : FloatController

新しい Layer_Output コントローラは、レイヤ コントローラの出力を管理する目的でアニメーション レイヤ システムによって作成および使用されます。

レイヤ コントローラ インタフェース

すべてのアニメーション レイヤ コントローラ(Layer_Output コントローラを除く)は、レイヤ インタフェースを公開します。

LayerManager インタフェース

インタフェース: LayerManager

layermanger.newlayerfromname() を呼び出すと、新しいレイヤが作成したコールバックがトリガされます。これまでのバージョンでは、コールバック通知パラメータをポーリングすると、誤った名前( layermanager.newlayer() が報告する既定値の名前と同じもの)が報告されていました。このエラーは修正されました。

オブジェクトの外部参照

IXrefItem インタフェース

次のプロパティは書き込み可能になりました: srcFileName、srcItemName

IXrefProxy

次のプロパティは書き込み可能になりました: proxyFileName、proxyItemName

IXrefRecord

次のプロパティは書き込み可能になりました: srcFileName

名前付き選択セット

SelectionSet 値

名前付き選択セットの新しい .name プロパティを取得および設定できるようになりました。このため、既存の名前付き選択セットの名前を直接変更できるようになり、古い選択セットを削除して新しい選択セットを作成しなおして新しい名前を付ける必要はなくなりました。

isDeleted() メソッドを名前付き選択セットに対しても使用できるようになりました。

SelectionSetArray 値

名前付き選択セットに対して deleteItem() メソッドを使用する場合に、2 つ目の引数として選択セットの名前ではなく選択セットの値を使用できるようになりました。

ポイント キャッシュ

Point_Cache: modifier

PointCache モディファイヤは、従来はフリーのプラグインであった PointCache2 モディファイヤに置き換えられました。新しいポイント キャッシュ モディファイヤは、キャッシュの再生をより高度にコントロールしたり、同一のデータ フォーマットを使用する新しいキャッシュを実装している Autodesk Maya と変形データおよびアニメーション データを共有したりできるようになりました。

同じモディファイヤにより、PointCache モディファイヤによって現在のメモリ使用量を取得するためのメソッド pointCacheMan.GetMemoryUsed() を公開する PointCacheMan 構造体が定義されます。

同じモディファイヤにより、MAXScript によってキャッシュ下のモディファイヤの有効化/無効化、キャッシュの記録、再ロード、およびアンロードを行うためのメソッド CachOps.DisableBelow()、cacheOps.EnableBelow()、cacheOps.RecordCache()、cacheOps.Reload、cacheOps.Unload() を公開する CacheOps 構造体が定義されます。

単純な面データ

インタフェース: simpleFaceManager

新しい面ごとのデータ保存simpleFaceManager インタフェースおよび simpleFaceChannel Mixin インタフェースによって MAXScript に公開され、そのメソッドの一部によって返されます。それぞれの面の中で、整数、インデックス、実数、ブール値、point2 および point3 の値を保持できるようになります。

ダイアログ モニタ

インタフェース: DialogMonitorOPS

インタフェース: UIAccessor

DialogMonitorOPS インタフェースは、UI の動作によってトリガされるカスタム コールバックを登録し、UIAccessor Interface によって公開されるメソッドを使用してダイアログやポップアップを自動的に処理するためのシステムです。

リファレンス ターゲット モニタ

RefTargMonitor : ReferenceTarget

このクラスは、あらゆる ReferenceTarget に対する間接的な参照を保持します。主に内部テストを目的として追加されたものですが、スクリプトとしても便利な用途がある可能性があるため、アクセス可能な状態にしてあります。

システム

インタフェース : リング配列

RingArray インタフェースは、RingArray システムの作成方法を公開します。RingArray には 3ds Max における実際の機能はなく、このインタフェースは主にテストおよびデバッグを目的として作成されたものです。このインタフェースはシステムの一例に過ぎません。

character studio

Biped のノード階層

新しいメソッドが Biped 構造体に追加されました( biped.maxTwistNodes()、biped.maxTwistLinks() 、および biped.getTwistStartID() )。character studio Biped 内のねじれたノードおよびリンクに MAXScript がアクセスできるようになりました。

ビューポートのフレーム レート

viewport.getFPS

新しいメソッドがビューポート構造体に追加されました。[統計を表示](Show Statistics)オプションによって提供される現在のビューポートのフレーム レートの測定値に MAXScript がアクセスできるようになりました。

コミュニケーション センター

CommCenterGUP : GlobalUtilityPlugin

新しいグローバル ユーティリティ プラグインが追加されましたが、プロパティ、メソッド、インタフェースは公開されていません。

関連事項