//-------------------------------------------------------------- void testApp::draw(){ ofDrawBitmapString("test", 10, 10); //-- // Highlight background of selected camera glDisable(GL_DEPTH_TEST); ofPushStyle(); ofSetColor(100, 100, 100); ofRect(viewGrid[iMainCamera]); ofPopStyle(); glEnable(GL_DEPTH_TEST); // //-- //-- // Draw all viewports // draw main viewport cameras[iMainCamera]->begin(viewMain); drawScene(iMainCamera); // calculate mouse ray whilst this camera is active updateMouseRay(); cameras[iMainCamera]->end(); // draw side viewports for(int i = 0; i < N_CAMERAS; i++){ cameras[i]->begin(viewGrid[i]); drawScene(i); cameras[i]->end(); } // //-- //-- // Draw annotations (text, gui, etc) ofPushStyle(); glDepthFunc(GL_ALWAYS); // draw on top of everything // draw some labels ofSetColor(255, 255, 255); ofDrawBitmapString("Press keys 1-4 to select a camera for main view", viewMain.x + 20, 30); ofDrawBitmapString("Camera selected: " + ofToString(iMainCamera + 1), viewMain.x + 20, 50); ofDrawBitmapString("Press 'f' to toggle fullscreen", viewMain.x + 20, 70); ofDrawBitmapString("Press 'p' to toggle parents on OrthoCamera's", viewMain.x + 20, 90); ofDrawBitmapString("EasyCam", viewGrid[0].x + 20, viewGrid[0].y + 30); ofDrawBitmapString("Front", viewGrid[1].x + 20, viewGrid[1].y + 30); ofDrawBitmapString("Top", viewGrid[2].x + 20, viewGrid[2].y + 30); ofDrawBitmapString("Left", viewGrid[3].x + 20, viewGrid[3].y + 30); // draw outlines on views ofSetLineWidth(5); ofNoFill(); ofSetColor(255, 255, 255); // for(int i = 0; i < N_CAMERAS; i++){ ofRect(viewGrid[i]); } // ofRect(viewMain); // restore the GL depth function glDepthFunc(GL_LESS); ofPopStyle(); // //-- }
//-------------------------------------------------------------- void testApp::draw(){ ofDrawBitmapString("test", 10, 10); ////////////////////////// // BACKGROUND HIGHLIGHT ////////////////////////// // glDisable(GL_DEPTH_TEST); ofPushStyle(); ofSetColor(100, 100, 100); ofRect(viewGrid[iMainCamera]); ofPopStyle(); glEnable(GL_DEPTH_TEST); // ////////////////////////// ////////////////////////// // DRAW ALL VIEWPORTS ////////////////////////// // //draw main viewport cameras[iMainCamera]->begin(viewMain); drawScene(iMainCamera); //calculate mouse ray whilst this camera is active updateMouseRay(); cameras[iMainCamera]->end(); //draw side viewports for (int i=0; i<N_CAMERAS; i++) { cameras[i]->begin(viewGrid[i]); drawScene(i); cameras[i]->end(); } // ////////////////////////// ////////////////////////// // DRAW STUFF ON TOP ////////////////////////// // ofPushStyle(); glDepthFunc(GL_ALWAYS); // draw on top of everything //draw some labels ofSetColor(255, 255, 255); ofDrawBitmapString("Press keys 1-4 to select a camera for main view", viewMain.x + 20, 30); ofDrawBitmapString("Camera selected: " + ofToString(iMainCamera+1), viewMain.x + 20, 50); ofDrawBitmapString("Press 'f' to toggle fullscreen", viewMain.x + 20, 70); ofDrawBitmapString("Press 'p' to toggle parents on OrthoCamera's", viewMain.x + 20, 90); ofDrawBitmapString("EasyCam", viewGrid[0].x + 20, viewGrid[0].y + 30); ofDrawBitmapString("Front", viewGrid[1].x + 20, viewGrid[1].y + 30); ofDrawBitmapString("Top", viewGrid[2].x + 20, viewGrid[2].y + 30); ofDrawBitmapString("Left", viewGrid[3].x + 20, viewGrid[3].y + 30); //draw outlines on views ofSetLineWidth(5); ofNoFill(); ofSetColor(255, 255, 255); // for (int i=0; i<N_CAMERAS; i++) ofRect(viewGrid[i]); // ofRect(viewMain); glDepthFunc(GL_LESS); ofPopStyle(); // ////////////////////////// }