このページでは、3ds Max 2015 の MAXScript 言語の変更および改善点についての概要を簡単に説明します。各機能の詳細については、ドキュメントの各ページのリンクをお読みください。
Seat: GeometryClass が Populate ツールセットに新しく追加されました。
新しい PointCloud: GeometryClass は 3ds Max にポイント クラウド ロードを実装します。
オプションの四角形面取りモードを持つ新しい Chamfer: モディファイヤが追加されました。
四角形面取りオプション: .edgeChamferSmooth 、 .edgeChamferSmoothThreshold 、 .edgeChamferSmoothType 、 .edgeChamferType 、 .edgeChamferTension および .edgeChamferInvert を公開するために、既存の Editable_Poly クラスに新しいプロパティがいくつか追加されました。
新しい 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 を出力できます。
PythonHost : UtilityPlugin が新しく追加されましたが、UI コントロール、プロパティ、メソッドは公開されていません。実際のプロパティとメソッドへのアクセスについては、「python コア インタフェース」を参照してください。
新しい Placement_Utility: UtilityPlugin は内部使用のみで、プロパティ、メソッドまたは UI コントロールを公開しません。 新しく統合された配置ツールに関連する実際のプロパティとメソッドについては、「PlacementTool コア インタフェース」を参照してください。
新しい nodeSelectionSet コア インタフェースは、表示とレンダリング制御目的でノード選択セットを作成するためのシステムを提供します。
新しい PlacementTool コア インタフェースは、MAXScript に配置ツールのコントロールおよび機能を公開します。シーン ジオメトリのサーフェスに、オブジェクトをインタラクティブにまたはスクリプトで配置できます。
新しい python コア インタフェースは、MAXScript に Python エンジンのコントロールを公開します。
新しい iray_string_options コア インタフェースは、MAXScript に iray レンダラーの追加の文字列コントロールを公開します。
新しい MaterialPreviewSystem コア インタフェースは内部使用に限定されます。
3ds Max Assert の表示およびログに関連する新しい関数セット: SetMaxAssertDisplay() 、 GetMaxAssertLogFileName() 、 SetMaxAssertLogFileName() を追加
ActiveShade ビットマップにアクセスするための新しい関数: GetActiveShadeBitmap() を追加
ActiveShade ウィンドウを閉じるための新しい関数: CloseActiveShade() を追加
レンダリング要素に関連する新しい関数セット: ElementFileDialog() 、 ElementGetCustomGamma() 、 ElementSetCustomGamma() 、 ElementGetMetaData() 、 ElementSetMetaData() を追加
ようこそ画面に関連する新しい関数セット: WelcomeScreenLastTabShown() 、 WelcomeScreenLaunchCount() 、 WelcomeScreenShowAtStartup() を追加
新しい 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 レンダラーのポイント クラウド テクスチャ マップを実装します。
既存の ICATControlFPInterface で、 PasteRig() メソッドが最初の引数として <controller> ではなく <maxObject> を必要とするようになりました。
既存の CATNodeControlFPInterface では、設定およびアニメーション時のコントロールを分けるために、 .Stretchy プロパティが 2 つの新しいプロパティによって置き換えられました。
既存の CATNodeControlFPInterface で、 .AnimModeInheritance プロパティの名前が .AnimationModeInheritance に変更されました。
既存の CATNodeControlFPInterface で、既存の AddArbBone() メソッドおよび CreateLayerMatrix3() メソッドがオプションキーワード AsNewGroup: を受け入れるようになりました。
既存の LayerRootFPInterface に、レイヤ カラーの取得および設定を可能にする GetLayerColor() メソッドと SetLayerColor() メソッドが新しく追加されました。
TailTrans: Matrix3Controller から .BoneID プロパティが削除されました。
既存の 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 インタフェースの .numRetimers プロパティが、インデックスから整数タイプに変更されました。
既存の RetimerMan インタフェースに新しく追加されたメソッド: IsGlobalRetimerActive() 、 ApplyGlobalRetimer() 、 RemoveGlobalRetimer() 、 GetActiveRetimerCtrl() 、 AddToRetimer() 、 SetUpRetimers() 、 RemoveRetimers() 、 BakeRetimers() 、 FindNodesDependentOnRetimer() 、 GetGlobalRetimerControl()
既存の LayerManager インタフェース に新しく追加された layerPropDialog() メソッドを使用すると、任意の数のレイヤについて[レイヤのプロパティ](Layer Properties)ダイアログを開くことができます。
既存の LayerProperties Mixin インタフェースにネストされたレイヤをサポートするためのメソッド: getParent() 、 setParent() 、 getChild() 、 getNumChildren() が新しく追加されました。
既存の NitrousGraphicsManager インタフェースに新しく追加された 2 つのプロパティ: .HardwareHitTestEnabled および .AntialiasingQuality
既存の NitrousGraphicsManager インタフェースに新しく追加された 2 つのテクスチャ コントロール メソッド: SetProceduralTextureSizeLimit() および ForceDisableMipMapGeneration()
既存の NitrousGraphicsManager インタフェースに新しく追加されたビュー グラフ メソッド: SaveViewGraph() 、 LoadViewGraph() 、 UnloadViewGraph()
既存の SceneExplorerManager インタフェースに新しく追加されたメソッド: GetExplorer() 、 CreateLayerManager() 、 GetActiveExplorer() 、 IsDefaultLayer() 、 SetActiveExplorer()
2 つの新しいメソッド、 skinOps.GetBoneIDByListID () および skinOps.GetListIDByBoneID () が SkinOps Struct に追加されました。
skinOps.GetBoneNameByListID () メソッドは SkinOps Struct から削除されました。
MSPluginClass に新しい .Version プロパティが追加されました。MSCustAttribDef はそこから派生し、 カスタムアトリビュート定義 の .Versionプロパティを効果的に公開します。
Windows デスクトップ、3ds Max メイン ウィンドウ、ビュ-ポ-トまたはその HWND による他のウィンドウをなど、指定したウィンドウのスナップ ショットのイメージを作成する、新しいメソッド windows.snapshot () が既存の windows 構造体に追加されました。
既存のビューポート構造体にビューポートの Windows ハンドルを取得するためのメソッド viewport.getHWnd() が新しく追加されました。
任意のビューポートインデックス、viewPanel インデックス、アルファ チャンルのサポートおよびガンマ補正のために、ビューポート構造体の既存の viewport.getViewportDib () メソッドが拡張されました。
オプションのアルファ チャンルのサポートおよびガンマ補正のために、既存の gw Struct の既存の gw.getViewportDIB() メソッドが拡張されました。
既存の gw Struct の既存の gw.text() 、 gw.htext() および gw.wtext() メソッドが、新しい線分を \n エスケープシーケンスを使用して導入するマルチ テキストをサポートするように改善されました。
新しい on isIndeterminate do ハンドラは、True を返して、MacroScript メニュー項目をメニューおよび QuadMenus に水平ダッシュ(不確定チェックマークを示す)として表示できます。
新しい pickAnimatable() 関数は、既存の PickObject() 関数に似ていますが、3D ビューポート、Explorer、スケマティク ビューまたはトラック ビューからアニメート可能なトラックを選択できます。
新しい forceReloadBitmapFile() 関数を使用すると、ビットマップ値を持つファイルを再ロードすることができます。
新しい registerFileChangedFunction() 関数を使用すると、ビットマップ値を持つビットマップ ファイルがディスク上で変更されたときに関数を実行するコールバックを登録することができます。
新しいオプションのキーワード引数 caption: が、ビットマップ値に関連する既存の display() 関数に追加され、VFB のタイトルバーに、カスタムのキャプション文字列を表示できるようになりました。
存続グローバル変数値として保存およびロードする IntegerPtr のサポートが追加されました。 以前の 3ds Max バージョンに保存する場合、 IntegerPtr 値が Integer64 として保存されます。次のドキュメントの修正点も参照してください。
editText コントロール のテキストを編集中に[Esc]キーを押すと、フォーカスがコントロールの親ウィンドウに移動します。
escapeEnable: キーワード引数が False に設定されている場合、createDialog() を使用して作成したモーダル ダイアログで [ESC] キーを押すとダイアログが閉じます。 これはドキュメントに記載されていましたが、以前のバージョンでは実装されていませんでした。
マテリアルを 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 以降で保存したファイルにあります。