• [^] # Re: Bien !

    Posté par (site web personnel, Mastodon) . En réponse à la dépêche Plus de jeux pour Linux. Évalué à 10.

    je ne pense pas qu'une fois les bases du jeu cree, il soit si difficile et si couteux de le passer sous nux...

    En fait si l'on s'en tient au jeu lui-même, ce qui le caractérise, tu as raison. J'irai même jusqu'à dire qu'un jeu bien programmé n'aurait <pincette>en théorie</pincette> besoin d'aucune modif pour être porté vers une autre plateforme.

    Le problème est qu'un jeu utilise généralement un moteur de rendu (pour affichage) qui, à moins de réinventer la roue, utilise une librairie fournissant des outils de base : DirectX, OpenGL, SDL, GGI, ClanLib, Hermès, Allegro...

    Un moteur de rendu ça prend quand même pas mal de temps à développer avant d'obtenir des performances correctes, et cela implique de bien connaitre la librairie utilisée (la tâche est encore plus ardue lorsque ladite librairie est compliquée et fermée). L'équipe de développement (n'appartenant pas d'une grosse structure) en charge d'un projet n'a, en général, pas les moyens de développer une version pour chaque librairie de son moteur. Donc, on développe avec la lib la plus répandue dans les drivers des cartes vidéo.

    Ce qui n'exclut pas d'obtenir des performances égales voire supérieures avec une autre lib, même sous Win, mais pour ça il faut suer (remarquez, comprendre comment DX fonctionne apporte aussi son lot de transpiration). C'est le cas d'ID Software : rapport qualité visuelle / perfs il est quand même bien foutu. Le moteur de Quake 3 est le fruit d'années de travail qui peut rebuter l'équipe suceptible de développer un moteur OpenGL alors qu'elle a déjà un moteur DirectX qui fonctionne.

    Ceci dit, quitte à partir de zéro je préconiserais le double emploi d'OpenGL (pour tout ce qui est 3D) avec SDL pour le reste (2D, son, réseau...) : c'est portable (Win, Nux, MacOS, BeOS), les sources sont disponibles pour aller bidouiller dedans et faire des optimisations (on a souvent besoin de recoder une fonctionnalité générique pour un usage particulier et du coup booster les perfs) et puis ça me parait légèrement plus simple...

    Cependant, je me joins à la liesse générale pour féliciter cette initiative avec l'espoir de développer moi-même des jeux multi-plateformes.