Cinderの座標系とテクスチャ

Author: kaminaly

あら、どうも。
kaminalyです。

OpenGLの場合、デフォルトの座標系は中心を原点としてY軸の正方向は上ですが、
Cinderの場合、何もしないと、setup()とdraw()の間で左上原点でY軸の正方向は下の座標系に変換されています。(Flashと同じ座標系)

CinderでCameraを設定すると座標系はOpenGLのものに引き戻されます。

Cinderのgl::Textureはデフォルトでは何もしていない時のCinderの座標系用に縦が反転した状態になっているっぽいので、

gl::pushMatrices();
gl::setMatricesWindow(getWindowSize());
gl::draw( mTexture );
gl::popMatrices();

とかしてあげると良さそうです。
※setMatricesWindowはprojectionのmatrixも変換するのでgl::pushModelView()ではなくgl::pushMatrices()を使う。

gl::Textureのプロパティや、保持しているFormatあたりで
ここら辺を調節するパラメータがあるかもしれないけど、まだ未調査です。