1

それが問題です。私は現在OpenGLのアイスペースにいます。今度は、すべてのウィンドウの領域をカバーする黒い長方形を作成したいと思います。これを行うために正確にX、Y、Zの位置を決定するにはどうすればよいですか?

更新 または、Z値がある場合にウィンドウのX、Y(左上)を決定する方法を教えてもらえますか?

4

1 に答える 1

4

カメラにぴったり合う長方形を計算して、そこから移動することができます。そのためには、射影行列を考慮して逆行列を計算する必要があります。

ただし、もっと簡単な方法があります。カメラを一時的に変更するだけで、長方形の描き方を正確に知ることができます。十分に単純なカメラは、単純な制限(-1から1)を持つデフォルトの直交カメラです。以下はそれを行います:

glMatrixMode(GL_PROJECTION);
glPushMatrix();
glLoadIdentity();

glMatrixMode(GL_MODELVIEW);
glPushMatrix();
glLoadIdendity();

glBegin(GL_QUAD);
glVertex2f(-1.f, -1.f);
glVertex2f(1.f, -1.f);
glVertex2f(1.f, 1.f);
glVertex2f(-1.f, 1.f);
glEnd();

glPopMatrix();
glMatrixMode(GL_PROJECTION);
glPopMatrix();
glMatrixMode(GL_MODELVIEW);
于 2012-12-03T18:03:36.437 に答える