私は、それを使用する多くのプレーヤーを持つ単一のスキンプレーヤーメッシュを持つ小さなマルチプレイヤーゲームに取り組んでいます。 背景:私はmayaとblender collada exportを使って読み込みを試みました。両方とも何らかの形のアニメーションデータを参照しているようですが、動作させることができませんでした。私はMaya JSONエクスポータを試しました。これは、マテリアルラインだけを使って小さな1kファイルを吐き出します。最後に、BlenderのJSONエクスポータが働きました。また、肌のメッシュをロードしようとしたものに、私は、これは非常に役に立った:Model with bones animation (blender export) animating incorrectly in three.jsThree.jsスキンスケルトンメッシュインスタンス、アニメーション、ブレンディング
は、だから今はgeometry
オブジェクトとJSONローダーからmaterials
配列を持っています。
私は、材料にskinning=true
を設定THREE.SkinnedMesh
を作成し、シーンに追加し、THREE.AnimationHandler.add
経由でアニメーションを追加(私はAnimationHandler
が実際にを何にかなり不明確だ)、THREE.Animation
、呼び出しplay()
とupdate(dt)
を作成することができます。最後に私は単一のメッシュとアニメーションを自分のシーンで演奏しています。
は今、私が欲しいものこれら...
多くの場合ある - 私は、複数のプレイヤーモデルが私のシーンで走り回って欲しいです。
- 同じメッシュとアニメーションデータが何度も読み込まれることは望ましくありません。
- アニメーションの時間はインスタンスごとにする必要があります(アニメーションが同期しているわけではありません)。
私は、同じモデルのため
THREE.SkinnedMesh
多くとTHREE.Animation
を作成する必要がありますか。THREE.AnimationHandler
はどこに来ますか?多くのアニメーション - アイドル/実行サイクルを個別に再生できるようにしたい。
AFAIKアニメーションキーフレームのタイムラインは1つだけです。 Three.jsはこれをどのように分割するのですか、それとも手動で行う必要がありますか?
アニメーションブレンディング - 文字は、実行を停止してアイドルアニメーションで静止すると、私は一方から他方へのインスタントスナップを望んでいません。私は実行アニメーションを一時停止し、その状態をアイドルアニメーションに戻したいと思います。
現在、スキンメッシュ(モーフターゲットではありません)ではこれが可能ですか?これに関する例や文書はありますか?
いずれの情報も、正しく正しい方向に微調整していただければ幸いです。 私は完全なチュートリアルの後ではありません、これらの機能に関するいくつかのより高いレベルの情報が欲しいです。
私は喜んと3を実装することもできますが、私はスキニングthreejsとアニメーションフレームワークに関するいくつかの情報/記述ドキュメントは、私が始めるにしたいと思います。たとえば、thisはそれほど多くはありません。
[EDIT]
おかげで、@NishchitDhanani、このページはかなり良いですが、複数のアニメーションやブレンド骨格アニメーションを言及していない:http://chimera.labs.oreilly.com/books/1234000000802/ch05.html#animating_characters_with_skinning
このページでは、複数のアニメーションは、まだ現在の問題ではありませんと言います(コメントで少し議論)はるか: http://devmatrix.wordpress.com/2013/02/27/creating-skeletal-animation-in-blender-and-exporting-it-to-three-js/
現在の答えがある...
- 多くの場合、
THREE.SkinnedMesh
を使用していますが、まだわからないのは約THREE.AnimationHandler
です。 - わかりません。おそらく、
THREE.Animation
に手動で開始/終了キーフレームを変更する方法があります。 - AFAIKは実装されていません。私は2つの
THREE.Animation
を取り、それらの間を補間するカスタムシェーダを作成しようとするかもしれません。
誰もがMAYA 2013年からシーンをエクスポートするために持っている人のために何かアドバイスはあり、他のオプションはありません。他のプログラムにインポートする以外 –
@RyanBlevins私はレベルメッシュ+ライトなどのためにcolladaを使用しています。それは私が働くことができなかった骨格アニメーションです。 colladaローダーは '.scene'オブジェクトを与えます。すべてを追加したり、子供たちを選んで選ぶことができます。 – jozxyqk
スキンスケルトンアニメーションが必要です。 –