Capa de DirectMedia simple

Capa de DirectMedia simple

Información
Creador Sam lantinga
Primera versión 1998
Última versión 2.0.14 (21 de diciembre de 2020)
Depositar github.com/libsdl-org/SDL
Estado del proyecto En desarrollo activo
Escrito en VS
Sistema de explotación Microsoft Windows , GNU / Linux , Android , macOS , iOS , FreeBSD y Haiku
Idiomas inglés
Tipo Biblioteca de software
Política de distribución Libre
Licencia Licencia Zlib y Licencia pública general reducida GNU versión 2.1 ( d )
Sitio web www.libsdl.org

Simple DirectMedia Capa (SDL) es unabiertobiblioteca de software de código . SuAPIse utiliza para crearde dosdimensionesmultimediaaplicacionesquepueden incluirsonidoal igual quelos juegos de video,demostraciones gráficas,emuladores, etc. Su portabilidad a la mayoría de las plataformas y sulicenciazlibmuy permisiva contribuyen a su éxito.

Características

SDL permite gestionar los siguientes elementos con relativa sencillez:

Entre los complementos disponibles para SDL, los más populares son:

SDL puede trabajar con la biblioteca de gráficos OpenGL .

Sistemas compatibles

Esta biblioteca está disponible en Windows , Windows CE , BeOS (SDL 1.2), Mac OS (SDL 1.2), OS / 2 (SDL 1.2) y la mayoría de los sistemas UNIX como Mac OS X , Linux , Android (que se basa en Linux) , FreeBSD , NetBSD , OpenBSD , BSD / OS , Solaris , IRIX y QNX (SDL 1.2). También funciona en algunos sistemas integrados como consolas de juegos portátiles (SDL 1.2). Es compatible con WebAssembly .

Idiomas admitidos

Escrito en C , también se puede utilizar desde otros lenguajes de programación , incluido C ++ (para todas las versiones).

Versión 1.2

Java , Lua , Python , ...

Versión 2.0

Ada , C # , D , Go , Lua , OCaml , Pascal , Python , Rust

Histórico

Sam Lantinga creó la biblioteca en 1998 . La idea se le ocurrió mientras pasaba una aplicación de Windows a Macintosh . Poco después, usó SDL para portar Doom a BeOS . Luego, Sam trabajó para Loki Software y otras bibliotecas gratuitas que se unieron a SDL, como SMPEG y OpenAL .

La versión 2.0.0 se lanza el 13 de agosto de 2013. Entre los principales cambios, la posibilidad de acelerar materialmente el renderizado y un cambio de licencia: licencia Zlib en lugar de LGPL . Hay disponible una guía de migración de la versión 1.2.0 a la versión 2.0.0. Se sacrifica la compatibilidad con algunos sistemas.

Versión 2.0.6, publicada el 22 de septiembre de 2017agrega soporte multiplataforma para la API de gráficos Vulkan a través del archivo SDL_vulkan.h, soporte para composición 2D con modos de fusión, soporte para varios controladores de juegos nuevos y una serie de mejoras en las funciones utilizadas para su gestión una función de detección de la presencia de el SIMD ARM NEON para la arquitectura ARM , un área de función de copia, controlador de audio de soporte experimental JACK , y funciones de remuestreo  (in) de sonido y cambio de barra de escala.

En octubre de 2019está integrado en el repositorio principal de SDL, tanto para la serie 1.2 como para la serie 2.0 un conjunto de parches, desarrollado por Ben Avison, dedicado a la aceleración en ARMv7 y ARMv8 a través de SIMD ARM NEON , multiplicando por 3 el rendimiento de la biblioteca en las copias de bloques en estas arquitecturas (paso de 9.6 FPS a 27 FPS en la misma aplicación para un juego en python, Myriapod, probado, algunas funciones van 15 veces más rápido que antes).

Galería

Notas y referencias

  1. Sam Lantinga , “¡  SDL 2.0.14 lanzado!  " ,21 de diciembre de 2020(consultado el 23 de diciembre de 2020 )
  2. Sam Lantinga , Tag release-2.0.14  " ,21 de diciembre de 2020(consultado el 23 de diciembre de 2020 )
  3. Versión 2.0.14  " ,21 de diciembre de 2020(consultado el 12 de febrero de 2021 )
  4. Guía para desarrolladores de C / C ++ , webassembly.org, diciembre de 2017.
  5. (in) "  SDL Language Bindings  " en libsdl.org (consultado el 11 de marzo de 2019 )
  6. (in) "¡  Lanzamiento de SDL 2.0.0!  » , On Simple Directmedia Layer (consultado el 29 de noviembre de 2018 )
  7. http://wiki.libsdl.org/Installation#Not_supported_or_abandoned
  8. (in) "¡  Lanzamiento de SDL 2.0.6!  "
  9. https://bugzilla.libsdl.org/show_bug.cgi?id=4365
  10. (en) Michael Larabel, "  SDL elige optimizaciones ARM para ayudar a los juegos que nos gustan los dispositivos Raspberry Pi  " en Phoronix ,31 de octubre de 2019
  11. "  Desarrollo de OpenTTD  " (consultado el 19 de marzo de 2010 )
  12. "  CompilingWesnoth  " ,27 de febrero de 2010(consultado el 2 de octubre de 2013 )
  13. "  Oolite  " , Oolite.org (consultado el 19 de marzo de 2010 )

Apéndices

Artículos relacionados