Привет, у меня есть 4 видовых экрана и одно большое, между которыми я могу переключаться, теперь у меня есть объект, а именно камера и целевое положение камер, которое я показываю с рендерингом сферы в этих местах.Я хочу показать положение камер в 3 из моих окон просмотра, но не в последнем, который является дисплеем камеры, но в данный момент у меня есть сценарий «все или ничего».
void display(int what)
{
if(what==5){
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
camControll();}
if(what==1){
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(75,15,-5,0,5,-5,0,1,0);}
if(what==2){
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0,110,0,0,0,0,1,0,0);}
if(what==3){
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(45.0f, float(320) / float(240), 0.1f, 100.0f);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
camControll();}
if(what==4){
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(185,75,25,0,28,0,0,1,0);}
//glMatrixMode(GL_MODELVIEW);
//glLoadIdentity();
////gluLookAt(cos(shared.time) * shared.distance, 10, sin(shared.time) * shared.distance, 0, 0, 0, 0, 1, 0);
////ca.orbitYaw(0.05);
//ca.lookAt();
glClearColor(0, 0, 0, 1);
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
drawScene(); // scene that all views should render
drawCamera(); / camera position that only certain views should render
glutSwapBuffers();
}
Я думаю, что, возможно, ямог бы сделать одну зачистку для первых 3 видовых экранов, а затем вызвать glutSwapBuffers (), а затем сделать другой видовой экран без положения камеры, но некоторое заикание, которое я ранее имел, было прослежено до вызова glutSwapBuffers () для каждого видового экрана, поэтому я предполагаю, что должен быть другойтолько, что я не могу понять это.