問題タブ [assimp]

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.

0 投票する
2 に答える
4266 参照

3d - Assimp モデルにはテクスチャがありますが、テクスチャ座標がありません

Assimp を使用して 3D モデルをプログラムにロードしています。意味をなさないように見える Lightwave オブジェクトに出くわしたことを除けば、これまでのところすべてうまくいっています。もちろん、Lightwave ではうまくレンダリングされますが、Assimp にはテクスチャ座標も UV 座標もありませんが、最終的にロードされるテクスチャがあります。しかし、それは役に立ちません。テクスチャ座標がないため、メモリ内に留まり、使用されることはありません。

これについては、これまでのところ、役立つ Assimp ページは見つかりませんでした。他のモデルは正常にロードされ、適切にテクスチャ マッピングされます。これはAssimpの問題ですか?

0 投票する
1 に答える
1600 参照

opengl - GLSL 法線マッピング (0.0 Lambert の領域が点灯)

モデルの法線を使用すると、結果は良好です (単純なランバート拡散シェーダから期待されるように、暗い領域と明るい領域があります)

しかし、法線マップを使用すると、暗い領域が明るくなります!

法線マップを使用しながら、これらの例のように正しい拡散照明を取得したい

これは、通常のマッピングを使用する場合と使用しない場合のコードです

これが法線マップを使用するコードです

頂点シェーダー

フラグメント シェーダー

注: 実際の法線マッピングは、スペキュラー ハイライトに見られるように正しく機能します。

Assimp を使用してモデル (md5mesh) をロードし、Assimp を使用してタンジェントも計算し、それを属性としてシェーダーに送信しました

ここに問題のコードとスクリーンショットへのリンクがあります

https://dl.dropboxusercontent.com/u/32670019/code%20and%20screenshots.zip

それはコードの問題ですか、それとも私の誤解ですか?

更新されたコードとスクリーンショット

https://dl.dropboxusercontent.com/u/32670019/updated%20code%20and%20screenshots.zip

法線マップは拡散反射光で機能するようになりましたが、拡散反射光だけでは正しくありません

0 投票する
0 に答える
1042 参照

c++ - OpenGL Assimp C++ アクセス違反の読み取り場所 0x00000000

いくつかのチュートリアルに基づいて単純なモデル ローダー/ディスプレイを実行しようとすると、問題が発生しました。次のコードをコンパイルするたびに、このエラーが発生します。

これは、違法な null ポインターがアクセスされていることを意味しますが、見つけることができないようです。これが私のコードです:

}

ここでこの関数を使用します:

最も奇妙な部分は、ロードするために選択したモデル形式に応じて、別の場所でエラーブレークが発生することですが、エラーは常に同じです. assimp バージョン 3.0 と Visual Studio 2010 を使用しています。

0 投票する
3 に答える
613 参照

c++ - 関数リターン後の無効なコンテンツへのポインタ

この const ポインターを返す際に問題が発生しました。デバッガーを使用すると、シーンが正しくインポートされ、変数シーンに保存されていることがわかりました。シーンを返した後、シーンが指すコンテンツは失われ、loadData() を呼び出すクラスからアクセスできなくなります。

(ImporteraiScene(struct)は assimp ライブラリの一部であり、変更できません)

シーンがスタックに格納されていると仮定し、リターン コールによってスタック ポインタがリセットされ、コンテンツが失われます。C ++でこのような問題を処理するにはどうすればよいですか?

0 投票する
1 に答える
1925 参照

c++ - OpenGL の奇妙なレンダリング動作 (顔がちらつく)

PRE: Assimp (Open Asset Import) ライブラリを使用して .3ds ファイルをインポートしています。メッシュは法線とマテリアルでレンダリングされます。Qtを使用しています。試したすべてのコンピューターで最新のドライバー。

投稿:カメラを使用してオブジェクトの周りを回転すると、一部のメッシュの面がちらつくことがわかります。

Assimp の render() メソッド (A. wsite からダウンロードしたサンプル コード) を使用しても同じことが起こります。

1) 奇妙なことに、それは通常、小さなサイズの .3ds で発生しますが、大きなサイズでは決して発生しません。

2) 私が本当に近くにいる場合、アーティファクトはありません。遠くにいるほど、より多くのアーティファクトが見えます。

それは.3dsの問題ですか、それとも私のものですか?

大きな .3ds (20MB) の例 e

小さな .3ds (3MB) の例 ここに画像の説明を入力

Draw() 関数をここに貼り付けます(glList を使用していますが、それらを取り除くことはできません)。

0 投票する
1 に答える
524 参照

ios - IOS でスレッドを使用すると、assimp が 3D モデルのインポートに失敗する

IOS で assimp lib を使用してモデルをレンダラーにインポートしようとしています。モデル ファイルのサイズは 2 MB です。

スレッドを使用しないことでモデルを正常にインポートできます。

しかし、スレッド内でコードを実行すると、assimp がインポートに失敗します。

なので基本的にこのシーンは糸を使えば無くなります。

私はスレッドを間違って使用していますか?

私が見逃しているポイントは何ですか?

このリンクからさらに多くのコードを見ることができます: http://pastebin.com/aLjx7dvZ

質問の単純さを維持するために、完全なコードは投稿しませんでした。

0 投票する
3 に答える
523 参照

opengl - OpenGL、Assimp 3D モデルの追加後に画面が更新されない

私は OpenGL 4.0 を使用しています。シーンには 3 つのものがあります。1-

VBO プレーン
2- キューブ マップ
3- 3D モデル [3ds/obj]

私は Assimp ライブラリを使用して 3D モデルをインポートしています。モデルをインポートするために作成したコードは、「TheCPlusPlusGuy」からの youtube のチュートリアルの助けを借りて作成されました。

これが私が直面している問題です。シーンで平面をレンダリングできます。シーンでキューブ マップ、別名スカイボックスをレンダリングでき、それらを一緒にレンダリングできます。
しかし、.3ds であれ .obj であれ、3D モデルをレンダリングしているとき、画面が更新されません。画面のサイズを変更しても、更新されません。
これは、3D モデルをレンダリングするときにのみ発生します。フラグを使用し、実行時に 3D モデルの描画を有効にしました。モデルをレンダリングするまでプログラムは正常に実行されます。モデルをレンダリングすると、モデル自体は画面に表示されませんが、画面が再びフリーズします。
私はそれをグーグルで調べましたが、他の誰もこのような問題を抱えているようには見えません.

私の主な診断は、平面、キューブマップ、および 3D モデルに VBO を使用しているためです。この問題が発生しています。

0 投票する
1 に答える
2281 参照

parsing - インデックスを正しくロードしていない assimp

シンプルな 3D モデル cube.3ds を読み込もうとしていますが、次のエラーが発生します: ベクトルのインデックスを読み取ると、ベクトルに [0, 1, 2, 3, ...] が含まれています。正しくありません。私はほとんど同じトピックを見つけました: Assimp and D3D model loading: Mesh not being displayed in D3Dですが、答えが見つかりません。メッシュからインデックスをロードするためのアルゴリズムを詳細に説明できる人はいますか? どうもありがとう!