#include "ImageScene.h" #include "deps.h" #include "GLUtil.h" #include "MeshFactory.h" namespace charcoal { namespace builtin { namespace image { void Scene::init() { for (auto iter = m_batches.begin(); iter != m_batches.end(); ++iter) { Batch& batch = *iter; batch.init(); add_prerenderable(&batch); } } void Scene::use() { // TODO: move to glutil glEnable(GL_DEPTH_TEST); glDepthFunc(GL_LESS); } void Scene::unuse() { } void Scene::render() { glutil::clear_screen(); m_shader_program.use(); glutil::uniform_matrix(0, get_camera()->get_world_to_view_matrix()); glutil::uniform_int(4, 0); // The textured batch uses GL_TEXTURE0 for (auto iter = m_batches.begin(); iter != m_batches.end(); ++iter) { iter->render(); } } } } }