2

私は c++/cinder を初めて使用し、3ds .obj ファイルを cinder にインポートして単純なテクスチャを適用しようとしています。これを行う方法に関する簡単なチュートリアルが本当に見つかりません。freeGLUT とは少し異なるようです。

  gl::Texture sTexture;
  sTexture = gl::Texture(loadImage(loadAsset("texture.jpg")));

  cinder::TriMesh mySphere;
  ObjLoader loader( loadFile( "mySphere/sphere.obj" ) );
  loader.load( &mySphere );
  gl::draw( mySphere );

mySphere にはテクスチャ座標がベクトルとして含まれており、テクスチャをオブジェクトにバインドする必要があることは理解していますが、その方法の明確な例が見つかりませんか? 私が試したことはすべて、白い円が残っています。

ありがとう。

4

1 に答える 1

1

私の解決策を見つけました。私は sTexture.bind(); を使用していました。しかし、sTexture.enableAndBind(); が必要です。

 gl::Texture sTexture;
 sTexture = gl::Texture(loadImage(loadAsset("texture.jpg")));
 sTexture.enableAndBind();
 cinder::TriMesh mySphere;
 ObjLoader loader( loadFile( "mySphere/sphere.obj" ) );
 loader.load( &mySphere );
 gl::draw( mySphere );
 sTexture.unbind();
于 2014-09-30T15:00:55.477 に答える