Première version de la bibliothèque multimédia LDL avec support des anciens systèmes

Je vous présente la première version de la bibliothèque multimédia que j'ai développée Little DirectMedia Layer, abrégé LDL.

La bibliothèque est écrite en C++ standard 98, ce qui permet de la compiler à partir de Visual C++ 6.0. Le code est distribué sous les conditions de la Boost Software License 1.0. Cependant, la bibliothèque ne limite pas les programmeurs dans le choix de la version du langage C++, et un programmeur peut utiliser n'importe quelle version moderne du langage. Je suis adepte de la philosophie downgrade — il s'agit d'utiliser des dispositifs et logiciels anciens dans la vie quotidienne, lorsque les entreprises n'assurent plus le support de leurs systèmes d'exploitation ou appareils « obsolètes », augmentant les exigences système avec chaque nouvelle version de leurs produits, ou cessent de supporter un appareil. Des milliards d'appareils à travers le monde exécutent des milliards d'instructions de code non optimisé chaque seconde.

Cette année, j'ai pris la parole à la conférence C++ 2023 avec une présentation « En avant vers le passé, ou Développons un framework pour Windows 95 en 2023 ».

Avec mon projet, je souhaite prouver que le vieux matériel peut encore être utile et qu'il n'est pas encore temps de le mettre à la ferraille. Il y a quelque chose de fascinant dans les anciennes technologies, les approches et le matériel, et c'est aussi un défi pour les nouvelles bibliothèques et programmes.

Au tout début du processus de développement, je ne pensais même pas que cette bibliothèque était possible. Mais lors de la mise en pratique du prototype, ajoutant ligne après ligne à la fondation de la future bibliothèque, je me suis convaincu de la possibilité de sa création et de son application pratique.

En résumé, il est possible d'écrire des programmes rapides, il suffit d'utiliser les connaissances des anciens.

Fonctionnalités de la bibliothèque :

  • support de Linux Debian 3 et supérieur (compilation native assurée);
  • support de Windows 95 à Windows 11;
  • API simple pour travailler avec la graphique 2D;
  • chargement de nombreux formats graphiques (bmp, png, tga, jpg);
  • API multiplateforme pour les fenêtres et événements du système d'exploitation;
  • pour l'accélération matérielle de la graphique, OpenGL 1.2 et
  • OpenGL 3.3 sont utilisés, avec le support du traitement graphique uniquement sur le CPU, en l'absence d'accélération matérielle;
  • le rendu peut être choisi dynamiquement lors du chargement de l'application;
  • une API unique pour tous les systèmes — écrivez une fois et compilez partout !
  • reproduction sonore;
  • liaison dynamique et statique.

Plans futurs :

  • lecture audio en continu;
  • Affichage de texte avec prise en charge de la bibliothèque freetype;
  • Rendus supplémentaires Direct3D 9, 10, 11;
  • API pour travailler avec des flux;
  • Support intégré de l'API pour travailler avec le réseau;
  • Portage du framework sur d'autres plateformes : Android, iOS, MacOs.

Liens :

Source : linux.org.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster