void renderScene() { int currentEye = getCurrentEye(); ovrGLTexture & eyeTex = eyeTextures[currentEye]; const ovrSizei & texSize = eyeTex.Texture.Header.TextureSize; ovrSizei & renderSize = eyeTex.Texture.Header.RenderViewport.Size; renderSize.w = texSize.w * texRes; renderSize.h = texSize.h * texRes; glViewport( 0, texSize.h - renderSize.h, renderSize.w, renderSize.h); glEnable(GL_DEPTH_TEST); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); gl::MatrixStack & mv = gl::Stacks::modelview(); mv.withPush([&]{ mv.postMultiply(glm::inverse(player)); GlUtils::renderSkybox(Resource::IMAGES_SKY_CITY_XNEG_PNG); GlUtils::renderFloorGrid(player); gl::Stacks::with_push(mv, [&]{ mv.translate(glm::vec3(0, eyeHeight, 0)).scale(ipd); GlUtils::drawColorCube(true); }); }); }
void renderScene() { int currentEye = getCurrentEye(); glEnable(GL_DEPTH_TEST); glClearColor(0.1f, 0.1f, 0.1f, 1.0f); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); MatrixStack & mv = Stacks::modelview(); MatrixStack & pr = Stacks::projection(); glUseProgram(0); Stacks::withPush([&]{ pr.top() = getOrthographic(); pr.top()[1][1] = -pr.top()[1][1]; //float tr = pr.top()[3].x; //pr.identity().translate(tr); //glDisable(GL_CULL_FACE); // glMatrixMode(GL_PROJECTION); // glLoadMatrixf(glm::value_ptr(pr.top())); // glMatrixMode(GL_MODELVIEW); mv.identity(); // glLoadMatrixf(glm::value_ptr(mv.top())); glm::vec2 cursor = glm::vec2(-0.5, -0.5); static Text::FontPtr font = GlUtils::getFont(Resource::FONTS_INCONSOLATA_MEDIUM_SDFF); font->renderString("World", cursor ); mv.scale(0.5f); cursor = glm::vec2(0); GlUtils::drawQuad(glm::vec2(-QUAD_SIZE), glm::vec2(QUAD_SIZE)); GlUtils::getFont(Resource::FONTS_INCONSOLATA_MEDIUM_SDFF)-> renderString("Hello", cursor , 12, 100); }); GlUtils::drawAngleTicks(); /* mv.withPush([&]{ mv.postMultiply(glm::inverse(player)); GlUtils::renderSkybox(Resource::IMAGES_SKY_CITY_XNEG_PNG); GlUtils::renderFloor(); Stacks::with_push(mv, [&]{ mv.translate(glm::vec3(0, eyeHeight, 0)).scale(ipd); GlUtils::drawColorCube(true); }); }); */ }