Wiki Page Content

Differences between revisions 33 and 34
Revision 33 as of 2012-07-06 01:39:04
Size: 6176
Editor: Sam Lantinga
Comment:
Revision 34 as of 2013-09-01 18:51:45
Size: 6701
Comment: Updated usage of Color2 macro.
Deletions are marked like this. Additions are marked like this.
Line 12: Line 12:
 * <<Color2(green, Sam: Add support for multiple windows)>>
 * <<Color2(green, Sam: Create 3D accelerated texture based rendering API)>>
 * <<Color2(green, Sam: Create API for enabling/disabling the screensaver)>>
 * <<Color2(green, Sam: Add support for selecting video mode refresh rate)>>
 * <<Color2(green, Sam: Create API for clipboard support (check out !PyGame))>>
 * <<Color2(green, Sam: Add support for multiple displays)>>
 * <<Color2(green, Sam: Add concept of viewport to fullscreen windows)>>
 * <<Color2(green, Sam: Add support for synchronizing 2D updates with vblank, using SDL_HINT_RENDER_VSYNC)>>
 * <<Color2(green, Mason Wheeler and Gabriel Jacobo: Add support for render targets)>>
 * <<Color2(col=green, text="Sam: Add support for multiple windows")>>
 * <<Color2(col=green, text="Sam: Create 3D accelerated texture based rendering API")>>
 * <<Color2(col=green, text="Sam: Create API for enabling/disabling the screensaver")>>
 * <<Color2(col=green, text="Sam: Add support for selecting video mode refresh rate")>>
 * <<Color2(col=green, text="Sam: Create API for clipboard support (check out !PyGame)")>>
 * <<Color2(col=green, text="Sam: Add support for multiple displays")>>
 * <<Color2(col=green, text="Sam: Add concept of viewport to fullscreen windows")>>
 * <<Color2(col=green, text="Sam: Add support for synchronizing 2D updates with vblank, using SDL_HINT_RENDER_VSYNC")>>
 * <<Color2(col=green, text="Mason Wheeler and Gabriel Jacobo: Add support for render targets")>>
Line 27: Line 27:
 * <<Color2(green, Andreas: Support shaped windows)>>
   * <<Color2(green, Windows)>>
 * <<Color2(col=green, text=Andreas: Support shaped windows")>>
   * <<Color2(col=green, text=Windows")>>
Line 30: Line 30:
   * <<Color2(green, Linux)>>    * <<Color2(col=green, text=Linux")>>
Line 33: Line 33:
 * <<Color2(gray, Create desktop video mode change notification)>>
 * <<Color2(gray, Support always-on-top window styles)>>
 * <<Color2(gray, Support multiple icon sizes (e.g. for Windows Vista))>>
 * <<Color2(gray, Implement NET_WM_PING and NET_WM_PID/WM_CLIENT_MACHINE (http://standards.freedesktop.org/wm-spec/wm-spec-1.3.html#KILLINGWINDOWS))>>
 * <<Color2(gray, Support desktop windows)>>
 * <<Color2(col=gray, text="Create desktop video mode change notification")>>
 * <<Color2(col=gray, text="Support always-on-top window styles")>>
 * <<Color2(col=gray, text="Support multiple icon sizes (e.g. for Windows Vista)")>>
 * <<Color2(col=gray, text="Implement NET_WM_PING and NET_WM_PID/WM_CLIENT_MACHINE (http://standards.freedesktop.org/wm-spec/wm-spec-1.3.html#KILLINGWINDOWS)")>>
 * <<Color2(col=gray, text="Support desktop windows")>>
Line 51: Line 51:
 * <<Color2(green, Ryan: Add support for float and 32-bit int audio formats)>>
 * <<Color2(green, Ryan: Add support for 7.1 speaker output)>>
 * <<Color2(col=green, text="Ryan: Add support for float and 32-bit int audio formats")>>
 * <<Color2(col=green, text="Ryan: Add support for 7.1 speaker output")>>
Line 55: Line 55:
 * <<Color2(green, Ryan: Create audio recording API)>>  * <<Color2(col=green, text="Ryan: Create audio recording API")>>
Line 59: Line 59:
 * <<Color2(green, Ryan: Add support for multiple audio devices)>>  * <<Color2(col=green, text="Ryan: Add support for multiple audio devices")>>
Line 67: Line 67:
 * <<Color2(gray, PCM volume control)>>  * <<Color2(col=gray, text="PCM volume control")>>
Line 72: Line 72:
 * <<Color2(green, Sam: Add a way to dynamically register for custom event types)>>
 * <<Color2(green, Add a timeout parameter for [[SDL_WaitEvent]]() (http://lists.libsdl.org/pipermail/sdl-libsdl.org/2008-May/thread.html#65067))>>
 * <<Color2(col=green, text="Sam: Add a way to dynamically register for custom event types")>>
 * <<Color2(col=green, text="Add a timeout parameter for [[SDL_WaitEvent]]() (http://lists.libsdl.org/pipermail/sdl-libsdl.org/2008-May/thread.html#65067)")>>
Line 80: Line 80:
 * <<Color2(gray, Add a timestamp to events)>>  * <<Color2(col=gray, text="Add a timestamp to events")>>
Line 85: Line 85:
 * <<Color2(green, Sam: Mousewheel has a separate event)>>
 * <<Color2(green, Sam: Support showing / hiding the cursor)>>
 * <<Color2(green, Sam: Add support color cursors)>>
 * <<Color2(col=green, text="Sam: Mousewheel has a separate event")>>
 * <<Color2(col=green, text="Sam: Support showing / hiding the cursor")>>
 * <<Color2(col=green, text="Sam: Add support color cursors")>>
Line 95: Line 95:
 * <<Color2(gray, Ryan: Add support for multiple mice)>>  * <<Color2(col=gray, text="Ryan: Add support for multiple mice")>>
Line 97: Line 97:
 * <<Color2(gray, Pressure/tilt support for tablet like devices)>>
 * <<Color2(gray, Add support animated cursors)>>
 * <<Color2(col=gray, text="Pressure/tilt support for tablet like devices")>>
 * <<Color2(col=gray, text="Add support animated cursors")>>
Line 103: Line 103:
 * <<Color2(green, Sam: Create new text input event separate from key events)>>  * <<Color2(col=green, text="Sam: Create new text input event separate from key events")>>
Line 109: Line 109:
   * <<Color2(green, Windows)>>
   * <<Color2(green, Mac OS X)>>
   * <<Color2(col=green, text="Windows")>>
   * <<Color2(col=green, text="Mac OS X")>>
Line 117: Line 117:
 * <<Color2(green, Edgar: Create Force Feedback API)>>  * <<Color2(col=green, text="Edgar: Create Force Feedback API")>>
Line 125: Line 125:
 * <<Color2(green, Jim: Create multi-touch input API)>>  * <<Color2(col=green, text="Jim: Create multi-touch input API")>>
Line 130: Line 130:
 * <<Color2(green, Sam: Create API for getting the number of CPUs)>>
 * <<Color2(green, Bob: Create API for atomic operations on data)>>
 * <<Color2(green, Sam: Remove unsafe SDL_!KillThread() API)>>
 * <<Color2(green, Sam: Create API for thread priority)>>
 * <<Color2(col=green, text="Sam: Create API for getting the number of CPUs")>>
 * <<Color2(col=green, text="Bob: Create API for atomic operations on data")>>
 * <<Color2(col=green, text="Sam: Remove unsafe SDL_!KillThread() API")>>
 * <<Color2(col=green, text="Sam: Create API for thread priority")>>
Line 138: Line 138:
 * <<Color2(green, Sam: Add higher precision timers for profiling)>>  * <<Color2(col=green, text="Sam: Add higher precision timers for profiling")>>
Line 143: Line 143:
 * <<Color2(green, Ryan: Create API for assertions)>>
 * <<Color2(green, Sam: Public license for SDL_compat.c, tests, and SDL_main*)>>
 * <<Color2(green, Sam: Figure out the best way to support simultaneous SDL 1.2 and SDL 2.0 installations)>>
 * <<Color2(green, Sheena: Finish 2.0 API documentation)>>
 * <<Color2(col=green, text="Ryan: Create API for assertions")>>
 * <<Color2(col=green, text="Sam: Public license for SDL_compat.c, tests, and SDL_main*")>>
 * <<Color2(col=green, text="Sam: Figure out the best way to support simultaneous SDL 1.2 and SDL 2.0 installations")>>
 * <<Color2(col=green, text="Sheena: Finish 2.0 API documentation")>>
Line 152: Line 152:
 * <<Color2(gray, Create an API for live video capture)>>
 * <<Color2(gray, Create an API for accelerometer data)>>
 * <<Color2(gray, Create extended set of (negative) error codes and have the API functions document and return them)>>
 * <<Color2(col=gray, text="Create an API for live video capture")>>
 * <<Color2(col=gray, text="Create an API for accelerometer data")>>
 * <<Color2(col=gray, text="Create extended set of (negative) error codes and have the API functions document and return them")>>

SDL 2.0 Roadmap

This is a list of features which are in progress for the SDL 2.0 release. The features are organized by subsystem and assigned to developers. Features will move around as the design evolves.

<<TableOfContents: execution failed [Too many arguments] (see also the log)>>

Video

Complete

  • Sam: Add support for multiple windows

  • Sam: Create 3D accelerated texture based rendering API

  • Sam: Create API for enabling/disabling the screensaver

  • Sam: Add support for selecting video mode refresh rate

  • Sam: Create API for clipboard support (check out PyGame)

  • Sam: Add support for multiple displays

  • Sam: Add concept of viewport to fullscreen windows

  • Sam: Add support for synchronizing 2D updates with vblank, using SDL_HINT_RENDER_VSYNC

  • Mason Wheeler and Gabriel Jacobo: Add support for render targets

Required

  • Ryan: Implement landscape mode for iPhone port
  • Sam: Add support for OpenGL context profiles
  • Sam: Create flags for specifying foreign window event behavior
  • Andreas: Support shaped windows"

    • Windows"

    • Mac OS X
    • Linux"

Wishlist

  • Create desktop video mode change notification

  • Support always-on-top window styles

  • Support multiple icon sizes (e.g. for Windows Vista)

  • Implement NET_WM_PING and NET_WM_PID/WM_CLIENT_MACHINE (http://standards.freedesktop.org/wm-spec/wm-spec-1.3.html#KILLINGWINDOWS)

  • Support desktop windows

    •         setAttribute(Qt::WA_X11NetWmWindowTypeDesktop);
              setWindowFlags(Qt::SplashScreen);
      
              Qt::WindowFlags flags = 0;
                  flags |= Qt::FramelessWindowHint;
                  flags |= Qt::Tool;
                  flags |= Qt::WindowStaysOnBottomHint;
      

Audio

Complete

  • Ryan: Add support for float and 32-bit int audio formats

  • Ryan: Add support for 7.1 speaker output

Required

  • Ryan: Create audio recording API

    • Windows
    • Mac OS X
    • Linux
  • Ryan: Add support for multiple audio devices

    • Windows
    • Mac OS X
    • Linux
  • Ryan: Add support for audio device live connect and disconnect
  • Ryan: Add support for non-power-of-two audio rate conversion

Wishlist

  • PCM volume control

Event

Complete

Required

  • Sam: Add modifier state to key and button events
  • Sam: Resolve question of how to represent iOS events which need to be handled before dispatch returns

Wishlist

  • Add a timestamp to events

Mouse Input

Complete

  • Sam: Mousewheel has a separate event

  • Sam: Support showing / hiding the cursor

  • Sam: Add support color cursors

Required

  • Sam: Reimplement mouse grab support
  • Verify cursor location is correct when ungrabbed
  • Verify proper behavior with Vista DPI scaling

Wishlist

  • Ryan: Add support for multiple mice

    • Q: What is the mapping of individual mice to pointers? Is there a "master pointer" that multiple mice share and then events for the individual mice? Is there a dual mode, where you have a single pointer that all mice affect, and you can switch to multiple pointers, each affected by a single mouse?
  • Pressure/tilt support for tablet like devices

  • Add support animated cursors

Keyboard Input

Complete

  • Sam: Create new text input event separate from key events

Required

  • Q: When you're enabling or disabling text events via keystroke, how do you ignore the text generated by the key that is toggling text input?
    • A: Key events are guaranteed to happen first
  • Sam/Jiang/Daniel: Create IME API and support system IME interfaces
    • Windows

    • Mac OS X

    • Linux
  • Sam: Add name to keysym and name to scancode lookup functions

Joystick Input

Complete

  • Edgar: Create Force Feedback API

Required

  • Ryan: Add support for joystick device live connect and disconnect

Multi-touch Input

Complete

  • Jim: Create multi-touch input API

Multi-threading

Complete

  • Sam: Create API for getting the number of CPUs

  • Bob: Create API for atomic operations on data

  • Sam: Remove unsafe SDL_KillThread() API

  • Sam: Create API for thread priority

Timers

Complete

  • Sam: Add higher precision timers for profiling

General

Complete

  • Ryan: Create API for assertions

  • Sam: Public license for SDL_compat.c, tests, and SDL_main*

  • Sam: Figure out the best way to support simultaneous SDL 1.2 and SDL 2.0 installations

  • Sheena: Finish 2.0 API documentation

Required

  • Sam: Write introductions for SDL 2.0 API documentation

Wishlist

  • Create an API for live video capture

  • Create an API for accelerometer data

  • Create extended set of (negative) error codes and have the API functions document and return them


Ryan has more information on the SDL 2.0 changes that you can find here:
http://icculus.org/cgi-bin/finger/finger.pl?user=icculus&date=2007-10-07&section=sdl13

None: Roadmap (last edited 2015-01-09 22:36:44 by PhilippWiesemann)

(Page Info.)
Feedback
Please include your contact information if you'd like to receive a reply.
Submit