Versão da biblioteca de mídia SDL 2.0.22

Foi lançada a biblioteca SDL 2.0.22 (Simple DirectMedia Layer), que visa simplificar a escrita de jogos e aplicações multimídia. A biblioteca SDL fornece ferramentas como saída gráfica 2D e 3D acelerada por hardware, processamento de entrada, reprodução de áudio, saída 3D via OpenGL/OpenGL ES/Vulkan e muitas outras operações relacionadas. A biblioteca é escrita em C e distribuída sob a licença Zlib. Para utilizar os recursos do SDL em projetos em diversas linguagens de programação, são fornecidas as ligações necessárias.

Na nova versão:

  • Suporte aprimorado para o protocolo Wayland. Inicialmente, foi planejado passar a usar o protocolo Wayland por padrão em ambientes que oferecem suporte simultâneo para Wayland e X11, mas devido a problemas associados ao Wayland em jogos e drivers NVIDIA, foi decidido adiar a transição (em ambientes Wayland com o componente XWayland, resultado do uso do protocolo X11). Para usar o Wayland, você pode definir a variável de ambiente “SDL_VIDEODRIVER=wayland” antes de iniciar o aplicativo ou adicionar a função “SDL_SetHint(SDL_HINT_VIDEODRIVER, “wayland,x11”)” ao código antes de chamar SDL_Init(). Compilar com Wayland requer pelo menos libwayland-client versão 1.18.0.
  • Adicionada função SDL_RenderGetWindow() para obter a janela associada ao SDL Renderer.
  • Adicionado um conjunto de funções para manipulação de áreas retangulares (determinar a ocorrência de pontos, limpar, comparar, mesclar, etc.), operando com coordenadas e tamanhos baseados em números de ponto flutuante: SDL_FRectEqualsEpsilon () , SDL_HasIntersectionF(), SDL_IntersectFRect(), SDL_UnionFRect(), SDL_EncloseFPoints() e SDL_IntersectFRectAndLine().
  • Adicionada função SDL_IsTextInputShown() para verificar se a área de entrada de texto é mostrada.
  • Adicionada função SDL_ClearComposition() para limpar a área de entrada de texto sem desabilitar o método de entrada (IME).
  • Adicionado evento SDL_TEXTEDITING_EXT para lidar com áreas de entrada de texto longo e sinalizador SDL_HINT_IME_SUPPORT_EXTENDED_TEXT para ativar este evento.
  • Adicionado o sinalizador SDL_HINT_MOUSE_RELATIVE_MODE_CENTER para permitir a restrição do mouse apenas ao centro da janela em vez de à janela inteira quando o modo relativo estiver habilitado.
  • Habilitada a captura automática do mouse ao pressionar os botões do mouse. Para desativá-lo, é proposto o sinalizador SDL_HINT_MOUSE_AUTO_CAPTURE.
  • Adicionados sinalizadores SDL_HINT_VIDEO_FOREIGN_WINDOW_OPENGL e SDL_HINT_VIDEO_FOREIGN_WINDOW_VULKAN para transmitir informações sobre o uso de OpenGL ou Vulkan em uma janela externa.
  • Adicionado o sinalizador SDL_HINT_QUIT_ON_LAST_WINDOW_CLOSE para permitir a entrega do evento SDL_QUIT quando a última janela do aplicativo for fechada.
  • Adicionado o sinalizador SDL_HINT_JOYSTICK_ROG_CHAKRAM para tratar o mouse ROG Chakram como um joystick.
  • Para Linux, o atributo SDL_HINT_X11_WINDOW_TYPE foi adicionado para definir o parâmetro _NET_WM_WINDOW_TYPE para Windows.
  • Para Linux, o sinalizador SDL_HINT_VIDEO_WAYLAND_PREFER_LIBDECOR foi adicionado para usar libdecor com servidores compostos que suportam xdg-decoration.
  • Para Android, a função SDL_AndroidSendMessage() foi implementada para enviar um comando arbitrário ao manipulador SDL Java.

Fonte: opennet.ru

Adicionar um comentário