Maya 2016 Extension 1 の API の新機能

Maya 2016 Service Pack 3 と Maya 2016 Extension 1 + Service Pack 3 には次の変更が適用されます。

API の互換性

Maya 2016 Extension 2 と Maya 2016 には、バイナリ レベルで互換性はありません。Maya 2016 および Maya 2016 Extension 1 の Maya API ガイドを入手するには、http://www.autodesk.com/me-sdk-docs-2016 を参照してください。

Maya 2016 Service Pack リリースを含む Maya 2016 または Maya 2016 Extension 1 に対してコンパイルされた C++ プラグインが、Maya 2016 Extension 2 で認識されるようにするには、プラグインをこのバージョンの Maya に対して再コンパイルする必要があります。

また、Maya 2016 Extension 2 向けにコンパイルされたプラグインを、Maya 2016、Maya 2016 Extension 1、またはいずれかの Maya 2016 Service Pack リリースでロードすると、ロードに失敗するか、予期しない動作を示します。

Maya ビューポート 2.0 のホワイトペーパー

Maya ビューポート 2.0 のホワイトペーパーは、http://www.autodesk.com/developmaya で参照できます。

このドキュメントは 2 つのパートに分かれています。1 つ目のパート『Viewport 2.0 API Porting Guide(英語)』は、ビューポート 2.0 の概要を示すとともに、旧式の既定ビューポートとビューポート 2.0 との違いについて説明します。2 つ目のパート『Viewport 2.0 API Porting Guide Details(英語)』は、より詳細な内容について触れており、推奨するインタフェースを指定し、一般的なタスク向けのサンプル コードを提供します。

Maya のアニメーションのパフォーマンスに関するホワイトペーパー

ホワイトペーパー『Improving Performance with Parallel Evaluation(英語)』 は、http://www.autodesk.co.jp/maya-docs で参照できます。

新しい評価マネージャの使い方に関する詳細は、このドキュメントを参照してください。シーンレベルのグラフ解析と並列化を通して、アニメートされたシーンの再生と操作を改善することができます。さらにこのドキュメントは、プラグインに実装してこれらの機能を活用するための API 拡張に関する情報を提供するとともに、シーンのパフォーマンスを評価するためのプロファイラの使い方についても解説しています。

Maya Developer Kit

開発キットは https://apps.exchange.autodesk.com/MAYA/ja/Home/Index の Autodesk Exchange からオンラインで入手できます。

ハードウェアの選択

  • セマンティックが追加され、DX11 または GLSL シェーダでハードウェア選択を実行できるようになりました。たとえば、選択がオブジェクト レベルで行われるのか、頂点レベルで行われるのかを指定することを許可するセマンティックです。

    注釈が追加され、ワイヤフレームや選択済みエッジ/頂点コンポーネントなどの非マテリアル項目を描画できるようになりました。

    Maya を OpenGL のコア プロファイル モードで実行している場合に、ハードウェア選択が有効になります。その代わりに、環境変数 MAYA_USE_HARDWARE_SELECTION = 1 に設定することもできます。

    ビューポート 2.0 の dx11Shader および glslShader プラグインでサポートされるセマンティックと注釈」および「ビューポート 2.0 でサポートされるシェーダ セマンティック」を参照してください。

  • Maya Developer Kit の dx11Shader および glslShader プラグインが、ハードウェア選択を示すように更新されました。glslShader はシャドウ パス、透過性、詳細透過性パスもサポートします。さまざまな入力が選択可能になり(カラーまたは UV セットの選択)、パフォーマンスも向上しました。

    WaterSimulation シェーダのサンプルも参照してください。 GLSL バージョンのサンプルについては、Maya のインストール フォルダ内の presets¥GLSL¥examples フォルダにある WaterSimulation.ogsfx を参照してください。DX11 バージョンについては、presets¥HLSL11¥examples フォルダにある WaterSimulation.fx を参照してください。

  • 新しいMPxGeometryOverride::pointSnappingActive() および MPxSubSceneOverride::pointSnappingActive() 関数が追加され、スナップがアクティブな場合に、正しい選択レベルを設定できるようになりました。

    詳細については、Developer Kit の apiMeshShape を参照してください。 また、MSelectionContext::selectionLevel() も参照してください。

GLSL シェーダのラーニング パスを作成する

  • GLSL シェーダのラーニング パスを作成する」のトピックが追加され、GLSL シェーダを .ogsfx 形式に変換するためのガイドラインを提供しています。この形式のシェーダは、Maya の glslShader.mll プラグインを使用してロードし、ビューポート 2.0 で表示できます。

描画

MUIDrawManager

  • MUIDrawManager::beginDrawInXray() および MUIDrawManager::endDrawInXray() メソッドが追加されました。これらの 2 つのメソッドの呼び出し間で描画されたプリミティブは、シーン内の他のジオメトリの上に表示されます。これらのメソッドはロケータなどのオブジェクトを描画するために使用することができます。

    これらのメソッドは、MUIDrawManager::mesh() を使用して作成された描画可能な項目にのみ適用できますが、それらは kTriangleskLineskPoints のうちの 1 つです。

  • 深度テストを行わずに、メッシュを描画する例については、Developer Kit の squaresNode_noDepthTest を参照してください。MUIDrawManager は 2 つの正方形と文字の描画に使用され、これらの 2 つの正方形と文字はシーン内の他のジオメトリの上に表示されます。

モデリング

カーブのアトリビュートの新しいクラス

  • カーブのアトリビュートの作成と操作のために、新しい MCurveAttribute クラスが追加されました。 このクラスは、ランプ アトリビュートに使用される MRampAttribute クラスに似ています。 ランプ アトリビュートと同様に、カーブ アトリビュートには入力値を出力値にマップするためのカーブを記述するエントリのセットがあります。カーブ アトリビュートのエントリは、ランプ アトリビュートと同様に、カーブ上の点ではなくコントロール ポイントであることに注意してください。この違いにより、よりスムーズなエフェクトが生成されるため、ブラシの減衰カーブに適しています。MCurveAttribute 内のメソッドは、エントリの追加、エントリの削除、エントリの再配置、入力範囲 0 から 1 までに対する出力値のクエリーやその他の操作に使用できます。

マニピュレータ平面ハンドルを表示する関数

  • 新しい関数が追加され、マニピュレータ平面ハンドルを表示するかどうかを指定できるようになりました。

    これらの関数を呼び出すことは、manipOptions コマンドを showPlaneHandles フラグ付きで実行することと同じです。