9

動機
WebGLを使用して小さなデモアプリケーションを作成しようとしています。私はSceneJSを使用することにしました。これは、簡単なフレームワークのようであり、この目的には十分すぎるためです。

いくつかの.blendモデル(特にAmy Rose )をダウンロードし、 Blenderを使用してCollada(.dae)ファイルとしてエクスポートしました。次に、scenejs-pycolladaを使用してそれらをjsonモデルに変換しました。

私は、 scenejs-pycolladaコンバーターを動作させるために数時間を費やしました。どうやら、これまでPythonを使用したことがない場合、これらのPython依存関係をWindowsで機能させるのはそれほど簡単ではありません。;)

問題
しかし今、私は立ち往生しています(再び)。私の問題は、モデルにテクスチャや素材がないことです。

SceneJSのSeymourPlaneExample使用しました。変換したモデルはほとんど見えません。黒く、シーンの照明に反応しないようです。平面とモデルを一緒にロードすると、腕と脚が平面から突き出ているため、モデルがロードされていることがわかります。

次に、テクスチャをPNG画像としてエクスポートできるチュートリアルをいくつか実行しました。次に、JSONモデルのテクスチャファイル名をファイル名と一致するように変更しましたが、役に立ちません。

ですから、誰かがBlenderモデル(または他の一般的な3Dモデル)をSceneJSで使用されるJSON形式(テクスチャを含む)にエクスポートする方法を見つけるのを手伝ってくれることを願っています。

それが機能する限り、SceneJSにモデルをロードする他の方法も同様に機能します。

ボディ/フィギュアJSONモデルの無料ダウンロードへのリンクがあれば、それは今のところ役に立ちますが、私はむしろこれがどのように機能するかを学びます。:)

使っています

  • Windows 7 HomePremium64ビット
  • Python 2.7(Windows 32ビット)
    ライブラリのサポートが改善され、インストーラーが利用できるようになったため、32ビットバージョンを選択しました。最初は32ビットと64ビットを混同して問題が発生しましたが、今ではすべてが機能しているようです(つまり、テクスチャを除く)。
  • Blender 2.59
  • SceneJS 0.8.0

私のワークフロー
Blenderで、モデルをCollada(* .dae)ファイルにエクスポートし、scenejs-pycolladaを使用してRawJSONに変換します。これにより、2つのオブジェクトを含むJSONファイルが得られます。最初はシーンのようで、2番目はモデルのようです。2番目を保持し、SceneJSの例のコードで使用されているJavascript変数に入れます。, "type": "library", "parent": "Scene"モデルは、ロードするためにコードから削除する必要のあるプロパティで終わります。

4

1 に答える 1

7

私は実際にscenejs-pycolladaの作者です。私があなたを助けることができるかどうか見てみましょう:)

SceneJS のバージョン 0.8 を使用しているようです...状況はかなり流動的であるため、SceneJS の 2.0 ブランチを githubから取得し、scenejs-pycollada を個人リポジトリから取得するのが実際には最も簡単かもしれません。私は基本的に、scenejs-pycollada の最初のリリースで SceneJS 0.9 をターゲットにしていましたが、そのバージョンは正式にリリースされることはありませんでした。また、長期的には、今すぐ切り替えるだけですべてを書き直す必要はありません...

問題のある Windows のコンパイルも大きな問題です。numpy の開発者が Windows の皆さんのためにこれを修正してくれることを心から願っています。SceneJS 2.0 がリリースされたら、windows に必要なすべての依存関係がパッケージ化された scenejs-pycollada の公式バージョンをリリースします。

したがって、この回答にコメントするか、質問を更新してください。見守ってみます。

PS または、本当にイライラしている場合は、実際には https://github.com/rehno-lindeque/Blender-WebGL-exporterに 2 番目のブレンダー エクスポーターがありますが、これを使用することはお勧めしません。非常に時代遅れです。他の唯一の scenejs collada エクスポーターは、かなり前に廃止されました。

PPS Scenejs-pycollada自体にもサンプルといくつかのテストモデルがあります。簡単なモデルで遊んでみたいだけなら、https://github.com/rehno-lindeque/scenejs-pycollada/tree/master/exampleをチェックしてください。

PPPS 実際、Amy Rose モデルがうまく機能しなかった理由の 1 つは、scenejs-pycollada がまだ複数のマテリアルをサポートしていなかったためです。今夜、これにいくつかのサポートをすぐに追加します。

于 2011-10-10T22:45:33.463 に答える