Commit graph

14 commits

Author SHA1 Message Date
Stefanos A f77a6b11c3 SDL_GL_GetAttribute requires a valid context
Calling SDL_GL_GetAttribute when context construction has failed leads
to erroneous behavior. This call should only be made when a context has
been constructed correctly.
2013-11-08 17:31:54 +01:00
Stefanos A e0ffd9b42d More sane Sdl2Factory.CreateGetCurrentContext() implementation 2013-11-08 15:26:52 +01:00
Stefanos A. c9b905d235 Stronger check for ES support
It is not enough to check for EGL, we also need to check that
ContextProfileFlags.ES is set.
2013-11-08 10:42:48 +01:00
Stefanos A. 62c9793a6e Fixed number of buffers
ContextAttribute.DOUBLEBUFFER is a boolean in SDL (false->single
buffering, true->double buffering). We need to adjust the number of
buffers accordingly (single buffering->1 buffer, double buffering->2
buffers).
2013-11-06 01:04:59 +01:00
Stefanos A. be6c583f4f Implemented Sdl2GraphicsMode.. 2013-10-24 09:32:17 +02:00
Stefanos A 80f0569f9a Implemented new, leaner SDL2 binding.
The new binding is based on the SDL2.0.1 RC1 headers.
2013-10-24 01:45:13 +02:00
Stefanos A 913c4f16e6 Throw extension if context creation fails
This aligns behavior with that of the other platforms.
2013-10-03 17:22:13 +02:00
Stefanos A. 4d7ba20a03 Fixed unsetting current context in SDL2
SDL_GL_MakeCurrent(IntPtr.Zero, IntPtr.Zero) is the correct way to
remove the current OpenGL context from the calling thread. Fixes
threaded rendering on Windows.
2013-10-02 16:26:47 +02:00
Stefanos A 40cfcfaf25 Improved diagnostics in Dispose()
Leaked and disposed resources are now always reported.
2013-10-02 01:14:26 +02:00
Stefanos A. 7460452b26 MakeCurrent(null) should make context non-current
This fixes the crash in the "GameWindow Threading" example.
2013-10-01 22:13:33 +02:00
Stefanos A. b57e58dc47 Implemented Sdl2GLControl
SDL2 still fails with "not an OpenGL window".
2013-09-30 20:47:29 +02:00
Stefanos A. 6245ffe3ef Updated license information 2013-09-27 23:07:23 +02:00
Stefanos A. 5df5447ff9 Add debug message when context creation fails 2013-09-27 18:55:58 +02:00
thefiddler 6d0b5eb49f Implemented SDL2 platform using sdl2-cs
This is a new platform that can be used then sdl2 is installed on the target system. SDL2 is commercially supported by Valve and provides better support for MacOS compared to our current implementation (Cocoa vs Carbon). It will also help us introduce faster support for new platforms. Existing platforms remain as a fallback and will be automatically used if sdl2 is not installed.

Please note that this is still a work in progress. The new mouse and keyboard API is not supported yet. Due to limitations of sdl2, multiple mice/keyboards are also not supported.
2013-09-27 14:41:37 +02:00