Sign in to follow this  
sandorlev

SDL 2.0 or OpenGL?

Recommended Posts

Rendering a 40x40 tilemap that has ~10 layers in SDL 1.2 is pretty darn slow, I started looking into faster options. Now my question is, is SDL 2.0 a lot faster than 1.2? I'm trying to avoid using OpenGL as best as I can, but if it's the only efficient way to render quickly, I'll probably have to use it. Any opinions on SDL 2.0 concerning speed?

Share this post


Link to post
Share on other sites

As far as I know, SDL 2.0's renderer functions actually make use of OpenGL if available (and fall back to software rendering if for some reason it can't do GPU acceleration), so yes, it should be much faster. Just beware that the wiki is extremely outdated, so for now you'll have to look at the headers (yuck - check "SDL2/SDL_render.h").

 

Here's a quick list of the functions in it (since getting a list of every function from the header is near impossible), though it isn't even remotely anywhere complete, and in fact doesn't include the initialization functions (luckily that part is documented in the wiki):

 

- SDL_RenderSetLogicalSize
- SDL_RenderClear
- SDL_RenderDrawPoint
- SDL_RenderDrawPoints
- SDL_RenderDrawLine
- SDL_RenderDrawLines
- SDL_RenderDrawRect
- SDL_RenderDrawRects
- SDL_RenderFillRect
- SDL_RenderFillRects
- SDL_RenderCopy
- SDL_RenderCopyEx
- SDL_SetRenderDrawColor
- SDL_SetRenderDrawBlendMode
- SDL_SetTextureColorMod
- SDL_SetTextureAlphaMod
- SDL_SetTextureBlendMode
- SDL_RenderSetViewport
- SDL_RenderSetScale

 

Note that I think a Doxygen file should be generated, I don't have it installed so that's probably why I don't have it... If you get that then it should be easier to look through it (also note that you'll be using SDL_Texture with the renderer functions instead of SDL_Surface).

 

PS: the two copy functions are the ones used to render textures (e.g. bitmaps) >_>

Edited by Sik_the_hedgehog

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this