# SDL 1.3 Roadmap

**URL:** <https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091>\
**Category:** SDL Development\
**Created:** [February 1, 2010, 7:21am UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091 "2010-02-01T07:21:20Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![slouken](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/s/ec9cab/32.png) [@slouken](https://discourse.libsdl.org/u/slouken)\
**Post date:** [February 1, 2010, 7:21am UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/1 "2010-02-01T07:21:20Z")

</div>

I put together a roadmap of the work left to do on SDL 1.3, which I’ll  
keep up to date as things are done:  
[http://wiki.libsdl.org/moin.cgi/Roadmap](http://wiki.libsdl.org/moin.cgi/Roadmap)

I’d love your feedback on this list.

If you’d like to help out with any of the items, even if they’re  
already assigned, please let me know and I’ll be happy to coordinate  
with you!

See ya!–  
-Sam Lantinga, Founder and President, Galaxy Gameworks LLC

---

<div class="post-metadata">

**Author:** ![Sockerdrickan](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/s/4af34b/32.png) [@Sockerdrickan](https://discourse.libsdl.org/u/Sockerdrickan)\
**Post date:** [February 1, 2010, 9:07pm UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/2 "2010-02-01T21:07:26Z")

</div>

“Sam: Reimplement mouse grab support”

Would this make mouse warping work?------------------------  
[www.amyto.com](http://www.amyto.com)

---

<div class="post-metadata">

**Author:** ![Vittorio\_Giovara](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/v/57b2e6/32.png) [@Vittorio\_Giovara](https://discourse.libsdl.org/u/Vittorio_Giovara)\
**Post date:** [February 2, 2010, 11:39pm UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/3 "2010-02-02T23:39:54Z")

</div>

hi Sam,  
good job for setting up the roadmap.  
One addition i would make is to expand the iphone and iphone-like devices  
support

There could be a section which includes

- support for landscape mode
- support for opengl es 2.0 contex
- support for ipad
- important aspects missing (like audio in)

ipad support _should_ be trivial as it’s the same os with a bigger  
resolution…  
the rest, expecially landscape mode (implemented in a proper way, with  
autorotation and or user setup) seem more complex

Cheers  
Vittorio

Samuel Goldwyn[http://www.brainyquote.com/quotes/authors/s/samuel\_goldwyn.html](http://www.brainyquote.com/quotes/authors/s/samuel_goldwyn.html)

- "I don’t think anyone should write their autobiography until after  
they’re dead."On Mon, Feb 1, 2010 at 8:21 AM, Sam Lantinga wrote:

> I put together a roadmap of the work left to do on SDL 1.3, which I’ll  
> keep up to date as things are done:  
> [http://wiki.libsdl.org/moin.cgi/Roadmap](http://wiki.libsdl.org/moin.cgi/Roadmap)
> 
> I’d love your feedback on this list.
> 
> If you’d like to help out with any of the items, even if they’re  
> already assigned, please let me know and I’ll be happy to coordinate  
> with you!
> 
> ## See ya!
> 
> ```
> -Sam Lantinga, Founder and President, Galaxy Gameworks LLC
> 
> ```
> 
> * * *
> 
> SDL mailing list  
> SDL at [lists.libsdl.org](http://lists.libsdl.org)  
> [http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org](http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org)

---

<div class="post-metadata">

**Author:** ![Mason\_Wheeler](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/m/b9bd4f/32.png) [@Mason\_Wheeler](https://discourse.libsdl.org/u/Mason_Wheeler)\
**Post date:** [February 3, 2010, 1:35am UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/4 "2010-02-03T01:35:24Z")

</div>

I just looked it over, and I was very disappointed not to see anything  
about render targets. This is critical functionality that’s absolutely  
needed for SDL 1.3.\>----- Original Message ----

> From: Sam Lantinga   
> Subject: [SDL] SDL 1.3 Roadmap
> 
> I put together a roadmap of the work left to do on SDL 1.3, which I’ll  
> keep up to date as things are done:  
> [http://wiki.libsdl.org/moin.cgi/Roadmap](http://wiki.libsdl.org/moin.cgi/Roadmap)
> 
> I’d love your feedback on this list.
> 
> If you’d like to help out with any of the items, even if they’re  
> already assigned, please let me know and I’ll be happy to coordinate  
> with you!

---

<div class="post-metadata">

**Author:** ![Nathaniel\_J\_Fries](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/n/ccd318/32.png) [@Nathaniel\_J\_Fries](https://discourse.libsdl.org/u/Nathaniel_J_Fries)\
**Post date:** [February 3, 2010, 2:01am UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/5 "2010-02-03T02:01:42Z")

</div>

Mason Wheeler wrote:

> I just looked it over, and I was very disappointed not to see anything  
> about render targets. This is critical functionality that’s absolutely  
> needed for SDL 1.3.

I cannot agree enough.

---

<div class="post-metadata">

**Author:** ![Nathaniel\_J\_Fries](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/n/ccd318/32.png) [@Nathaniel\_J\_Fries](https://discourse.libsdl.org/u/Nathaniel_J_Fries)\
**Post date:** [February 3, 2010, 3:03am UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/6 "2010-02-03T03:03:33Z")

</div>

ArrogantProgrammer wrote:

> If you want a 3D engine use irrlicht or ogre3d. I can’t see how SDL will ever be able to compete in that realm and there is no point in doing so. Where it can compete is in offering a basic setup that is cross platform.
> 
> INPUT, video setup, windowing, things like this. The other 3D engines have been working exclusively on 3D for years, to come into the game now would take years to hit feature parity.

I have a 2d project that would benefit from this. Blitting to texture is easily accomplished in directdraw and opengl, and I’m sure it’s simple enough in direct3d as well.

---

<div class="post-metadata">

**Author:** ![slouken](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/s/ec9cab/32.png) [@slouken](https://discourse.libsdl.org/u/slouken)\
**Post date:** [February 3, 2010, 3:42am UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/7 "2010-02-03T03:42:33Z")

</div>

Sure. If people are interested in contributing in this area, I’m more  
than happy to coordinate it!On Tue, Feb 2, 2010 at 3:39 PM, Vittorio G. \<vitto.giova at yahoo.it\> wrote:

> hi Sam,  
> good job for setting up the roadmap.  
> One addition i would make is to expand the iphone and iphone-like devices  
> support
> 
> There could be a section which includes
> 
> - support for landscape mode
> - support for opengl es 2.0 contex
> - support for ipad
> - important aspects missing (like audio in)
> 
> ipad support _should_ be trivial as it’s the same os with a bigger  
> resolution…  
> the rest, expecially landscape mode (implemented in a proper way, with  
> autorotation and or user setup) seem more complex
> 
> Cheers  
> Vittorio
> 
> Samuel Goldwyn ?- “I don’t think anyone should write their autobiography  
> until after they’re dead.”
> 
> On Mon, Feb 1, 2010 at 8:21 AM, Sam Lantinga \<@slouken\> wrote:
> 
> > I put together a roadmap of the work left to do on SDL 1.3, which I’ll  
> > keep up to date as things are done:  
> > [http://wiki.libsdl.org/moin.cgi/Roadmap](http://wiki.libsdl.org/moin.cgi/Roadmap)
> > 
> > I’d love your feedback on this list.
> > 
> > If you’d like to help out with any of the items, even if they’re  
> > already assigned, please let me know and I’ll be happy to coordinate  
> > with you!
> > 
> > ## See ya!
> > 
> > ? ? ? ?-Sam Lantinga, Founder and President, Galaxy Gameworks LLC
> > 
> > * * *
> > 
> > SDL mailing list  
> > SDL at [lists.libsdl.org](http://lists.libsdl.org)  
> > [http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org](http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org)
> 
> * * *
> 
> SDL mailing list  
> SDL at [lists.libsdl.org](http://lists.libsdl.org)  
> [http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org](http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org)

–  
-Sam Lantinga, Founder and President, Galaxy Gameworks LLC

---

<div class="post-metadata">

**Author:** ![slouken](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/s/ec9cab/32.png) [@slouken](https://discourse.libsdl.org/u/slouken)\
**Post date:** [February 3, 2010, 3:51am UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/8 "2010-02-03T03:51:14Z")

</div>

I looked back over the discussion about this, and I agree. I did have  
render to texture implemented at one point, but I removed it due to  
the complexity and changing FBO standards, and I can’t find it now.

I hereby reopen the discussion! :)On Tue, Feb 2, 2010 at 5:35 PM, Mason Wheeler wrote:

> I just looked it over, and I was very disappointed not to see anything  
> about render targets. ?This is critical functionality that’s absolutely  
> needed for SDL 1.3.
> 
> > ----- Original Message ----  
> > From: Sam Lantinga \<@slouken\>  
> > Subject: [SDL] SDL 1.3 Roadmap
> > 
> > I put together a roadmap of the work left to do on SDL 1.3, which I’ll  
> > keep up to date as things are done:  
> > [http://wiki.libsdl.org/moin.cgi/Roadmap](http://wiki.libsdl.org/moin.cgi/Roadmap)
> > 
> > I’d love your feedback on this list.
> > 
> > If you’d like to help out with any of the items, even if they’re  
> > already assigned, please let me know and I’ll be happy to coordinate  
> > with you!
> 
> * * *
> 
> SDL mailing list  
> SDL at [lists.libsdl.org](http://lists.libsdl.org)  
> [http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org](http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org)

–  
-Sam Lantinga, Founder and President, Galaxy Gameworks LLC

---

<div class="post-metadata">

**Author:** ![Forest\_Hale](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/f/439d5e/32.png) [@Forest\_Hale](https://discourse.libsdl.org/u/Forest_Hale)\
**Post date:** [February 3, 2010, 3:55am UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/9 "2010-02-03T03:55:00Z")

</div>

FBO is lots of fun when it works, just difficult to get it to cooperate on all drivers 🙂

I currently it use it for optional features in my darkplaces engine, but the idea of relying upon it scares me until someone makes a thorough map of what formats work with what cards and how fast…  
That said, it would be GREAT if someone did make such a table of compatibility :)On 02/02/2010 07:51 PM, Sam Lantinga wrote:

> I looked back over the discussion about this, and I agree. I did have  
> render to texture implemented at one point, but I removed it due to  
> the complexity and changing FBO standards, and I can’t find it now.
> 
> I hereby reopen the discussion! 🙂
> 
> On Tue, Feb 2, 2010 at 5:35 PM, Mason Wheeler wrote:
> 
> > I just looked it over, and I was very disappointed not to see anything  
> > about render targets. This is critical functionality that’s absolutely  
> > needed for SDL 1.3.
> > 
> > > ----- Original Message ----  
> > > From: Sam Lantinga   
> > > Subject: [SDL] SDL 1.3 Roadmap
> > > 
> > > I put together a roadmap of the work left to do on SDL 1.3, which I’ll  
> > > keep up to date as things are done:  
> > > [http://wiki.libsdl.org/moin.cgi/Roadmap](http://wiki.libsdl.org/moin.cgi/Roadmap)
> > > 
> > > I’d love your feedback on this list.
> > > 
> > > If you’d like to help out with any of the items, even if they’re  
> > > already assigned, please let me know and I’ll be happy to coordinate  
> > > with you!
> > 
> > * * *
> > 
> > SDL mailing list  
> > SDL at [lists.libsdl.org](http://lists.libsdl.org)  
> > [http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org](http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org)

–  
LordHavoc  
Author of DarkPlaces Quake1 engine - [LadyHavoc's DarkPlaces Quake Modification](http://icculus.org/twilight/darkplaces)  
Co-designer of Nexuiz - [Nexuiz Classic – Alientrap](http://alientrap.org/nexuiz)  
“War does not prove who is right, it proves who is left.” - Unknown  
“Any sufficiently advanced technology is indistinguishable from a rigged demo.” - James Klass  
“A game is a series of interesting choices.” - Sid Meier

---

<div class="post-metadata">

**Author:** ![Rene\_Dudfield](https://discourse.libsdl.org/user_avatar/discourse.libsdl.org/rene_dudfield/32/3235_2.png) [@Rene\_Dudfield](https://discourse.libsdl.org/u/Rene_Dudfield)\
**Post date:** [February 3, 2010, 10:37am UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/10 "2010-02-03T10:37:56Z")

</div>

AWESOME!

I was just going to email about the render targets and read that  
people had already asked for them… Definitely +1 for being able to  
blit from texture to texture… or I guess render target is the better  
term. Basically being more like current surfaces. So it doesn’t  
matter too much if it’s a texture or a memory surface. I think it  
should be possible to get fairly cross platform fast behaviour, but  
maybe not for all platforms. Would probably take a number of  
extensions, and work arounds to work reliably of course.

cu,On Wed, Feb 3, 2010 at 11:55 AM, Forest Hale wrote:

> FBO is lots of fun when it works, just difficult to get it to cooperate on all drivers 🙂
> 
> I currently it use it for optional features in my darkplaces engine, but the idea of relying upon it scares me until someone makes a thorough map of what formats work with what cards and how fast…  
> That said, it would be GREAT if someone did make such a table of compatibility 🙂

---

<div class="post-metadata">

**Author:** ![Nathaniel\_J\_Fries](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/n/ccd318/32.png) [@Nathaniel\_J\_Fries](https://discourse.libsdl.org/u/Nathaniel_J_Fries)\
**Post date:** [February 3, 2010, 1:59pm UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/11 "2010-02-03T13:59:00Z")

</div>

ArrogantProgrammer wrote:

> nfries88 wrote:
> 
> > ArrogantProgrammer wrote:
> > 
> > > If you want a 3D engine use irrlicht or ogre3d. I can’t see how SDL will ever be able to compete in that realm and there is no point in doing so. Where it can compete is in offering a basic setup that is cross platform.
> > > 
> > > INPUT, video setup, windowing, things like this. The other 3D engines have been working exclusively on 3D for years, to come into the game now would take years to hit feature parity.
> > 
> > I have a 2d project that would benefit from this. Blitting to texture is easily accomplished in directdraw and opengl, and I’m sure it’s simple enough in direct3d as well.  
> > It’s a tile-based game with a resizable game area (based on dimensions of the window its in), so rather than scale each individual sprite’s texture it’d be way better to blit to a single texture at normal size and scale the finished product.
> > 
> > This will also make it easier to implement light mapping, which is on our roadmap, since we won’t need to worry about scaling that.
> 
> Ok I see, you basically just want a simple way to specify the target of a blit/other operation, ie screen or another surface? This wouldn’t take very long to add at all and I guess it should be in there. Though there are some restrictions in 3D world, like size of textures that make it rather tricky.
> 
> Usually in 3D world when you want render targets it usually means you want to do some advanced shading, and it sounds like that is what you are going to do eventually. Are you doing dynamic light mapping (similar to shadow mapping but reverse)?

It’ll be nothing too advanced, as it’s a 2d tile-based game (we don’t even use a heightmap, but we do have objects that are supposed to create light and our caves and stuff are supposed to be dark and the player shouldn’t be able to see anything outside his light radius). It’s just easier to scale everything at once than everything individually (it’ll probably make for a smoother overall appearance too) and the light/shadow mapping code will be simplified by not accounting for scaling. This is why I want rendering targets.

---

<div class="post-metadata">

**Author:** ![Bob\_Pendleton](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/b/9de053/32.png) [@Bob\_Pendleton](https://discourse.libsdl.org/u/Bob_Pendleton)\
**Post date:** [February 3, 2010, 2:39pm UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/12 "2010-02-03T14:39:28Z")

</div>

> I looked back over the discussion about this, and I agree. ?I did have  
> render to texture implemented at one point, but I removed it due to  
> the complexity and changing FBO standards, and I can’t find it now.
> 
> I hereby reopen the discussion! 🙂

Are we talking about adding it to the SDL 2D graphics API or are we  
talking about making sure that the version of the OpenGL API that SDL  
provides includes at least the full OpenGL 3.1 API so we have access  
to texture, render, and frame buffer objects? Seems like you have to  
have a video card and graphics drivers that can support OGL 3.1 before  
you can safely add anything to the 2D API.

The good news is that cards and drivers with that level of support are  
available and pretty cheap. The bad news is that there are still a lot  
of older cards and machines out there. Even more bad news I just  
bought a nvidia 240 card on my Ubuntu 9.10 machine and I had to get  
the 195.30 drivers from ppa to get full support for it. The current  
Ubuntu 9.10 drivers are still sitting at 185.18. BTW, they worked with  
the new card, but misidentified it and did not give really great  
performance. Going back to good news, that tells me that we are at a  
just the right point in time to be adding support for these features  
in SDL.

Bob PendletonOn Tue, Feb 2, 2010 at 9:51 PM, Sam Lantinga wrote:

> On Tue, Feb 2, 2010 at 5:35 PM, Mason Wheeler wrote:
> 
> > I just looked it over, and I was very disappointed not to see anything  
> > about render targets. ?This is critical functionality that’s absolutely  
> > needed for SDL 1.3.
> > 
> > > ----- Original Message ----  
> > > From: Sam Lantinga   
> > > Subject: [SDL] SDL 1.3 Roadmap
> > > 
> > > I put together a roadmap of the work left to do on SDL 1.3, which I’ll  
> > > keep up to date as things are done:  
> > > [http://wiki.libsdl.org/moin.cgi/Roadmap](http://wiki.libsdl.org/moin.cgi/Roadmap)
> > > 
> > > I’d love your feedback on this list.
> > > 
> > > If you’d like to help out with any of the items, even if they’re  
> > > already assigned, please let me know and I’ll be happy to coordinate  
> > > with you!
> > 
> > * * *
> > 
> > SDL mailing list  
> > SDL at [lists.libsdl.org](http://lists.libsdl.org)  
> > [http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org](http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org)
> 
> –  
> ? ? ? ?-Sam Lantinga, Founder and President, Galaxy Gameworks LLC
> 
> * * *
> 
> SDL mailing list  
> SDL at [lists.libsdl.org](http://lists.libsdl.org)  
> [http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org](http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org)

–  
±----------------------------------------------------------

- Bob Pendleton: writer and programmer
- email: Bob at [Pendleton.com](http://Pendleton.com)
- web: [www.TheGrumpyProgrammer.com](http://www.TheGrumpyProgrammer.com)

---

<div class="post-metadata">

**Author:** ![Gaetan\_de\_Menten](https://discourse.libsdl.org/user_avatar/discourse.libsdl.org/gaetan_de_menten/32/136_2.png) [@Gaetan\_de\_Menten](https://discourse.libsdl.org/u/Gaetan_de_Menten)\
**Post date:** [February 3, 2010, 3:00pm UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/13 "2010-02-03T15:00:34Z")

</div>

Thanks for sharing, I have been wondering about the “big picture” of  
1.3 development for a while…

But… Is it just me or does this list (only counting the “required”  
stuff of course) sounds a bit too ambitious and will take ages to  
finish? Wouldn’t it be better to polish the strict minimum features,  
document them and make a first release, and only then develop the  
remaining functionality? That way you would probably have more  
manpower to develop those remaining functionalities (a released  
product is more interesting than a developing one)… As far as I am  
concerned, all features which are not done yet and will not need to  
change the API of any existing subsystem should be postponed, no  
matter how exciting and cool they seem (unless it is developed by  
someone who wouldn’t develop anything else anyway)… Just my 0.02$,  
for whatever it’s worth.On Mon, Feb 1, 2010 at 08:21, Sam Lantinga wrote:

> I put together a roadmap of the work left to do on SDL 1.3, which I’ll  
> keep up to date as things are done:  
> [http://wiki.libsdl.org/moin.cgi/Roadmap](http://wiki.libsdl.org/moin.cgi/Roadmap)
> 
> I’d love your feedback on this list.
> 
> If you’d like to help out with any of the items, even if they’re  
> already assigned, please let me know and I’ll be happy to coordinate  
> with you!

–  
Ga?tan de Menten

---

<div class="post-metadata">

**Author:** ![Mason\_Wheeler](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/m/b9bd4f/32.png) [@Mason\_Wheeler](https://discourse.libsdl.org/u/Mason_Wheeler)\
**Post date:** [February 3, 2010, 4:38pm UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/14 "2010-02-03T16:38:01Z")

</div>

> > I looked back over the discussion about this, and I agree. I did have  
> > render to texture implemented at one point, but I removed it due to  
> > the complexity and changing FBO standards, and I can’t find it now.
> > 
> > I hereby reopen the discussion! 🙂
> 
> Are we talking about adding it to the SDL 2D graphics API or are we  
> talking about making sure that the version of the OpenGL API that SDL  
> provides includes at least the full OpenGL 3.1 API so we have access  
> to texture, render, and frame buffer objects?

Not sure what “we” are talking about, but I’m talking about adding it to  
the SDL 2D graphics API.

> Seems like you have to  
> have a video card and graphics drivers that can support OGL 3.1 before  
> you can safely add anything to the 2D API.

OK, you lost me. I’m no OGL expert, not by a long shot, but I know I  
read stuff about FBOs and APIs to use them before OGL 3 was  
released, much less 3.1.

Plus, render target support would probably have to include at least  
Direct3D as well, and probably the other renderers.

One thing I wonder about. If I understand correctly, SDL 1.3 Textures  
are supposed to be about the same thing as SDL 1.2 Hardware  
Surfaces. In 1.2, you could blit from one hardware surface to another.  
How was that done, and why can’t we do the same thing now?\>----- Original Message ----

> From: Bob Pendleton   
> Subject: Re: [SDL] SDL 1.3 Roadmap  
> On Tue, Feb 2, 2010 at 9:51 PM, Sam Lantinga wrote:

---

<div class="post-metadata">

**Author:** ![hardcoder](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/h/f4b2a3/32.png) [@hardcoder](https://discourse.libsdl.org/u/hardcoder)\
**Post date:** [February 3, 2010, 6:02pm UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/15 "2010-02-03T18:02:11Z")

</div>

Render target is a way powerful thing than just a “blit target”. Blitting one texture to another can be easily achieved using software blending/adding/whatever with pixels read back from video driver. This doesn’t have much sense thou since textures are not mean to be modified often in runtime and if it is only about blending few images together it can be done using surface blits and using resulting surface as texture source. Render target as the name implies a a target for a renderer pipeline. It has associated buffers like depth, stencil etc. Do we really need that for 2D applications?

---

<div class="post-metadata">

**Author:** ![Mason\_Wheeler](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/m/b9bd4f/32.png) [@Mason\_Wheeler](https://discourse.libsdl.org/u/Mason_Wheeler)\
**Post date:** [February 3, 2010, 7:35pm UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/16 "2010-02-03T19:35:59Z")

</div>

Fair enough. And I bet different people will have different ideas and different needs. What I need is an intermediate texture object.

Currently we have SDL\_Window, an object that you can render to, either directly (SDL\_RenderLine, for example) or by copying from a texture. SDL\_Window also has another intrinsic characteristic: whatever you render gets displayed on screen. We also have SDL\_Texture, an object that you can render from onto a SDL\_Window.

We have three intrinsic characteristics here: 1) Object you can render to, 2) object you can render from, and 3) object that displays its contents on-screen. SDL\_Window has #1 and #3, SDL\_Texture has #2. I need an object that has #1 and #2, and not #3. I’ve been referring to that as a render target, for the sake of convenience. If this isn’t the correct term, what is?\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_  
From: [simono@o2.pl](mailto:simono@o2.pl) (hardcoder)  
Subject: Re: [SDL] SDL 1.3 Roadmap

Render target is a way powerful thing than just a “blit target”. Blitting one texture to another can be easily achieved using software blending/adding/whatever with pixels read back from video driver. This doesn’t have much sense thou since textures are not mean to be modified often in runtime and if it is only about blending few images together it can be done using surface blits and using resulting surface as texture source. Render target as the name implies a a target for a renderer pipeline. It has associated buffers like depth, stencil etc. Do we really need that for 2D applications?

---

<div class="post-metadata">

**Author:** ![ArrogantProgrammer](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/a/ebca7d/32.png) [@ArrogantProgrammer](https://discourse.libsdl.org/u/ArrogantProgrammer)\
**Post date:** [February 3, 2010, 2:42am UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/17 "2010-02-03T02:42:08Z")

</div>

If you want a 3D engine use irrlicht or ogre3d. I can’t see how SDL will ever be able to compete in that realm and there is no point in doing so. Where it can compete is in offering a basic setup that is cross platform.

INPUT, video setup, windowing, things like this. The other 3D engines have been working exclusively on 3D for years, to come into the game now would take years to hit feature parity.

---

<div class="post-metadata">

**Author:** ![ArrogantProgrammer](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/a/ebca7d/32.png) [@ArrogantProgrammer](https://discourse.libsdl.org/u/ArrogantProgrammer)\
**Post date:** [February 3, 2010, 12:46am UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/18 "2010-02-03T00:46:19Z")

</div>

Sockerdrickan wrote:

> “Sam: Reimplement mouse grab support”
> 
> Would this make mouse warping work?

See my thread created today, I implemented mouse grab support in SDL 1.3 . It’s a bit hacky though in that it only supports relative movement.

It really needs someone who works on SDL to rework how input is done. We need a cursor event for cursor movements sent by the OS, _AND_ a way to read the raw mouse input for whatever other functions we can use the mouse for (mouse look in a FPS for instance). If I had my way I would have done it already.

---

<div class="post-metadata">

**Author:** ![ArrogantProgrammer](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/a/ebca7d/32.png) [@ArrogantProgrammer](https://discourse.libsdl.org/u/ArrogantProgrammer)\
**Post date:** [February 3, 2010, 3:27am UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/19 "2010-02-03T03:27:29Z")

</div>

nfries88 wrote:

> ArrogantProgrammer wrote:
> 
> > If you want a 3D engine use irrlicht or ogre3d. I can’t see how SDL will ever be able to compete in that realm and there is no point in doing so. Where it can compete is in offering a basic setup that is cross platform.
> > 
> > INPUT, video setup, windowing, things like this. The other 3D engines have been working exclusively on 3D for years, to come into the game now would take years to hit feature parity.
> 
> I have a 2d project that would benefit from this. Blitting to texture is easily accomplished in directdraw and opengl, and I’m sure it’s simple enough in direct3d as well.  
> It’s a tile-based game with a resizable game area (based on dimensions of the window its in), so rather than scale each individual sprite’s texture it’d be way better to blit to a single texture at normal size and scale the finished product.
> 
> This will also make it easier to implement light mapping, which is on our roadmap, since we won’t need to worry about scaling that.

Ok I see, you basically just want a simple way to specify the target of a blit/other operation, ie screen or another surface? This wouldn’t take very long to add at all and I guess it should be in there. Though there are some restrictions in 3D world, like size of textures that make it rather tricky.

Usually in 3D world when you want render targets it usually means you want to do some advanced shading, and it sounds like that is what you are going to do eventually. Are you doing dynamic light mapping (similar to shadow mapping but reverse)?

---

<div class="post-metadata">

**Author:** ![Nathaniel\_J\_Fries](https://discourse.libsdl.org/letter_avatar_proxy/v4/letter/n/ccd318/32.png) [@Nathaniel\_J\_Fries](https://discourse.libsdl.org/u/Nathaniel_J_Fries)\
**Post date:** [February 4, 2010, 1:30am UTC](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091/20 "2010-02-04T01:30:48Z")

</div>

Bob wrote:\> On Tue, Feb 2, 2010 at 9:51 PM, Sam Lantinga wrote:

> Are we talking about adding it to the SDL 2D graphics API or are we  
> talking about making sure that the version of the OpenGL API that SDL  
> provides includes at least the full OpenGL 3.1 API so we have access  
> to texture, render, and frame buffer objects? Seems like you have to  
> have a video card and graphics drivers that can support OGL 3.1 before  
> you can safely add anything to the 2D API.

We are talking about adding it to the 2D API, of course.  
Worst-case scenario, if SDL is unable to retrieve an OpenGL context for the appropriate version, it can be done in software by the method discussed by hardcoder:

> [@hardcoder](#):
>
> Render target is a way powerful thing than just a “blit target”. Blitting one texture to another can be easily achieved using software blending/adding/whatever with pixels read back from video driver. This doesn’t have much sense thou since textures are not meant to be modified often in runtime and if it is only about blending few images together it can be done using surface blits and using resulting surface as texture source.

Is this optimal? No. Will it produce the same quality of results that the proper method would do? Likely not. Will it, for all intensive purposes, do the job? Sure will.

I know support is trivial in DirectDraw, and I’d bet it’s not much more difficult in Direct3D. It’s trivial in software, too. OpenGL is the only real issue here, and only in versions earlier than 3.0 (or, from what you’re saying, 3.1? You’re probably right, but I could swear FBOs were mentioned in 3.0 specification too when I read it).

[Next page](https://discourse.libsdl.org/t/sdl-1-3-roadmap/17091.md?page=2)
