さまざまな回転で多数の円柱を作成する C++/OpenGL プログラムを使用しているため、それらはすべて接続されているように見えます。エクスポート メソッドを追加して、Maya 用の同じ描画メソッドの Python スクリプトを記述し、スクリプトをロードできるようにしました。
OpenGL が Cylinder を作成して回転させるとき、Z 軸に合わせて回転させ、「ベース」で回転させて変換することを知っています。
そのため、Maya の変換では、変換の前にピボットを移動し、シリンダーを OpenGL の標準に事前に位置合わせするように注意しました (その後、変換をフリーズして、OpenGL の基礎を作成します)。
翻訳はすべて正しい場所に移動しているように見えますが、回転関数間の変換が正しく行われているか心配です。Maya と OpenGL の両方が度単位で回転することを理解しています。ただし、OpenGL の関数は次のとおりです。
glRotated(angle, x, y, z);
そして Maya の Python では:
cmds.rotate(x-deg, y-deg, z-deg);
だから私がやっていることは、OpenGL から角度を取得し、Maya メソッドの指定された軸を掛けることです。
cmds.rotate(angle * x, angle * y, angle * z);
私はこれが機能し、私が望むものを私に与えるだろうと考えました. しかし、回転はまだオフのようです。天気の良い説明が見つからないか、これが期待どおりに機能しない可能性があります。誰でもこの関係を確認できますか?