3DSMaxから単純なOpenGLビューア/アプリにエクスポートされた.OBJファイルをインポートできるOBJローダーを作成しました。この中心にあったのは、いくつかのチュートリアルの助けを借りて書かれたVector3.hでした。
私が使用したいくつかのモデルではうまく機能しましたが、使用したいモデルには、説明されていない別の何かがあります。頂点には3つではなく4つのポイントがあります。これが私が使用しているラインのサンプルです。
g Box02
usemtl Wood_Bark
s 4
f 1/1/1 2/2/1 3/3/1 4/4/2
f 4/1/3 3/2/3 5/3/3
最初の「f」行には、関心のある4つの頂点があります。私のVertex3.hはX、Y、Zを取ります。私が持っていた他のモデルでは、すべての行は2番目の「f」行のようで、要素は3つだけでした。頂点が範囲外になっているので、どこで発生しているかを確認したところ、この行にあることがわかりました。処理できるデータが多いので、推測しました。これがVertex3.h全体です
そして、これは失敗するコード行です。頂点はVector3です。
tempVertices.push_back ( vertices[--vertex] );
私の質問は、4番目のポイントは何ですか?私のVector3.hファイルのようなものでそれをどのように説明しますか?Vector4.hを作成し、行に3つしかない場合は、4番目の変数を無視する必要があるようです。しかし、私が扱っていることと、それを行うためのヒントについてもっと知りたいです。4番目の要素はアルファか何かですか?これはどのように使用する必要がありますか、それともVector3.hの計算で使用する必要がありますか?