2010-12-01 15 views
0

私はOpenGL ES 2をiphoneで使用していますが、今は自分のテクスチャを自分のオブジェクトで処理しようとしています。私は.objファイルを使用しており、その中のすべてのデータは正しいです。私はすべてのデータを取得するためにパーサを自分で作成しました。私はCの静的配列に変換しました。今は材料のプロパティを破棄し、手動で.mtlファイルからイメージパスを取得するだけです。OpenGL ES 2のテクスチャが正しく動作しない

私は336個の三角形を持つオブジェクトを持っています。このオブジェクトは、付随する頂点、頂点面、テクスチャ座標(u、v)とともに観察するのが些細なものです。

http://img530.imageshack.us/img530/9637/pic1io.png

http://img404.imageshack.us/img404/7358/pic2pg.png

しかし、それは(オブジェクトビューアで、それを表示する)次のようになります。シェーダにすべてのデータを渡す

、結果の画像はこれです。材料特性を無視してください。

http://img16.imageshack.us/img16/1401/pic3cq.png

テクスチャとしてこのイメージを使用して:私は考えている

http://img217.imageshack.us/img217/1300/shirtdiffuse.png

それが顔をテクスチャ座標としなければならないのでしょうか?これは私の.objファイルで定義されており、私はそれらをまったく使用していません。本やチュートリアルでは、これについて何も見つかりませんでした。

よろしくお願いします。Niclas

答えて

0

テクスチャを垂直に反転しようとしましたか?テクスチャが読み込まれるとメモリにレイアウトされるので、テクスチャで意図されているように垂直線が反対方向になります。

+0

はい私は:)あなたが見ているイメージは、実際には垂直に反転しています。あなたは、テクスチャの座標面がどのようなものであるか知っていますか? – tyuip

+0

モデルを回転すると、@Adlはテクスチャを「移動」しますか?私はシェイダーの専門家ではありませんが、それが発生した場合、テクスチャーシェイダーにバグがあると思います。 – epatel

+0

問題は、私が使用する属性によって異なるインデックスがあることです。 Vertices、Normals、TextureCoordinatesはすべて異なるインデックスを持ちます。私は、インデックスを使ってTextureCoordsを描画することになっているときに、対応するインデックスでVerticesを描画する方法を知らない。 – tyuip

関連する問題