[MAJ] Steam Machines : de l'émulation au programme, et c'est mieux que rien

Le par  |  11 commentaire(s)
Steam Machine

Beaucoup s'y attendaient avant même leur sortie : les Steam Machines n'ont pas rencontré le succès attendu, et faute de jeux sur Steam OS, Valve va lancer un module d'émulation.

Trois ans après la présentation des Steam Machines, le projet de Valve de proposer des PC de partenaires tiers opérants sous Steam OS pour permettre à chacun de jouer dans son salon dans les conditions des PC Windows est un échec.

Steam Machine

Peu de machines ont convaincu le public et pire encore : les développeurs n'ont pas suivi Valve dans l'aventure et n'ont ainsi pas adapté leurs titres pour Linux, la base de Steam OS.

Steam Link by Valve

37€ sur Amazon* * Prix initial : 37€.

Mais Valve pourrait donner une nouvelle jeunesse aux plateformes (dont beaucoup se sont finalement retrouvées avec Windows 10 pour finir en PC traditionnel) avec le lancement d'une fonctionnalité d'émulation.

En clair, les joueurs sur Steam Machine pourraient profiter de l'intégralité du catalogue de jeux de Steam, avec toutefois des performances qui pourraient être altérées pour les jeux Windows. Reste à savoir si des machines datées de 3 ans et à la configuration moyenne seront capables de soutenir des jeux récents à travers des émulateurs...

[MAJ]
Ce sont les redditors qui ont repéré une référence au "Steam Play" au sein de la nouvelle interface de Steam OS, précisant même que la fonction lancera automatiquement un "outil de compatibilité" pour lancer des jeux "développés pour d'autres systèmes".

Il ne s'agira pas à proprement parler d'émulation, mais de l'exploitation de Proton, une version modifiée de WINE, qui propose une API Windows pour Linux. Cette technique permet, en théorie, d'offrir un impact minimal sur les performances tout en gérant des fonctionnalités avancées d'autres OS, et notamment dans ce cas DirectX (Vulkan).

Par ailleurs, cette amélioration ne ciblera pas uniquement Steam OS, mais plus globalement Linux. L'objectif étant de permettre aux utilisateurs de l'OS de ne plus se retrouver limités au catalogue de logiciels et jeux spécifiquement dédiés au système et ce, sans non plus se voir handicapés au niveau performances par l'utilisation d'une machine virtuelle ou d'émulateurs.

Merci à LinuxUser pour ses éclaircissements.



Complément d'information

Vos commentaires Page 1 / 2

Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Le #2027983

Le #2027993
Sortez nous un Half Life 3 en avant première sur Steam Machines, suivi 6 mois plus tard de la version PC.

Je vous prédis une explosion fulgurante des ventes et un regain d'intérêt considérable pour vos machines .
Le #2027999
+1 pour Half Life 3 sous Steam OS profitant de Vulkan cela peut donner un sacré coup de pouce au steam machine & steam OS donc à Linux.

D'ailleurs j'y joue pas mal à steam sous Linux mais j'aimerais qu'il y ait plus de jeux windaube compatible même s'il faut un peu plus de puissance sous nux via émulation de bonne qualité m'en fou

Déjà Doom qui est de base en OpenGL puis maintenant en mode Vulkan n'est pas par défaut jouable sous nux un comble tout de même.
Le #2028030
Oui mais un seul jeu ne fera pas une console. Pour moi c'est mort.
Les éditeurs ne veulent plus prendre de risques.
Le #2028037
Quelle surprise... La Steam Machine a été un échec ! Ça alors, mais qui aurait pu prévoir ça ?
Non mais sérieux... Il y a déjà 3 consoles de salon, et les PC sous Windows qui rassemblent tous ensemble 99% des joueurs. Pourquoi les développeurs/éditeurs s'amuseraient-ils à faire des jeux qui ne leur rapporteront rien, à part l'approbation des quelques geeks qui jouent sur Linux ? Aucun intérêt.
Restent les développeurs indépendants qui peuvent trouver là un marché de niche non occupé par les gros éditeurs.
Entendons-nous bien, Linux, c'est très bien, mais ça n'est financièrement pas intéressant pour les acteurs du jeu vidéo.

Et ce n'est pas Half Life 3 sur Steam Machine qui y changera quoi que ce soit. Ça leur fera peut-être vendre quelques dizaines, voire centaines de milliers de machines, mais ça les fera pas devenir un acteur majeur du marché de la console et de l'ordinateur ludiques, faut pas rêver.

Qu'ils sortent donc Half Life 3 sur PC et sur consoles, mais qu'ils se dépêchent, parce que plus le temps passe, plus l'intérêt de la licence Half Life risque de sombrer dans l'oubli. Déjà, tout le monde n'aime pas les FPS, mais il est clair que la majorité des joueurs de moins de 20 n'ont même jamais joué à Half Life 1 ou 2.

Et rien ne garantit qu'un hypothétique HL3 sera génial de toute façon. On peut l'espérer mais on ne peut pas l'affirmer.
Le #2028065
M'en fous de HL3, j'y crois plus.
Je veux un Portal 3 par contre.
Le #2028077
Alors beaucoup de raccourcis hasardeux dans cette article...

- SteamPlay (car c'est de cela dont on parle), ne sera pas reservé aux Steam Machines, ni a SteamOS, mais a tous les utilisateurs sous Linux (ce qui inclus SteamOS sur les SteamMachines, mais pas que, loin de la car je pense qu'il y a plus d'utilisateurs Linux que de SteamMachines)
- Ce n'est pas de l'émulation, pas du tout, c'est un "runtime abstration layer", Proton, qui est une version modifiée de WINE (qui signifie: Wine Is Not an Emulator)

En gros proton/Wine fourni une API Windows pour Linux.
De plus, ils ont intégrée DXVK pour permettre la compatibilté DirectX10/11 et DK3D pour DirectX12 au travers de Vulkan.

https://steamcommunity.com/games/221410/announcements/detail/1696055855739350561

https://github.com/ValveSoftware/Proton/

- il n'y a donc *AUCUNE* émulation au programme (ça serait d'ailleurs contre-productif)
- cela ne concerne *PAS QUE* les Steam Machines

Le titre est donc faux (sans parler de l'article) et c'est bien dommage, car bien que le sujet m'intéresse j'étais a deux doigts de passer a coté (j'ai regardé toutes les actus Steam car je ne comprenais pas que vous étiez les seuls à ne pas parler de SteamPlay...)

EDIT: Merci à GNT pour la maj

EDIT2: encore plus d'infos ici:

https://steamcommunity.com/games/221410#announcements/detail/1696055855739350561

- il faut pour le moment avoir le client Steam Beta
- la liste de jeux compatibles (une 20aine) est fournie
- il est possible d'activer SteamPlay pour tous les jeux, même ceux qui ne font pas partie de la liste (peut être des bidouilles à prévoir pour que ça fonctionne bien)
- un gros travail a été fait pour supporter le plein écran, les manettes Steam et la VR (d'autres manettes seront supportées par la suite)
- les modifications faites sur Proton sont partagées upstream pour que WINE profite du développement fait sur Proton
- il est possible d'utiliser sa propre build Proton (via le client Stream) et de soumettre des patchs
- Valve participe également au développement de DXVK
- durant la phase de beta, les jeux dans la liste supportées ne seront pas taggés "compatibles Linux" sur le store (logique)
- ils utilisent wine-esync (wine + esync: une liste de patchs non officiels qui améliorent les performances en multithreading)


Le #2028079
Grebz a écrit :

Quelle surprise... La Steam Machine a été un échec ! Ça alors, mais qui aurait pu prévoir ça ?
Non mais sérieux... Il y a déjà 3 consoles de salon, et les PC sous Windows qui rassemblent tous ensemble 99% des joueurs. Pourquoi les développeurs/éditeurs s'amuseraient-ils à faire des jeux qui ne leur rapporteront rien, à part l'approbation des quelques geeks qui jouent sur Linux ? Aucun intérêt.
Restent les développeurs indépendants qui peuvent trouver là un marché de niche non occupé par les gros éditeurs.
Entendons-nous bien, Linux, c'est très bien, mais ça n'est financièrement pas intéressant pour les acteurs du jeu vidéo.

Et ce n'est pas Half Life 3 sur Steam Machine qui y changera quoi que ce soit. Ça leur fera peut-être vendre quelques dizaines, voire centaines de milliers de machines, mais ça les fera pas devenir un acteur majeur du marché de la console et de l'ordinateur ludiques, faut pas rêver.

Qu'ils sortent donc Half Life 3 sur PC et sur consoles, mais qu'ils se dépêchent, parce que plus le temps passe, plus l'intérêt de la licence Half Life risque de sombrer dans l'oubli. Déjà, tout le monde n'aime pas les FPS, mais il est clair que la majorité des joueurs de moins de 20 n'ont même jamais joué à Half Life 1 ou 2.

Et rien ne garantit qu'un hypothétique HL3 sera génial de toute façon. On peut l'espérer mais on ne peut pas l'affirmer.


"développeurs/éditeurs s'amuseraient-ils à faire des jeux qui ne leur rapporteront rien, à part l'approbation des quelques geeks qui jouent sur Linux ? Aucun intérêt."

C'est la ou tu te méprend.

Si tu dev un jeu Windows avec des technos qui ne sont compatibles qu'avec Windows, alors effectivement faire un portage sera plus complexe (et donc plus cher), donc cela peut représenter peu d'intérêt.
Pour relativiser, même comme cela, il y a des sociétés qui se proposent de faire le portages et de se rémunérer via un % sur les ventes (rien que le fait que ces sociétés existent contredit ton argumentation).

Ensuite, si tu développes un jeu en ayant en tête le multiplateforme dès le début, le coup du portage est trivial, donc même si tu as 100 utilisateurs sous Linux, ils te rapportent de l'argent.

D'ailleurs, il est assez simple de voir qu'il y a énormément de jeux indés (donc des boîtes avec peu de moyens qui ne peuvent pas se permettre de gaspiller) qui sont compatibles Windows/Mac/Linux, comme tu le dis toi même:

"Restent les développeurs indépendants qui peuvent trouver là un marché de niche non occupé par les gros éditeurs."

Oui mais si les devs indépendants perdaient de l'argent a faire des portages ou a rendre compatible leur jeu pour un faible % des utilisateurs, ils ne le feraient pas et resteraient cantonnés à Windows (donc tu contredis toi même ton premier argument).
Si ca ne rapporte pas, ca ne rapporte pas, quel que soit le taux d'occupation de la niche..

Par contre, tu soulèves un point très intéressant "un marché de niche non occupé par les gros éditeurs".
Effectivement il y a moins de 1% des joueurs Steam sous Linux, mais ce pourcent vaux plus cher que son équivalent sous Windows, car la concurrence y est moins rude et la visibilité plus grande.

Donc si un gros éditeur développais un jeu pensé dès le début pour être multiplateforme, non seulement ca ne lui couterais pas beaucoup plus cher, mais en plus sur le segment Linux il raflerait des PDM monstres (si le jeu est bon, cela va de soi).
Alors certes, cela ne va pas non plus rattraper les bénéfs possibles avec Windows, mais ça reste du bénéf.

C'est toujours pareil, comme les boites il y a quelques années qui ne voulaient pas de Linux (a tord), aujourd'hui elles sont dans la merde car elles cherchent des compétences Linux qui sont du coup assez rares (par leur faute), le bon coté (pour la recherche d'emploi) c'est que ces compétences sont par rebond très bien rémunérées et la concurrence faible.
Celles qui au contraire ont fait un pari il y a quelques années ont déjà ces compétences en interne et n'ont pas tous ces soucis.


Anonyme
Le #2028084
Je pense que sur le plan de la rentabilité, on a beaucoup moins d'infos que ceux qui ont étudié le marché et les coûts. Donc je vois pas comment il est possible de critiquer le projet sur cet aspect. Les types ne sont pas des fous loin de là.

Comme le dit très bien LinuxUser, il y a un gros problème dans l'article qui parle d'émulation (donc quelque chose qui pénalise énormément les performances en faisant fonctionner un nouveau noyau pour fournir des services) alors que la techno utilisée c'est juste de la traduction d'API (c'est ça WINE, ce n'est PAS DU TOUT de l'émulation).

En gros pour faire simple: le jeu "se croit sous Windows" avec son ensemble de bibliothèques windows alors qu'en fait, les fonctions / procédures qu'il appelle ont été ré écrites pour fonctionner dans un autre environnement.

En théorie il n'y a donc quasiment pas de ralentissement (sauf si la nouvelle API est mal codée ou que certains appels directx n'ont pas d'équivalents aussi rapides sous Vulkan, et j'en doute).

Après, est-ce que le projet sera une réussite, bin, c'est tout ce qu'on peut lui souhaiter non ?

PS1

Merci à LinuxUser pour les précisions techniques fournies, je voulais juste vulgariser un peu ton propos pour ceux qui ne savent pas ce qu'est un runtime abstraction layer.

PS2
Je me demande par contre si le jeu aura le même visuel. Par exemple, sous vulkan il me semble qu'il y a beaucoup d'appels de type shader (des mini programmes compilés pour être exécutés directement par le GPU) dans la lignée de la dernière évolution d'OpenGL 3.x
Une explosion de bombe codée sous directX12 nécessiterait la programmation de shaders sous Vulkan non ? Du coup, je me demande comment ils peuvent faire techniquement sans altérer le visuel initial.
Le #2028086
Je t'en prie

Honnêtement mes compétences sur le sujet atteignent leurs limites, je ne peux pas te dire.

A priori c'est VXDK pour DirectX10/11 et VK3D pour DirectX12.

Tout ce que je sais pour avoir testé DXVK, c'est que cela ne nécessite que d'écraser (ou copier si pas présentes) deux dll: d3dx.dll et dxgi.dll dans le répertoire ou se situe le binaire du jeu (et au final DXVK c'est ça: deux dlls https://github.com/doitsujin/dxvk/releases ).

Donc je suppose que DXVK, c'est la réecriture de fonctions Direct3D (qui vont conserver leur nom et leur utilisation, comme les arguments, les valeurs de retour etc) pour qu'elles utilisent Vulkan.
Du coup le programme parle toujours en Direct3D à... Vulkan (sans surcout).

Sous WINE, pour faire fonctionner TESO (The Elder Scrolls Online) avec DXVK (il fonctionne de base mais ya des gros soucis graphiques), il faut:
- avoir les drivers Vulkan sur ton Linux
- avoir un WINE compatible Vulkan (ca je n'en suis pas sur étant donné que le jeu va utiliser directement Vulkan grâce aux dll, en tout cas il faut bien entendu une version récente)
- installer Vulkan dans ton wineprefix
- copier/écraser les 2 dll DXVK comme indiqué ci dessus
- indiquer à WINE d'utiliser ces 2 dll natives (wineconfig / bibliothèques)

Perso je fais tout avec PlayOnLinux, le seul truc c'est que j'utilise les binaires WINE qui viennent de Lutris (car ils compilent wine-staging en 64 bits - TESO est en 64 bits -, ce que ne fait pas PlayOnLinux).
Il suffit de copier les WINE de Lutris dans le répertoire de PlayOnlinux qui va bien pour ensuite pouvoir sélectionner ces versions dans la gui

Ça parait compliqué, mais une fois que tu as les bons liens, ça prend 5 min.

Attention cependant, pour tout ce qui est FPS multijoueur etc, je déconseille ***fortement*** d'utiliser DXVK !
Pourquoi ? et bien ca va fonctionner pas de souci, par contre remplacer les dll de DirectX, c'est aussi ce que font ceux qui font du WallHack, donc si l'éditeur voit que vous avez remplacé cette dll, vous risquez le ban...
Je suppose que Valve va dialoguer avec les éditeurs pour que ceux ci approuvent les empreintes des dll DXVK utilisées par SteamPlay (ou le fera suite aux premiers bans).
Suivre les commentaires
Poster un commentaire
Anonyme
Anonyme