2

さまざまな種類のモデル ファイルをインポートできることで大きなメリットが得られるアプリケーションを作成しているため、assimp に関心があります。

ただし、ARM 用にプロジェクトをコンパイルするのは思ったより難しいようです。私は外国のシステムをコンパイルする専門家ではないので、WP8 アプリでそれを使用するのはあまりうまくいきません。

WP8 アプリで AssImp を正常に使用できた人はいますか? 他の人が iOS アプリで動作させることができたので、WP8 用にコンパイルすることは不可能ではありませんが、難しいかもしれません。

4

1 に答える 1

0

簡単に言えば、それは可能であり、数日間いじった後、なんとか移植することができました。

私が行った方法はおそらく最善の方法ではありませんでしたが、とにかくここで説明します。

  1. ライブラリを個別にコンパイルしてからリンクするのに多くの時間を費やしました。

    a. ARM と x86/x64 の両方で正常にビルドできましたが、この方法ではリンクできませんでした。

    b. また、空白の WP8 スタティック ライブラリ テンプレートにソース ファイルと依存関係を追加することで、ビルドすることもできました。

    c. 正しくリンクできたときは、モジュールが見つからないという実行時エラーが発生しました。

  2. 上記のアプローチを機能させるために費やした努力の結果、AssImp を適切にコンパイルするように VS2012 プロジェクトを構成するのが本当に上手になったので、リンクを回避するためのより直接的なアプローチを採用し、AssImp のソースとその依存関係を追加しました。私のメインWP8プロジェクトに。

    a. AssImp を適切に構成するには、奇妙なことがいくつかあります。

    b. 最も重要なことは、すべての依存関係 (ブースト) と、AsImp がソース コード ディレクトリにない追加ファイルを必要とすることを確認することです。これには、いくつかのバージョン ヘッダーと contrib ディレクトリが含まれます。

    c. インクルードが適切に設定され、必要なコードがすべてコンパイラに認識されていることを確認したら、コンパイラの問題を回避するためにファイル ハッキングを行う必要があります。

    d. 移植するために必要なわずかな変更のほとんどは簡単ですが、使用されていない互換性のないヘッダーを取り込まないように、windows.h の一部の #includes をコメントアウトする必要があるなど、醜いものもあります。

  3. その後、プロジェクト全体をコンパイルしてデプロイできるはずです! WP8 エミュレーターとデバイス自体の両方でモデルを読み込んでレンダリングすることができました。

誰か助けが必要な場合、またはアプリケーション コードを含まないプロジェクトのバージョンをお送りできる場合はお知らせください。

于 2013-04-21T17:43:50.353 に答える