Cours complet d'introduction à la SDL 2

Dans ce tutoriel, vous apprendrez à manipuler la bibliothèque de 2D, à savoir la SDL, dans sa version 2.

Prérequis

Ce cours suggère que vous n’êtes pas complètement débutant dans la programmation informatique, que vous avez au moins une fois dans votre vie codée. Pour ce nous utiliserons le langage de programmation C++ au lieu du C. Enfin un niveau d’anglais basique sera le bienvenu.

Préambule

Dans ce cours sur la SLD 2 nous allons pas réellement parler de développement de jeux vidéo ce thème sera réservé pour une autre série d'articles qui parleront plus précisément de cela.

En réalité ce cours est plus dédié, à l'utilisation de la bibliothèque 2D, qu'à réellement programmer un jeux-vidéo. J'ai en effet choisi de séparer la création de jeux et l'utilisation d'une bibliothèque 2D, dans le but de vous expliquer d'abord sur ce cours, ce que propose la SDL comme fonctionnalités de base. Et par la suite dans un autre cours vous expliquez comment peut-on utiliser ces fonctionnalités basiques pour créer des mécanismes plus complexes communs à la plupart des jeux vidéo et non présent nativement dans la bibliothèque (comme par exemple la gestion de la gravité).

Comme expliqué plus haut, le code sera écrit en C++, mais sans trop de notions abstraites, comme les pointeurs intelligents pour ainsi faciliter la compréhension du code pour les débutants. Toutefois si vous souhaitez apprendre le langage C++, des cours en ligne disponible à l’annexe de ce cours sur SDL 2.0.

La norme du langage C++ sera la norme 17.

Introduction

Qu'est-ce que la SDL

SDL pour Simple DirectMedia Layer, est une bibliothèque 2D qui va vous permettre l’écriture de programme graphique. Elle permet :

  • L’affichage vidéo
  • Gérer les évènements clavier, souris

SDL se paie aussi le luxe d’être multi-plateforme (Windows, Linux, Android etc...)

Limitation de la SDL

La SDL reste une bibliothèque très minimaliste, elle ne traite que très peu de types de formats de fichiers, pour l’image et l’audio et les formes primitives de dessins restent aussi limitées.

La bibliothèque ne sait pas géré par exemple que le format audio WAV pour l'audio, le format d’image BMP, et sait dessiner des pixels, des rectangles, des lignes.

Mais sachez qu’il y a la possibilité de contourner ses limites en utilisant des bibliothèques non officielles, comme SDL_image pour gérer beaucoup plus de format d’image, mais aussi SDL_mixer pour gérer plus facilement l’audio, voire aussi SDL_ttf permettant ainsi d'écrire du texte avec des polices d'écritures personnalisées.

Pourquoi est-il intéressant de faire de la SDL

Je vais être honnête, si vous voulez être productif dans le développement de jeux vidéo alors la bibliothèque SDL, risque un peu de vous ralentir. Pourquoi me demanderiez-vous ? Car aujourd'hui moulte de développeurs conseillent de passer directement par des technologies qui facilitent la vie du développeur, tel que des bibliothèques offrant plus de possibilités ou carrément d’utiliser des moteurs de jeux (je pense notamment à Unity).

Mais selon moi choisir la facilité, peut vraiment être un double tranchant en effet, savoir tout faire soit même est un vrai enrichissement intellectuel. Ensuite le passage d’un moteur de jeux sera beaucoup plus facile pour vous, or une personne passant directement par un moteur de jeux devra quasiment écrire du code sans savoir réellement ce qui se passe derriére comme par exemple pour l’Entity Component System.

Espace commentaire

Écrire un commentaires

vous devez être connecté pour poster un message !

0 commentaire

D'autres articles

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire