Mercurial > projects > mde
view mde/gl/draw.d @ 55:f3d8c0441408
Implemented gl.texture (without testing) & fixed log options adjusted previously.
Implemented gl.texture module to load textures from file (untested).
Fixed log level/option setting in Init.
author | Diggory Hardy <diggory.hardy@gmail.com> |
---|---|
date | Tue, 10 Jun 2008 17:35:13 +0100 |
parents | bca7e2342d77 |
children | 7cab2af4ba21 |
line wrap: on
line source
/* LICENSE BLOCK Part of mde: a Modular D game-oriented Engine Copyright © 2007-2008 Diggory Hardy This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ /** The OpenGL draw loop. * * Everything here is really intended as makeshift code to enable GUI development. */ module mde.gl.draw; import mde.gui.Gui; import derelict.sdl.sdl; import derelict.opengl.gl; import tango.time.Time; // TimeSpan (type only; unused) import tango.util.log.Log : Log, Logger; import mde.resource.font; private Logger logger; static this () { logger = Log.getLogger ("mde.gl.draw"); } //BEGIN Drawing loop // Temporary draw function void draw (TimeSpan) { glClear(GL_COLOR_BUFFER_BIT); gui.draw (); debug FontStyle.drawTexture; GLenum err = glGetError(); while (err != GL_NO_ERROR) { char[128] tmp; logger.error (logger.format (tmp, "GL error: {}", err)); err = glGetError(); } glFinish(); // Use Finish rather than Flush to make sure gl is ready to swap buffers SDL_GL_SwapBuffers(); } //END Drawing loop