0

こんにちは私は現在、MayaでPythonスクリプトを学んでいます。モデルをコードに保存して、コードを使用して独自のモデルにアクセスできるようにする方法を探しています。(私はPythonのアミノ酸配列を書く方法を理解していますが、mayaオブジェクトを保存してPythonでmayaにアクセスする方法は理解していません)

スクリプトエディタにアクセスする方法と、polySphere()などの特定の形状を追加する方法を学びました。私がやりたいのは、特定のモデルを作成し、モデルを選択して、選択したすべてのアイテムを再作成するためのコードを取得することです。これをスクリプトで実行して、別のシーンでその形状を再作成できます。

例:私は現在いくつかのアミノ酸を作成していますが、アミノ酸をモデル化するのは難しいことではありませんが、それらのチェーンを作成したい場合は、それらの特定のアミノ酸を再作成するスクリプトを作成すると非常に役立ちます(3Dモデル)順番に。

ご協力いただきありがとうございます!

4

1 に答える 1

3

これは、初級から中級の Maya ユーザの多くが抱える問題です。それは、Maya が実際にどのように機能するかを彼らが本当に理解していないという事実から生じています。ここでの秘訣は、実際には間違った方向から見ていることです。答えを詳しく説明する前に、後で混乱しないようにスクリプトを定義するのが最善です。Maya のスクリプティングは、Maya のスクリプティング レイヤであるmaya.cmdsモジュールです。Python は、maya.OpenMayaで Mayas プログラミング レイヤも公開します。これについては後で詳しく説明します。

現在、Maya のスクリプト インターフェースは、仕事をするツールではないため、最初はやや奇妙です。Maya の実際のプログラミング環境は ノード です。スクリプト インターフェースは、ノードをレイアウトするためのプログラム的な方法を公開するだけです。つまり、Maya のスクリプティング インターフェースは一種のメタプログラミングインターフェースです。これは、スクリプト リファレンスを見て理解するのではなく、ハイパーグラフまたはノード リファレンスを見ればわかります。これは、一見してやりたいことを行うのが少し直感的でないことを意味します。

したがって、あなたの質問はこの時点で変化します(上記で定義したようにスクリプトを作成し、Maya のマニュアルで定義されていると仮定します)。このアミノ酸鎖を構築するには、どのような種類のノードを使用できますか?

基本的には、パーティクルとパーティクルのインスタンス化を使用するか、スナップショット ノードを使用するかの 2 つのオプションがあります (スナップショット ノードは、実行時にレプリケーションを実行してdgの形状を変更できる唯一のファクトリ ノードです)。粒子のインスタンス化は、慣れると超高速かつ直感的に機能し、ほぼ確実に数十万の分子をこの方法で実行できます。スナップショット ノードの使用は少し複雑で、簡単にアニメーション化することはできません。これらすべてを有用なものにバインドするために使用するノードはエクスプレッション ノードです。これは Mayas カスタム データ ハンドラです(エクスプレッションは MEL ではありません)。

本当にコードを実行したい場合は、スクリプトと組み合わせて Mayas API を使用してノードを作成する必要があります。スクリプトはノードを構築するため、接続とユーザー インターフェイスの構築はスクリプトであり、API はノードの内部構造のみを構築します。これはより単純なコーディングであり、時間の無駄遣いです。

イベントを使用して、オンデマンドでいまいましいものを再構築することも可能です。これの問題は、マヤがあなたのいたるところに吐き出し、あなたと戦い、あなたの人生を惨めにすることです.

于 2012-05-21T09:51:28.457 に答える