Normalement il y a les API tels que DirectX pour ça.
Les developpeurs n’ont pas à se poser la question de savoir sur quelle carte vidéo cela va tourner. Ils developpent pour telle API, et leur jeux tournera sur les cartes compatibles avec cette API.
Apres ils pourraient effectivement optimiser le boulot en se rapprochant du hardware au maximum, mais là ils limiteraient trop leur champ d’action pour un boulot énorme. Même pour les consoles ils vont de moins en moins jusqu’au hard en se limitant aux API et SDK fourni, seuls quelques grands developpeurs vont prendre le temps de bien travailler les specificité de chaque machine.
A ma connaissance la derniere fois qu’on avait des jeux otpimisés pour une carte en particulier c’etait avec les 3DFx et le Glide. Depuis ça se base sur du Direct3D ou de l’OpenGL avec eventuellement quelques patch par-ci par-là pour certaines architectures (genre le trueform sur CS avec les ATI Radeon, etc)
Ca se défend également, mais bon ca t’obliges quand même à tester pas mal de configurations différentes quoi qu’il en soit. T’es obligé de vérifier que ca tourne, parce que quand ton jeu plante, les gens iront pas gueuler sur ATI et ses drivers pourris, ils vont dire “connard de jeu qui marche pas”
Si ça ne marche pas c’est la faute au concepteur de la carte. Si le developpeur respecte l’usage de l’API il n’y a aucune raison que son jeux ne fonctionne pas avec une carte compatible avec cette API, c’est justement à ça que servent les API.
Surtout qu’on voit plus souvent des problemes de compatibilités corrigés par les pilotes que par des patchs sur le jeux. Et on parle plus souvent d’incompatibilité entre un jeu et telle pilote qu’entre un jeu et telle carte.
La plupart du temps ses problemes concernent surtout les “early adopters” ceux qui se jettent sur les derniers pilotes, la derniere carte, le jeu dès sa sortie.
Les gens qui ne maitrisent pas le domaine (ceux dont du parle) auront des pilotes matures qui poseront rarement ce genre de soucis, et ne se jettent pas sur la derniere version beta de tel pilote. Ils ont bien moins de risques d’avoir un jeu qui ne passe pas à cause de ça (à la rigueur quand ç arrive c’est plutot l’inverse, ils ne sont pas suffisamment à jour )
Après c’est pas ça qui va prendre le plus de temps dans la phase de test d’un jeu. il leur suffit d’avoir un petit panel representatif des cartes les plus courantes (en gros 2-3nVidia, 2-3 ATI et zou) puis de voir si ça se lance correctement. Ca represente peanuts par rapport au debugage complet du jeu.
Edité le 03/09/2009 à 15:08
Vu la complexité des trucs, le respect strict des normes est pas forcément parfait à mon avis Et surtout quand c’est TON jeu qui fait appelle à une fonction de l’api dx et que ca plante car la carte gère mal, ca change rien de la perception du client : jeu de con qui déconne
Selon moi, la principale différence entre le PC et les consoles est le type de jeux.
Si tu préfères les jeux typés manga/anime et/ou les jeux familiaux ( en écran splitté ou partagé ), tu préfèreras les consoles.
Si tu préfères les MMO/FPS/STR/gestion, tu préfèreras le PC.
Pour les jeux de rôles, la différence entre consoles et PC est importante.
Personnellement, je joue sur PC pour des raisons de coûts ( le PC ne sert pas qu’à jouer et il ne faut pas 200 pour transformer un PC bureautique en PC de jeu ). Contrairement à ce que certains disent, un PC a une plus grande durée de vie que les consoles et on peut facilement le remettre à niveau. Le PC existera de toute évidence encore dans 10 ans, la xbos360, la PS3 et la Wii ne seront par contre surement plus commercialisées. De plus, le prix des jeux sur PC dédringole très vite: pour 10, tu as énormément d’excellents jeux.
Edité le 04/09/2009 à 09:29