質問
すでに作成されたオブジェクトを使用して、openglでシーンを組み立てようとしています。問題は、オブジェクトが.max形式であり、外部テクスチャがないことです。オブジェクトのテクスチャを変更せずに、openglでオブジェクトをインポートするにはどうすればよいですか。それらを3dsにエクスポートし、3dsファイルローダーを使用することを考えています。推奨されますか?もちろん、3dsファイル自体でのみ動作し、外部テクスチャファイルでは動作しません。
3ds maxでは、すでにファイルをobjにエクスポートできます。外部テクスチャファイルを持たないオブジェクトがありますが、3dsファイルとして既に完全に色付けされています。 openglでインポートし、トランク、リーフに同じ色を使用する方法はありますか?
解決
lib3ds をチェックアウトすると、3dsバイナリ形式が解析され、アクセスできるようになります。すべてのオブジェクトプロパティ。オートデスクにはこれを行うための独自のツールキットもあると思います。
他のヒント
もう1つのオプションは、 Assimp です。これは、CまたはC ++のオープンソースアセットインポートライブラリで、 3DSアセットをOpenGLプログラムに取り込むための非常に良い方法のようです。骨格アニメーションに必要な場合に特に役立ち、埋め込みテクスチャをサポートします。この時点で、この答えは、この質問に出くわした他の人よりもあなたにとって少ないかもしれません。
正しく覚えていれば、3dsファイルには頂点法線が保存されていないため、おそらく自分で計算する必要があります。そうしないと、面自体の法線が使用されるため、非常にugいものになります。