-4

(MFC)を使用してC++でMayaビューポート拡張機能を開発する必要があります。また、ビュースタイル(上面図、左側面図など)を制御する必要があります。MayaSDKを使用してこれをアーカイブできますか?

4

1 に答える 1

4

「Viewport Extension」の意味がよくわかりません。一般に「モデル ビュー」と呼ばれる
独自のタイプのビューポートを備えた Maya プラグインを作成しようとしていると思います。

MCFはこれとは何の関係もありません。
Maya MEL/Python コマンドを使用して、Maya ウィンドウ、パネル、およびその他の UI 要素を作成します。
(自分で作成したウィンドウで Maya を動作させるハックがあるかどうかはわかりません) .


ビューポートまたはモデル ビューと「モデル エディタ コマンド」の2 つのクラスを作成することにより、Maya でカスタム ビューポートを開発できます。

モデル ビュー

1 つはビューポート クラスです。これを「MyViewport」と呼びましょう。
「MPx3dModelView」を継承する必要があります。
通常、カメラをビューポートに関連付けます。これにより、シーンが見える場所から制御できます。ビューポートに複数のカメラを接続することも (ステレオ 3D などのマルチパス ディスプレイ)、まったく接続しないこともできます (ただし、すべてのレンダリング パラメータを自分で設定する必要があり、面倒な場合があります)。

そのクラスから継承した (コールバック) 関数を使用すると、ビューポートの詳細を設定できます。

MPx3dModelView の使用方法については、Maya のドキュメントを参照してください。
http://download.autodesk.com/us/maya/2010help/API/class_m_px3d_model_view.html

モデル エディター コマンド

もう 1 つの必要なクラスは、viewport コマンドです。
これは、誰かがビューポートを作成しようとしたときに呼び出されるものです。
「MPxModelEditorCommand」を継承する必要があります。
最も重要な機能は、Model Editor クラスのインスタンスを作成できることです。

使用方法については、MPxModelEditorCommand に関する Maya のドキュメントを参照してください:
http://download.autodesk.com/us/maya/2011help/API/class_m_px_model_editor_command.html

ビューポート コマンドを Maya プラグインに登録する

ビューポートを作成できるようにするには、モデル エディター コマンドをプラグインに登録する必要があります。
initializePlugin 関数 (プラグインでエクスポートする関数) で


MStatus initializePlugin( MObject obj )

    {
        MFnPlugin plugin( obj, PLUGIN_COMPANY, "1.0", "Any");
        plugin.registerModelEditorCommand(MyModelViewCmd::commandName, MyModelViewCmd::creator, MyModelViewCmd::createModelView);
    }

ビューポートを作成するスクリプトを書く

最後に、Maya で MEL または Python スクリプトを使用して、ユーザ インタフェースを作成します。
最も単純なセットアップでは、ウィンドウを作成し、モデル エディター コマンドを呼び出して、このウィンドウにカスタム ビューポートを作成します。



    window MyWindow;
    paneLayout MyWindowPane;
    MyModelView MyModelView1;

于 2013-03-21T02:51:43.403 に答える