Quel est le problème avec la famille Linux / * nix pour les jeux? Qu'est-ce qui rend le développement de jeux pour cette plateforme trop lent par rapport à Windows ou même OS X?
Quel est le problème avec la famille Linux / * nix pour les jeux? Qu'est-ce qui rend le développement de jeux pour cette plateforme trop lent par rapport à Windows ou même OS X?
Réponses:
Pour les clients de jeux, cela a principalement à voir avec la culture, ce qui conduit à des stratégies de monétisation difficiles.
Les serveurs pour les jeux multijoueurs, d'autre part, ont obtenu beaucoup de traction pour linux / nix, c'est une plate-forme très attrayante pour développer la technologie des serveurs.
Il est à espérer que la sortie éventuelle de Steam pour Linux aidera à changer cette culture en ce qui concerne les clients et fournira aux développeurs et aux éditeurs une plate-forme plus rentable pour la distribution de jeux.
Quel est le problème avec la famille Linux / * nix pour les jeux?
«Mauvais» est un mot fort, mais je vais énumérer quelques éléments qui empêchent les développeurs de jeux de travailler sur Linux.
Culture - Les gens de Linux ont plus tendance à croire que les logiciels devraient être gratuits - ce n'est pas propice à faire un profit sur la vente de vos logiciels. Cela pourrait changer à l'avenir, les jeux en ligne étant en quelque sorte des «logiciels en tant que service».
Part de marché - La part de marché de Linux sur le bureau a toujours été assez faible. Maintenant que la part de marché est finalement passée de `` négligeable '' à `` pitoyablement faible '', vous pourriez faire un petit argument pour cibler cette plate-forme - si le point précédent n'était pas du tout vrai, c'est-à-dire. Cela est également arrivé un peu trop tard - le marché des jeux non-console est vraiment assez petit de nos jours lorsque vous excluez les MMO.
Support développeur - Microsoft a consacré beaucoup de temps et d'argent à DirectX, et plus récemment à XNA. Avec un seul téléchargement, vous disposiez de toutes les API et de la documentation dont vous aviez besoin pour créer des jeux. Linux n'a pas d'organe central pour le faire, ni même un seul produit qui pourrait être utilisé à la place. SDL ne fait pas de graphiques 3D, OpenGL ne fait rien d'autre que des graphiques, aucun n'a eu une stratégie de mise à niveau très crédible ces dernières années, et il y a un milliard d'autres bibliothèques (dont beaucoup peuvent être trouvées sur une liste que je maintiens ici ) vous pouvez vous lancer dans le mix sans leader clair. C'est juste beaucoup plus compliqué. En plus de cela, beaucoup de middleware de pointe ne fonctionnent pas sous Linux, donc au lieu d'un code éprouvé avec un support payant, vous devez envisager d'utiliser un open source abandonné qui n'a jamais été utilisé dans un jeu fourni.
Prise en charge du système d'exploitation - Linux peut faire tout ce que fait Windows, mais cela rend parfois les choses difficiles. Le support sonore en particulier est horrible. La prise en charge de la vidéo est gênante en raison de la légalité des codecs. La distribution de vos fichiers binaires peut être fastidieuse lorsque vous considérez les différents types d'emballage que vous devez prendre en charge. Toutes ces choses peuvent être surmontées si vous savez ce que vous faites, mais la plupart des développeurs Windows ne savent pas ce qu'ils font avec Linux, ils ne sont donc pas en mesure de transférer facilement leur produit vers Linux.
Linux représente environ 1% du total des utilisateurs finaux accédant à Internet ( OS Marketshare ). Son utilisation augmente considérablement lorsque l'on parle de serveurs, mais ce n'est tout simplement pas un gros système d'exploitation grand public.
Il n'y a rien de mal avec la famille d'OS Linux / * nix pour le développement de jeux, sauf pour le public perçu. La plupart des développeurs estiment que l'effort de création de jeux pour Linux ne se traduira pas par des copies vendues de leurs jeux, en particulier dans les communautés AAA.
Même plusieurs entreprises qui ont simplement porté des jeux AAA sur Linux (n'ont même pas payé le coût initial de développement du jeu) n'ont pas été en mesure de générer suffisamment de ventes sur cette plate-forme pour rester à flot.
Cela dit, Linux peut être une aubaine pour de nombreux développeurs indépendants, car il y a des fanatiques de Linux qui achèteront un jeu simplement parce qu'il sort sur Linux.
Le jeu Linux est un marché largement inexploité, à mon avis, en particulier pour les indépendants. Si vous regardez les chiffres rapportés par Hemisphere Games for Osmos et les chiffres rapportés par Wolfire Games pour le Humble Indie Bundle (en particulier le revenu total pour chaque plate-forme), vous pouvez voir que les utilisateurs de Linux peuvent être assez désireux de soutenir ceux qui prennent en charge Linux.
J'ai remarqué une chose qui n'a pas encore été abordée ici, c'est le méli-mélo global de pilotes, noyaux et bibliothèques avec lesquels vous devez travailler sous Linux. Cela s'est amélioré ces derniers temps (avec quelques distributions constituant ce que je ne peux que deviner, c'est la majorité des boîtes Linux), mais c'est toujours un gâchis. Pour un excellent exemple de ce que je veux dire, voir ce post-mortem du port Linux Osmos , en particulier la section "N'a pas aimé". En bref, cet article se plaint de:
Que voulez-vous dire par trop lent? Je ne pense pas que gamedev pour linux soit plus lent que pour les autres systèmes d'exploitation. Si vous vouliez demander pourquoi il n'y a pas de jeux commerciaux développés pour Linux, je suppose que c'est principalement parce que le marché est trop petit. Il y avait une entreprise qui a commencé à porter des jeux Windows commerciaux sur Linux, mais ils ont fermé parce qu'ils n'avaient pas réussi à vendre ces jeux iirc. De plus, si vous souhaitez développer un jeu pour Linux, vous devez toujours le fournir pour Windows également si vous voulez gagner suffisamment d'argent, mais le développer de manière multiplateforme est encore plus coûteux et le marché Linux ne vaut probablement pas la peine. il. Je dirais donc que ce n'est tout simplement pas rentable.
Une raison pour laquelle je pense que Linux n'attire pas autant l'attention est simplement que la plupart des gens qui exécutent Linux peuvent également choisir d'exécuter Windows via une configuration à double démarrage pour exécuter des jeux. Cela affecte également les utilisateurs de Mac dans une certaine mesure, mais en raison de la composition moins technique de la base d'utilisateurs (ne pas dire cela comme un peu pour les utilisateurs de Mac - c'est plus que les utilisateurs de Linux ont tendance à être le genre de personnes qui ne le font pas l'esprit de faire toutes sortes de tâches techniques arcaniques pour faire fonctionner quelque chose), il y a moins de gens prêts à installer Windows sur leur machine.
Il est étroitement lié au fait que toute personne intéressée par les jeux PC achètera probablement un PC avec Windows dessus. Comme ils ont déjà une machine Windows, ils ne demanderont pas de versions natives Linux ou Mac.
Je pense aussi qu'il y a simplement du pouvoir dans les chiffres. Il y a beaucoup plus d'utilisateurs Windows que d'utilisateurs Linux et donc plus de sortie sur Windows. De plus, le niveau d'entrée est beaucoup plus bas avec les outils visuels que les outils en ligne de commande (bien que cela ait changé au fil du temps). De nombreux enfants ont également pu bricoler l'ancien PC de leurs parents, qui était statiquement plus susceptible d'être un PC Windows qu'une boîte Linux.
L'utilisateur habituel du jeu n'est pas un utilisateur Linux. Le marché n'est donc pas là et il n'est pas sage de dépenser de l'argent pour essayer de se concentrer sur ce marché.
Je sais que id Software essaie de libérer un client Linux de leurs jeux, juste parce qu'ils sont géniaux et aiment la plate-forme.
N'oublions pas que la plupart des moteurs de jeux commerciaux sont liés et / ou ont un ensemble d'outils totalement enraciné sur win32 / consoles. C'est aussi la raison pour laquelle tant de jeux utilisent encore BSP par exemple. Parce qu'ils ont fait un investissement énorme, ils ne prendront pas un risque énorme pour un marché plus petit. Cela pourrait changer à l'avenir, mais en ce moment, vous devez investir beaucoup d'efforts pour devenir multiplateforme.
Depuis que Steam vient d'apparaître sur Mac, ce qui est vraiment une excellente nouvelle, je soupçonne que ce ne sera qu'une question de temps avant d'apparaître sur Linux. Un Mac exécute un système d'exploitation de type Unix, donc il ne devrait pas y avoir trop de problèmes pour porter les jeux.
Nous pouvons au moins espérer. :)
Un autre problème majeur que vous devez prendre en compte lors du développement pour Linux est de savoir comment installer votre jeu. Il n'y a pas de mécanisme d'installation standard qui fonctionne sans problème entre les distributions. Il existe des systèmes de gestion des packages qui vous facilitent la vie, bien que toutes les distributions n'utilisent pas les mêmes formats. Les deux formats de packaging les plus courants seraient probablement .deb (utilisé par les distributions basées sur Debian) et .rpm (utilisé par les distributions basées sur redhat). Vous pouvez perdre beaucoup de temps à préparer correctement l'emballage de votre application pour plusieurs distributions, mais si vous choisissez de ne pas fournir votre jeu dans un format d'emballage choisi pour la distribution, vous risquez d'aliéner leur base d'utilisateurs.
Je me demande si le marché est aussi petit que les gens le disent. Je veux dire que je connais plusieurs personnes qui utilisent Linux comme système d'exploitation au jour le jour et qui gardent une partition gratuite pour une installation de Windows pour jouer à leurs jeux. (Je fais de même) La seule et unique raison pour laquelle nous avons installé Windows est à cause des développeurs de logiciels. S'ils changent de position et soutiennent Linux, je suis certain que le taux d'adoption augmenterait. Mais rien ne changera à moins que quelqu'un ne fasse le premier saut (venez sur la valve).
Personnellement, j'ai résolu beaucoup de problèmes de Linux en utilisant Wine, mais j'ai toujours eu des problèmes pour trouver une solution d'installation standardisée qui fonctionnerait pour tout le monde.