3ds Max 2015 での MAXScript の新機能

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

3ds Max の新機能の公開

新しいジオメトリ クラス

Seat: GeometryClass が Populate ツールセットに新しく追加されました。

新しい PointCloud: GeometryClass3ds Max にポイント クラウド ロードを実装します。

   

新しい四角形面取りモディファイヤと編集可能ポリゴンの面取りオプション

オプションの四角形面取りモードを持つ新しい Chamfer: モディファイヤが追加されました。

四角形面取りオプション: .edgeChamferSmooth .edgeChamferSmoothThreshold .edgeChamferSmoothType .edgeChamferType .edgeChamferTension および .edgeChamferInvert を公開するために、既存の Editable_Poly クラスに新しいプロパティがいくつか追加されました。

   

新しい iray レンダリング要素

新しい Custom_LPE: RenderElement は、iray レンダラーからカスタムのライトパス式(LPE)を出力することができます。

新しい Light__Area : RenderElement は、iray レンダラーからエリア ライト LPE を出力します。

新しい Light__Environment : RenderElement は、iray レンダラーから環境ライト LPE を出力します。

新しい Light__Point : RenderElement は、iray レンダラーからポイント ライト LPE を出力します。

新しい Mtl__Caustics : RenderElement を使用して、iray レンダラーからコースティックス LPE を出力できます。

新しい Mtl__Diffuse : RenderElement を使用して、iray レンダラーから拡散反射光 LPE を出力できます。

新しい Mtl__Reflections : RenderElement を使用して、iray レンダラーから反射 LPE を出力できます。

新しい Mtl__Self_Illumination : RenderElement を使用して、iray レンダラーから自己照明 LPE を出力できます。

新しい Mtl__Translucency : RenderElement を使用して、iray レンダラーからトランスルーセント LPE を出力できます。

新しい Mtl__Transparency : RenderElement を使用して、iray レンダラーから透明度 LPE を出力できます。

   

新しい UtilityPlugin クラス

PythonHost : UtilityPlugin が新しく追加されましたが、UI コントロール、プロパティ、メソッドは公開されていません。実際のプロパティとメソッドへのアクセスについては、「python コア インタフェース」を参照してください。

新しい Placement_Utility: UtilityPlugin は内部使用のみで、プロパティ、メソッドまたは UI コントロールを公開しません。 新しく統合された配置ツールに関連する実際のプロパティとメソッドについては、「PlacementTool コア インタフェース」を参照してください。

   

新しいコア インタフェース

新しい nodeSelectionSet コア インタフェースは、表示とレンダリング制御目的でノード選択セットを作成するためのシステムを提供します。

新しい PlacementTool コア インタフェースは、MAXScript に配置ツールのコントロールおよび機能を公開します。シーン ジオメトリのサーフェスに、オブジェクトをインタラクティブにまたはスクリプトで配置できます。

新しい python コア インタフェースは、MAXScript に Python エンジンのコントロールを公開します。

新しい iray_string_options コア インタフェースは、MAXScript に iray レンダラーの追加の文字列コントロールを公開します。

新しい MaterialPreviewSystem コア インタフェースは内部使用に限定されます。

   

3ds Max ユーザ インタフェースを操作するための新しい関数

3ds Max Assert の表示およびログに関連する新しい関数セット: SetMaxAssertDisplay() GetMaxAssertLogFileName() SetMaxAssertLogFileName() を追加

ActiveShade ビットマップにアクセスするための新しい関数: GetActiveShadeBitmap() を追加

ActiveShade ウィンドウを閉じるための新しい関数: CloseActiveShade() を追加

レンダリング要素に関連する新しい関数セット: ElementFileDialog() ElementGetCustomGamma() ElementSetCustomGamma() ElementGetMetaData() ElementSetMetaData() を追加

ようこそ画面に関連する新しい関数セット: WelcomeScreenLastTabShown() WelcomeScreenLaunchCount() WelcomeScreenShowAtStartup() を追加

   

新しいポイント クラウド mental ray シェーダ

新しい Autodesk_Point_Cloud_Generator: textureMap は、mental ray レンダラーに、ポイント クラウドを生成します。

新しい Autodesk_Point_Cloud_Material: Material は、mental ray レンダラーにポイント クラウド マテリアルを実装します。

新しい Autodesk_Point_Cloud_Base_Shader: textureMap ベースのシェーダは、mental ray のポイント クラウド パーティクルをレンダーするために使用されます。

新しい Autodesk_Point_Cloud_Shader: textureMap は、mental ray レンダラーのポイント クラウド テクスチャ マップを実装します。

   

既存の 3ds Max の強化機能

CAT インタフェースおよびプロパティの変更点

既存の ICATControlFPInterface で、 PasteRig() メソッドが最初の引数として <controller> ではなく <maxObject> を必要とするようになりました。

既存の CATNodeControlFPInterface では、設定およびアニメーション時のコントロールを分けるために、 .Stretchy プロパティが 2 つの新しいプロパティによって置き換えられました。

既存の CATNodeControlFPInterface で、 .AnimModeInheritance プロパティの名前が .AnimationModeInheritance に変更されました。

既存の CATNodeControlFPInterface で、既存の AddArbBone() メソッドおよび CreateLayerMatrix3() メソッドがオプションキーワード AsNewGroup: を受け入れるようになりました。

既存の LayerRootFPInterface に、レイヤ カラーの取得および設定を可能にする GetLayerColor() メソッドと SetLayerColor() メソッドが新しく追加されました。

TailTrans: Matrix3Controller から .BoneID プロパティが削除されました。

   

pop インタフェースの変更点

既存の pop インタフェースに、 .TurnOpt .SeatMaxTalkAngle .SeatMaxTalkDist .SeatMaxTalkAngle プロパティが新しく追加されました。

既存の pop インタフェースに待機中、歩行中、着席中のキャラクタをコントロールする pop.NumStandingIdlers() pop.NumPedestrians() pop.GetStandingIdler() pop.GetPedestrian() pop.NumSeatedIdlers() pop.GetSeatedIdler() pop.AddSeat() pop.SetSelectedSeatsGender() メソッドが新しく追加されました。

既存の pop インタフェースに、 pop.ResimulateSelected() pop.RegenerateSelected() pop.DisplayMarks() pop.ShowAppearanceUI() pop.SwapSelPeopleAppearance() pop.DeleteSelPeople() pop.SwitchSelPeoplePos() pop.BakeSelPeople() pop.SaveTextureMaps() メソッドが新しく追加されました。

#HighSkin オプションは、pop インタフェース .DisplayType プロパティから削除されました。

   

パーティクル フローの変更点

既存の particleFlow グローバル インタフェースに 2 つのメソッド、 setNodeEditorDisplayFlags() および forceRedrawParticleView() が新しく追加されました。

既存の Test_Icon object に新しい .Enable_By_Switch プロパティが追加されました。

既存の Test_Iconオブジェクトから .Disable_By_Dependency プロパティが削除されました。

以前のバージョンでは、MAXScript に公開され、内部使用に限定されていた、クラス Viewport_Render : Helper が削除されました。

   

RetimerMan インタフェースの変更点

既存の RetimerMan インタフェースの .numRetimers プロパティが、インデックスから整数タイプに変更されました。

既存の RetimerMan インタフェースに新しく追加されたメソッド: IsGlobalRetimerActive() ApplyGlobalRetimer() RemoveGlobalRetimer() GetActiveRetimerCtrl() AddToRetimer() SetUpRetimers() RemoveRetimers() BakeRetimers() FindNodesDependentOnRetimer() GetGlobalRetimerControl()

   

LayerManager インタフェースの変更点

既存の LayerManager インタフェース に新しく追加された layerPropDialog() メソッドを使用すると、任意の数のレイヤについて[レイヤのプロパティ](Layer Properties)ダイアログを開くことができます。

既存の LayerProperties Mixin インタフェースにネストされたレイヤをサポートするためのメソッド: getParent() setParent() getChild() getNumChildren() が新しく追加されました。

   

NitrousGraphicsManager インタフェースの変更点

既存の NitrousGraphicsManager インタフェースに新しく追加された 2 つのプロパティ: .HardwareHitTestEnabled および .AntialiasingQuality

既存の NitrousGraphicsManager インタフェースに新しく追加された 2 つのテクスチャ コントロール メソッド: SetProceduralTextureSizeLimit() および ForceDisableMipMapGeneration()

既存の NitrousGraphicsManager インタフェースに新しく追加されたビュー グラフ メソッド: SaveViewGraph() LoadViewGraph() UnloadViewGraph()

   

SceneExplorerManager インタフェースの変更点

既存の SceneExplorerManager インタフェースに新しく追加されたメソッド: GetExplorer() CreateLayerManager() GetActiveExplorer() IsDefaultLayer() SetActiveExplorer()

   

skinOps 構造体の変更

2 つの新しいメソッド、 skinOps.GetBoneIDByListID () および skinOps.GetListIDByBoneID () SkinOps Struct に追加されました。

skinOps.GetBoneNameByListID () メソッドは SkinOps Struct から削除されました。

   

メッシュ編集の変更

既存の setNormal() メッシュ頂点メソッドは、メッシュ上のカスタムデータを保持するために、明示的な法線の設定に変更されました。

   

INode インタフェースの変更点

新しいプロパティ .isSceneXRefNode INode インタフェースに追加されました。

   

MSCustAttribDef クラスの変更

MSPluginClass に新しい .Version プロパティが追加されました。MSCustAttribDef はそこから派生し、 カスタムアトリビュート定義 .Versionプロパティを効果的に公開します。

   

windows 構造体の変更点

Windows デスクトップ、3ds Max メイン ウィンドウ、ビュ-ポ-トまたはその HWND による他のウィンドウをなど、指定したウィンドウのスナップ ショットのイメージを作成する、新しいメソッド windows.snapshot () が既存の windows 構造体に追加されました。

   

ビューポート構造体の変更点

既存のビューポート構造体にビューポートの Windows ハンドルを取得するためのメソッド viewport.getHWnd() が新しく追加されました。

任意のビューポートインデックス、viewPanel インデックス、アルファ チャンルのサポートおよびガンマ補正のために、ビューポート構造体の既存の viewport.getViewportDib () メソッドが拡張されました。

   

ビューポート描画メソッド: gw 構造体の変更

オプションのアルファ チャンルのサポートおよびガンマ補正のために、既存の gw Struct の既存の gw.getViewportDIB() メソッドが拡張されました。

既存の gw Struct の既存の gw.text() gw.htext() および gw.wtext() メソッドが、新しい線分を \n エスケープシーケンスを使用して導入するマルチ テキストをサポートするように改善されました。

   

新しい MacroScript イベント ハンドラ

新しい on isIndeterminate do ハンドラは、True を返して、MacroScript メニュー項目をメニューおよび QuadMenus に水平ダッシュ(不確定チェックマークを示す)として表示できます。

新しいアニメート可能選択関数

新しい pickAnimatable() 関数は、既存の PickObject() 関数に似ていますが、3D ビューポート、Explorer、スケマティク ビューまたはトラック ビューからアニメート可能なトラックを選択できます。

   

新しいビットマップ値の機能と拡張機能

新しい forceReloadBitmapFile() 関数を使用すると、ビットマップ値を持つファイルを再ロードすることができます。

新しい registerFileChangedFunction() 関数を使用すると、ビットマップ値を持つビットマップ ファイルがディスク上で変更されたときに関数を実行するコールバックを登録することができます。

新しいオプションのキーワード引数 caption: が、ビットマップ値に関連する既存の display() 関数に追加され、VFB のタイトルバーに、カスタムのキャプション文字列を表示できるようになりました。

   

新しい RefTargContainer ReferenceTarget

新しい RefTargContainer: ReferenceTarget が追加されました。

   

bsearch の機能拡張

既存の bsearch() 関数 に新しく追加されたオプションの index: 参照引数キーワードにより、検索された項目のインデックスにアクセスすることができます。

   

永続グローバル変数の強化

存続グローバル変数値として保存およびロードする IntegerPtr のサポートが追加されました。 以前の 3ds Max バージョンに保存する場合、 IntegerPtr 値が Integer64 として保存されます。次のドキュメントの修正点も参照してください。

   

UI と[Esc]キーの扱い

editText コントロール のテキストを編集中に[Esc]キーを押すと、フォーカスがコントロールの親ウィンドウに移動します。

escapeEnable: キーワード引数が False に設定されている場合、createDialog() を使用して作成したモーダル ダイアログで [ESC] キーを押すとダイアログが閉じます。 これはドキュメントに記載されていましたが、以前のバージョンでは実装されていませんでした。

   

削除された機能

OldBoolean

非表示にされ、90 年代半ばに保存された古い .max シーン ファイルにのみ使用された OldBoolean : GeometryClass クラスは削除されました。

   

XML マテリアルの書き出し

マテリアルを VIZrender 付きの Architectural Desktop 2004 で使用するために手動で XML 形式に書き出すために使用された、Material_XML_Exporter: UtilityPlugin は削除されました。

マテリアルを VIZrender 付きの Architectural Desktop 2004 で使用するために MAXScript を使用して XML 形式に書き出すために使用された、Interface: XMLMaterial は削除されました。

   

ドキュメントの修正点

永続グローバル変数によってサポートされる値タイプのリストは、Integer64、IntegerPtr、Double、Point4 などを含む、MAXScript の元の実装から、すべての新しい値のタイプを含めるように更新されました。 また、リストが一目で簡単に検索できるようにアルファベット順にソートされています。

getMaxFileVersionData () 関数は、もとは 3ds Max 2013 で導入されていました。 ファイルを生成した 3ds Maxのバージョンを含む、.max シーン ファイルのバージョンにアクセスできます。 実際のバージョン情報は、3ds Max 2010 以降で保存したファイルにあります。