Primeiro lançamento da biblioteca multimídia LDL com suporte para sistemas legados

Apresento a vossa atenção a primeira versão da biblioteca multimídia que desenvolvi. Pequena camada DirectMedia, abreviado como LDL.

A biblioteca é escrita no padrão C++ 98, o que permite que ela seja compilada a partir do Visual C++ 6.0. O código é distribuído sob os termos da Boost Software License 1.0. Mas a biblioteca não limita os programadores na escolha do padrão de linguagem C++; um programador pode usar qualquer padrão de linguagem moderno. Eu aderi à filosofia de downgrade - é o uso de dispositivos e softwares antigos na vida cotidiana, quando as empresas não oferecem suporte a seus próprios sistemas operacionais ou dispositivos “desatualizados”, aumentando os requisitos de sistema a cada nova versão de seu produto, ou parando de oferecer suporte ao dispositivo. Bilhões de dispositivos em todo o mundo processam bilhões de instruções de código não otimizadas a cada segundo.

Este ano fiz uma apresentação na conferência C++ 2023 "Avançando para o passado, ou desenvolvendo uma estrutura para Windows 95 em 2023".

Com meu projeto quero provar que hardware antigo ainda pode ser útil e que é muito cedo para descartá-lo como sucata. Há algo de encantador em tecnologias, abordagens e hardware antigos, e também um desafio para novas bibliotecas e programas.

Logo no início do processo de desenvolvimento, eu não tinha ideia de que essa biblioteca fosse possível. Mas durante a implementação prática do protótipo, acrescentando linha por linha à base da futura biblioteca, fiquei convencido da possibilidade de sua criação e aplicação prática.

Resumindo o que foi dito acima, é possível escrever programas rápidos, bastando usar o conhecimento dos antigos.

Recursos da biblioteca:

  • apoiar Linux Debian 3 e superior (montagem nativa fornecida);
  • apoiar Windows 95 - Windows 11;
  • API simples para trabalhar com gráficos 2D;
  • carregamento de diversos formatos gráficos (bmp, png, tga, jpg);
  • API multiplataforma em eventos de Windows e sistema operacional;
  • OpenGL 1.2 é usado para aceleração gráfica de hardware e
  • OpenGL 3.3, há suporte para processamento gráfico apenas na CPU, caso não haja aceleração de hardware;
  • o renderizador pode ser selecionado dinamicamente ao carregar o aplicativo;
  • uma única API para todos os sistemas - escreva uma vez e compile em qualquer lugar!
  • reprodução de som;
  • vinculação dinâmica e estática.

Planos futuros:

  • streaming de reprodução de áudio;
  • saída de texto com suporte à biblioteca freetype;
  • renderizações adicionais Direct3D 9, 10, 11;
  • API para trabalhar com streams;
  • suporte API integrado para trabalhar com a rede;
  • Adaptando a estrutura para outras plataformas: Android, IOS, MacOs.

Links:

Fonte: linux.org.ru

Compre hospedagem confiável para sites com proteção DDoS, servidores VPS VDS 🔥 Compre hospedagem de sites confiável com proteção contra DDoS, servidores VPS/VDS | ProHoster