問題タブ [collada]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
actionscript-3 - papervision3Dを使用してColladaモデルのアニメーションを制御するにはどうすればよいですか?
papervision3Dを使用してColladaモデルのアニメーションを制御するにはどうすればよいですか?そして、なぜ私がpapervision3Dで見つけたものはすべて、2008年または2009年の日付であるのですか?この図書館は死んでいますか?
c++ - COLLADA:間違ったスペースでの逆バインドポーズ?
私は自分のCOLLADAインポーターの作成に取り組んでいます。メッシュやマテリアルなどをロードして、かなり遠くまで到達しました。しかし、私はアニメーション、特に関節の回転に問題を抱えています。
メッシュのスキニングに使用している式は単純です。
そして、文献に関する限り、これは正しい公式です。現在、COLLADAは、ローカルとグローバルの2種類の関節の回転を指定しています。ジョイントのローカル変換を取得するには、回転を連結する必要があります。
COLLADAドキュメントで区別されていないのは、ジョイントのローカル回転とジョイントのグローバル回転です。しかし、私が見たほとんどのモデルでは、ローテーションはrotate
(グローバル)またはjointOrient
(ローカル)のいずれかのIDを持つことができます。
グローバルローテーションを無視してローカルローテーションのみを使用すると、モデルのバインドポーズが取得されます。しかし、ジョイントのローカル変換にグローバルローテーションを追加すると、奇妙なことが起こり始めます。
これは、グローバルローテーションを使用しない場合です。
そして、これはグローバルローテーションです。
どちらのスクリーンショットでも、線を使用してスケルトンを描画していますが、最初はジョイントがメッシュの内側にあるため、スケルトンは表示されていません。2番目のスクリーンショットでは、頂点がいたるところにあります。
比較のために、これは2番目のスクリーンショットがどのように見えるかです:
見づらいですが、2番目のスクリーンショットで関節が正しい位置にあることがわかります。
しかし、今は奇妙なことです。COLLADAで指定されている逆バインドポーズを無視し、代わりにジョイントの親ローカル変換にジョイントのローカル変換を掛けたものを逆にすると、次のようになります。
このスクリーンショットでは、各頂点から影響力のあるジョイントまで線を引いています。数式が次のようになるため、バインドポーズを取得するという事実はそれほど奇妙ではありません。
しかし、COLLADAの逆バインドポーズが間違ったスペースにあるのではないかと思われます。
だから私の質問は:COLLADAはどのスペースでその逆バインドポーズを指定しますか?そして、どうすれば逆バインドポーズを必要なスペースに変換できますか?
qt - QtアプリケーションでColladaメッシュを表示するにはどうすればよいですか?
小さな3Dビューポートを作成し、そこにColladaメッシュを表示するにはどうすればよいですか?また、メッシュにはテクスチャがあり、ユーザーはマウスで回転およびズームイン/ズームアウトしたいと思うでしょう。
python - サーバー側のCOLLADAコンバーター
.objおよび.fbx3Dモデルをサイトにアップロードするユーザーに対応するWebフォームを作成しています。これらのファイルをCollada(dae)に変換するには、サーバー側のソリューションが必要です。
考えられる解決策についての確かなアイデアがまだないので、誰かが私を正しい方向に向けることができれば、非常に役立ちます。ある道を進む前に、他の人の意見を聞きたいです。
アップロード中にPHPによってトリガーされたpython/perlスクリプトに沿って何かを考えることしかできませんか?
よろしくお願いします。
c# - メッシュの読み込みと処理中にスキン メッシュをどのように変換しますか?
独自のスキン メッシュ ローダーを作成しました。正常に動作していますが、私の問題は、変換が頂点に「焼き付け」られるように、スキンメッシュを変換 (スケーリングと回転) する方法がわからないことです。単なるジオメトリの場合、頂点の変換は簡単ですが、スキニング情報が関係しているため、たとえばスケーリングを行うと、メッシュがすべて引き伸ばされます。スキニング データも変換する必要があることはわかっていますが、どの部分でしょうか? すべてのバインド ポーズ マトリックス?インバース バインド ポーズ マトリックス? これについてどうやって行くのか理解できないようです。
私の実装は C# と OpenTK であり、特に Blender 2.6 からエクスポートされた Skinned Collada ファイルをロードしています。
前もって感謝します。
collada - Collada (dae) モデルをロードするときに THREE.js でマテリアルをセットアップする方法は?
Collada (dae) モデルをロードするときに THREE.js でマテリアルをセットアップするにはどうすればよいですか?
次のコードがあります。
助けてくれてありがとう。
google-earth - ローカル ディスクから .kmz ファイルを取得し、API 経由で Google Earth にインポートする
ニューヨーク市の各建物の 3D モデルを Google Earth API にインポートする必要があります。google.earth.fetchKml を使用して .kmz ファイルを取得しました。このコマンドは kmz ファイルの URL を使用し、インポートするファイルの数が多いため、非常に遅くなります。
これらのファイルをローカル ディスクから取得する方法はありますか?
.kmz の代わりに使用できる他の形式はありますか? たとえば、.dae ファイルですか?
render - 機能する THREE.js collada ローダーを作成できないようです
レンダリングするカメラや照明が組み込まれていないカスタムメイドの collada オブジェクトを取得する際に問題が発生しています。いくつかの collada の例で見たものを多かれ少なかれコピーして、次のような独自のローダーを作成しました。
init 関数はかなり基本的なもので、次のようになります
これが私がレンダリングしようとしている実際のオブジェクトです。また、サンプル フォルダーにある Monster.dae ファイルを試してみましたが、成功しませんでした。Chrome の JavaScript コンソールにエラーが表示されないため、コードのどこを調べればよいかわかりません。それはすべて機能的な例に似ているので、なぜ機能しないのかわかりません。collada の読み込みに関連する、私が気付いていないことはありますか?