Commit 397be19f authored by Sam Lantinga's avatar Sam Lantinga

Starting on the OpenGL renderer...

--HG--
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%401963
parent cfe0a803
This diff is collapsed.
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2006 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library 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
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
#include "SDL_config.h"
/* OpenGL renderer implementation */
extern SDL_RenderDriver GL_RenderDriver;
/* vi: set ts=4 sw=4 expandtab: */
This diff is collapsed.
......@@ -23,6 +23,6 @@
/* SDL surface based renderer implementation */
extern SDL_RenderDriver SDL_SW_RenderDriver;
extern SDL_RenderDriver SW_RenderDriver;
/* vi: set ts=4 sw=4 expandtab: */
......@@ -27,6 +27,7 @@
#include "SDL_sysvideo.h"
#include "SDL_blit.h"
#include "SDL_pixels_c.h"
#include "SDL_renderer_gl.h"
#include "SDL_renderer_sw.h"
#include "../events/SDL_sysevents.h"
#include "../events/SDL_events_c.h"
......@@ -279,7 +280,10 @@ SDL_VideoInit(const char *driver_name, Uint32 flags)
/* The software renderer is always available */
for (i = 0; i < _this->num_displays; ++i) {
if (_this->displays[i].num_render_drivers > 0) {
SDL_AddRenderDriver(i, &SDL_SW_RenderDriver);
#if SDL_VIDEO_OPENGL
SDL_AddRenderDriver(i, &GL_RenderDriver);
#endif
SDL_AddRenderDriver(i, &SW_RenderDriver);
}
}
......
......@@ -62,9 +62,13 @@ SDL_RenderDriver D3D_RenderDriver = {
"d3d",
(SDL_Renderer_SingleBuffer | SDL_Renderer_PresentCopy |
SDL_Renderer_PresentFlip2 | SDL_Renderer_PresentFlip3 |
SDL_Renderer_PresentDiscard | SDL_Renderer_PresentVSync),
(SDL_TextureBlendMode_None | SDL_TextureBlendMode_Mask | SDL_TextureBlendMode_Blend), /* FIXME */
(SDL_TextureScaleMode_None | SDL_TextureScaleMode_Fast), /* FIXME */
SDL_Renderer_PresentDiscard | SDL_Renderer_PresentVSync |
SDL_Renderer_Accelerated),
(SDL_TextureBlendMode_None | SDL_TextureBlendMode_Mask |
SDL_TextureBlendMode_Blend | SDL_TextureBlendMode_Add |
SDL_TextureBlendMode_Mod),
(SDL_TextureScaleMode_None | SDL_TextureScaleMode_Fast |
SDL_TextureScaleMode_Best),
12,
{
SDL_PixelFormat_Index8,
......@@ -353,6 +357,8 @@ D3D_CreateRenderer(SDL_Window * window, Uint32 flags)
renderer->info.flags |= SDL_Renderer_PresentVSync;
}
/* FIXME: Query maximum texture size */
/* Set up parameters for rendering */
IDirect3DDevice9_SetVertexShader(data->device, NULL);
IDirect3DDevice9_SetFVF(data->device, D3DFVF_XYZRHW | D3DFVF_TEX1);
......
......@@ -67,7 +67,7 @@ SDL_RenderDriver GDI_RenderDriver = {
"gdi",
(SDL_Renderer_SingleBuffer | SDL_Renderer_PresentCopy |
SDL_Renderer_PresentFlip2 | SDL_Renderer_PresentFlip3 |
SDL_Renderer_PresentDiscard),
SDL_Renderer_PresentDiscard | SDL_Renderer_Accelerated),
(SDL_TextureBlendMode_None | SDL_TextureBlendMode_Mask |
SDL_TextureBlendMode_Blend),
(SDL_TextureScaleMode_None | SDL_TextureScaleMode_Fast),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment