Bonsoir les gamers,
à défaut d'avoir un forum nettoyé des trolls et floods Il est temps de centraliser toutes les informations concernant les diverses fonctionnalités de la prochaine console de Microsoft dans des topics balisés.
On va commencer par cette fonction qui interroge beaucoup de gens : le "cloud".
Cette notion semble générer beaucoup de fantasmes voir de mésentente et il est grand temps d'expliquer en quoi ce service est unique en son genre, tant sur ce qu'il propose côté joueurs que côté "développeurs" (comme moi ^^).
Nous avons eu le plaisir d'avoir une longue interview d'un développeur de Respawn Entertainement (TitanFall) qui décrit avec précision les avantages du cloud version Microsoft.
http://www.respawn.com/news/lets-talk-about-the-xbox-live-cloud/
Je reviendrais sur certains point avec mon expérience personnelle, car nous travaillons depuis 1 an avec Azure (le cloud de Microsoft) à mon travail.
En attendant, à la demande de certains ai donc traduit les grandes lignes de l'interview ci dessus et ajouté parfois quelques précisions en restant le plus objectif possible.
Enjoy
Bon je ne vais pas faire une traduction mot pour mot mais en expliquer les contours comme le ferait un bon journaliste.
Le bien nommé Jon Shiring développeur sur Titanfall nous explique que deux notions doivent être détaillées à savoir la notion de « serveur dédié » et en quoi consiste le « Xbox Live Cloud ».
1/ LES SERVEURS D’HIER ET AUJOURD’HUI
Avant d’aller plus avant, le développeur propose une rétrospective des systèmes multi-player actuels : les « serveurs dont le joueur est l’hôte » (Player-Hosted Servers)
La grande majorité des jeux en ligne actuels et passés on un principe de base, le fait qu’une partie soit hébergée chez un joueur qui « décide » de ce qui va se passer durant la partie en ligne (si il déconnecte la partie s’arrête, si sa connexion est lente tous les joueurs souffrent de lag).
Le développeur énumère quels sont les problèmes habituels rencontrés par ce type de « Player-Hosted Servers » :
1.1 Comment se passe une partie où joueur « hôte » a une connexion lente et cause du lag ?
Généralement il est assez difficile pour un serveur de contrôler rapidement quel est le joueur qui a la plus grosse bande passante et la connexion la plus stable d’une partie (surtout avec de nombreux joueurs). Donc souvent on se retrouve avec des jeux qui laguent avec des temps de latence parfois très contraignants pour TOUS les joueurs de la partie. En temps que joueur on est en droit d’attendre une expérience de jeu identique, sans avoir peur de ce genre de choses … le développeur dit que pour eux c’est pareil, leur but est de proposer une super expérience de jeu à tous moments sans que les joueurs soient pénalisés.
1.2 A propos de l’avantage du joueur hôte
On l’a tous remarqué, celui qui « héberge » la partie n’a aucune latence contrairement aux autres joueurs. Dans beaucoup de jeux quelques secondes (voir dixièmes de secondes) le joueur qui héberge a un avantage « artificiel » sur les autres… et ca n’est pas juste.
1.3 Quand le joueur est un tricheur
Souvent dans des jeux on voit des joueurs avec des stats abusées, des gamescores hallucinants ou autres avantages tellement importants qu’ils nuisent au plaisir des joueurs qui eux n’ont pas triché. Ce genre de comportement peut décourager, peut aussi dégouter les fans… voir décrédibiliser les studio de développement.
1.4 Quand l’hôte se déconnecte
Dans le meilleur des cas on peut migrer vers un des joueurs qui a le plus de bande passante … le jeu se met en pause et se relance une fois la migration finie. Ce qui casse le rythme des parties (on peut attendre plusieurs minutes parfois) et ca n’est même pas sûr de marcher à chaque fois.
1.5 Et si la bande passante de l’hôte « disparaît » (baisse drastiquement)
Le serveur choisi le joueur qui a le plus de bande passante. Mais si en cours de partie il décide de télécharger des torrents et qu’une autre personne décide de streamer un film la « super » bande passante disparaît et ca devient alors la foire au lag pour tous les joueurs de la partie.
1.6 Et si quelques joueurs ne peuvent « parler » à l’hôte ?
Le développeur parle de protocole « Open NAT ». En gros lors d’une partie on ouvre notre routeur au serveur hôte afin de coopérer. Pour des questions de protocoles (ex : Proxy) les parties ne peuvent pas fonctionner correctement voir pas du tout. Par ailleurs en « ouvrant » les protocole du routeur à un serveur externe, on ouvre notre réseau personnel à bien d’autres protocoles pas forcément voulus (surtout sur PC). Donc en jouant en ligne les joueurs peuvent compromettre la sécurité de leur réseau…
1.7 Et si personne n’a assez de bande passante ?
La partie ne peut être assurée et pour le développeur proposer quand même une partie avec du lag et des déconnexion n’est pas une solution viable.
1.8 Pour ceux qui ont des restrictions de bande passante ?
Beaucoup de pays n’ont pas de connexion illimitée comme en France. Héberger une partie peut faire grimper très rapidement cette limite. Dommage de se retrouver avec une connexion faible pour le reste du mois (Fair Use comme sur mobile ici) juste pour une partie en ligne.
1.9 Donc si j’héberge une partie c’est ma machine qui fait le boulot pour tout le monde ?
Et bien OUI ! Votre CPU fait beaucoup plus de calculs que sur les machines des autres joueurs. Ce qui veut dire que le jeu est moins beau et moins fluide que ce qu’il devrait être. Donc tout le monde a un jeu « tronqué » car potentiellement tout le monde peut héberger une partie. En gros puisque le CPU de l’hôte est victime de l’hébergement il ne sert à rien d’avantager le CPU des autres.
DONC on s’aperçois que les serveurs actuels on beaucoup de côtés négatifs. Alors pourquoi la plupart des jeux tournent avec ce système ? Car ca ne coûte rien aux éditeurs ! Faire tourner des centaines de milliers de serveurs coute extrêmement cher. Donc pour ne pas compromettre le pouvoir d’achat des joueurs, et ne pas augmenter le prix des jeux en conséquence, les développeurs ont jusqu’alors décidé de se passer de serveurs dédiés.
2 LES SERVEURS DEDIES
En quoi ca consiste un serveur dédié ? C’est quand un ordinateur tournant sur Internet gère l'ensemble des fonctions d'accueil (hôte), et donc les joueurs deviennent TOUS juste des participants au réseau…
Donc :
- Le CPU du serveur distant peut gérer l’IA indépendamment de la console (ex : les Titants s’auto-piloteraient dans Titanfall)
- Il n’y a plus d’hôte avantagé par rapport aux autres (voir 1.2)
- La bande passante est assurée par le serveur (voir 1.5, 1.6, 1.7, 1.8)
- Toute la charge du CPU dédiée au réseau est gérée par l’ordinateur/le serveur distant. (voir 1.9). La machine (console , PC) n’a alors plus qu’à s’occuper du graphisme et du moteur physique.
- Plus possible de tricher sur sa partie comme la vielle technique qui est de réduire la bande passante en cours de partie (voir 1.3)
- Le Matchmaking est bien plus stable et plus égalitaire (voir 1.1)
- Plus de problême d’hôte qui en se déconnectant arrête la partie. Plus besoin de migration non plus (voir 1.4)
L’expérience de jeu est alors parfaite pour les joueurs ! Bref c’est juste génial !
Mais ça coûte BEAUCOUP d’argent !
Et aucun éditeur tiers n’a les ressources financières et humaines nécessaires pour faire tourner et maintenir en place un réseau de centaines de milliers de serveurs. En gros un studio de développement a pour vocation de faire des jeux pas d’ouvrir des serveurs au monde entier… chacun son métier en somme.
Le développeur dit en outre, « le plus de temps je passe à faire le jeu, au mieux il sera »… donc chacun son job ^^
Les studios ont donc décidé de parler à Microsoft et Sony pour leur expliquer que les développeurs avaient besoin d’avoir des serveurs dédiés pour faire des jeux bien plus vastes qu’aujourd’hui et qu’il fallait trouver des solutions moins chères que les serveurs dédiés actuels. Microsoft a réalisé que les « serveurs dont le joueur est l’hôte » font que le jeu online ne peut plus évoluer et a donc décidé de penser à une solution allant dans le sens des serveurs dédiés.
La branche Xbox est donc revenue vers les développeurs de TitanFall pour leur proposer d’héberger leurs parties sur les serveurs dédiés de Microsoft. Laissant ainsi le studio de développement tester de nouveaux outils permettant des mondes ouverts plus grands, plus de « physics » (moteur physique ?), plus d’IA..etc
3 LE CLOUD EN GENERAL
- AMAZON a un cloud qui alimente des sites internet.
- SONY a un cloud (Gaikai) qui streame les jeux vidéos, donc de jouer à des jeux qui ne sont pas dans la console.
- Le XBOX LIVE a maintenant un cloud qui permet d’améliorer la puissance des jeux.
Le développeur dit que ce sont des technologies qui n’ont rien à voir, mais qu’on les regroupe communément sous le nom de « cloud » à des fins purement marketing.
« Permettez-moi de vous expliquer cela simplement: quand les entreprises parlent de leur Cloud, tout ce qu'ils disent, c'est qu'ils ont une énorme quantité de serveurs prêts à exécuter ce dont vous avez besoin pour fonctionner. Voilà tout. »
4 LE CLOUD VERSION XBOX LIVE
Microsoft a donc un service de cloud nommé Azure. C’est une vraie solution qui existe vraiment avec un site web complet pour expliquer comment ca marche (il insiste pour les neuneux qui mettent en doute Microsoft). La companie de Redmond a donc réalisé qu’ils pouvaient utiliser ce système pour accéder à la demande des développeurs.
Il ont donc construit un système de réseau en ligne très puissant pour permet aux développeurs de se focaliser sur la création des jeux. Microsoft assurant dorenavant toute la partie online. ET Microsoft en plus de se charger du déploiement des jeux sur les serveurs, hébergera les parties en ligne sur 3 plateformes : PC, Xbox One….et 360 (donc Titanfall sera le premier jeu 360 à utiliser le Cloud) !
Mais les services du « Xbox Live Cloud» ne se limitent pas aux serveurs dédiés ! Microsoft à la demande des développeurs propose donc toutes sortes de « features » pour améliorer tous les jeux. Il cite l’exemple de Forza 5 qui permet de générer des IA à partir de nos styles de jeu (rendant toutes nos parties solo bien moins prévisibles). Il avoue que sur Titanfall il n’ont pas pensé à ça et que c’est génial de voir d’autres développeurs utiliser cette nouvelle fonction d’une manière inattendue… donc qu’on a pas fini d’être surpris par cet outil !
Le « Xbox Live Cloud » différent des autres serveurs dédiés ? Pour le développeur oui dans le sens où ils n’ont plus à se soucier de combien de serveurs ils vont devoir se servir pour le lancement du jeu. Plus besoin de louer des serveurs aux quatre coins du globe, le jeu marchera parfaitement en ligne dès son lancement. Plus de maintenance non plus puisque c’est Microsoft qui s’en charge, plus besoin de faire des copies à chaque ouverture de nouveaux serveurs. Bref beaucoup plus de temps pour se focaliser sur la création du jeu.
Le top ? Microsoft a disposé des serveurs de partout sur le globe, assurant des connections stables, sans latence…
Bien plus important encore, Microsoft propose des prix bien plus abordables que n’importe quel autre solution d’hébergement afin de proposer aux joueurs des toujours plus impressionnants.
Pour toutes ces raisons, les développeurs ont enfin un outil leur permettant de ne plus avoir à faire de compromis afin de proposer des services en ligne enfin performants et surtout ouvrant à des choses encore impossibles jusqu’alors (monde persistants ? écosystème indépendant ? planète virtuelle ?)
Bref il dit que côté développeurs ils sont vraiment excités car ils peuvent proposer des choses impossibles sur les serveurs où l’hôte est un joueur comme actuellement. Et pour lui le plus beau reste à venir…
j'ai tout lu c'est bien clair nikel
merci a toi (je me permettrait de faire un copier/coller sur un autre forum si cela ne te derange pas)
Super, j'ai tout lu et j'ai appris plein de trucs. merci
MystiK[]X
Posté le 25 juin 2013 à 01:12:14
Trois nouvelles features du Xbox Live viennent d'être révélés sur la Xbox One. Microsoft promet qu'il y en a plusieurs autres qui sont "inédites".
Système de Matchmaking intelligent :
Avez-vous déja joué à un jeu multi qui à été déserté par la population et pour lequel il faut attendre une éternité devant sa console sans rien faire avant de trouver des membres ? Sur Xbox One, ce sera fini puisque le système fera un rapide calcul du nombre de joueurs du monde entier et donnera une estimation du temps nécessaire avant de trouver une partie. Pendant ce temps, à l'aide du multitâche, il sera possible de regarder la télé, jouer à un autre jeu ou lancer un film ou une application. Lorsqu'une partie est trouvée, une notification se lance pour inviter le joueur à retourner immédiatement au jeu. Il sera également possible de trier les parties en fonction de l'âge, du pays et même du skill.
Système de réputation intelligent.
Marre des kévins qui hurlent comme des singes dans call of duty, font du friendly fire à outrance, des kékés-racistes qui insultent à tout va et ruinent le jeu, ou les beaufs qui chantent à tue-tête au micro et roulent en sens inverse dans Forza ? Le Xbox Live aura un système de réputation qui vous récompense pour bon comportement. Plus vous passerez de temps en ligne sans qu'on ne se plaigne de vous et sans qu'on vous mute, plus haute votre réputation sera. Vous serez placés dans des parties avec des gens qui ont une réputation similaire à la votre, ce qui fait que les fouteurs de merde seront entre eux. Avec la puissance du Cloud, la réputation est calculée en temps réel et indépendamment de chaque jeu. Par ailleurs, Microsoft assure qu'il n'y aura pas d'abus et de plaintes pour rien puisque le système calcule sur une large échelle.
Serveurs dédiés
Probablement le plus important pour les gamers, et c'est maintenant définitivement confirmé : Tout les jeux multijoueur Xbox One seront hebergés sur des serveurs dédiés. Ce qui signifie : plus d'hôte, plus de lag, plus de sessions qui se coupent, plus de migrations de serveurs etc.. Microsoft entend par ailleurs tirer parti de la puissance du Cloud pour fournir une fluidité maximale et pour tout les jeux multis.
http://majornelson.com/2013/06/11/xbox-one-smart-match/
http://www.wired.com/gadgetlab/2013/05/xbox-one/
Des magasines sont d'ailleurs déja en train de dire que la Xbox One l'emporte (une fois de plus) sur la Playstation 4 en terme de multijoueurs.
http://n4g.com/news/1288714/xbox-one-winning-on-multiplayer-features
au passage pour le financement du cloud : http://www.xboxgen.fr/xbox-one-investissement-colossal-cloud-datacenter-microsoft-actualite-29429.html
et ça pour le financement des jeux : http://www.purebreak.com/news/xbox-one-1-milliard-de-dollars-pour-les-jeux-microsoft-sort-l-artillerie-lourde/58671
Merci beaucoup. C'est très intéressant.
Jerry de l'échange de C/C.
Moi aussi ^^
IlGrandeCorvo
Posté le 24 juin 2013 à 12:58:51
chefgeorges
http://www.oxm.co.uk/56771/titanfall-watch-dogs-developers-discuss-xbox-ones-cloud-computing-advantage/
La cloud computing décharge le CPU de certaines tâches.
En théorie, il permettra d'améliorer ces éléments :
◾Game physics (update models)
◾Triangle setup and optimisation
◾Tessellation
◾Texturing
◾Shading
◾Various render passes
◾Lighting calculations
◾Post effects
◾Immediate AI
◾Ambient (world) AI
◾Immediate physics (shots, collisions)
◾Ambient physics
J'ai tout lu, et j'en conclu que Microsoft a visiblement acquis une grande connaissance et un certain professionnalisme dans ce domaine.
On voit clairement qu'ils ont une ambition débordante pour les joueurs et les développeurs, au point d'investir autant dans une telle structure.
Je pense que sera très agréablement surpris sur les jeux Xbox One. Surtout sur le XBOX Live lui même, où nous aurons une "qualité" bien supérieur à ce qu'ils ont déjà perfectionné sur Xbox puis sur Xbox 360.
Bref, si les développeurs y trouvent beaucoup d'intérêt dans le développement de leurs jeux, alors nous pouvons leur faire confiance.
bravo ! tu gère mec !
◾Game physics (update models)
◾Triangle setup and optimisation
◾Tessellation
◾Texturing
◾Shading
◾Various render passes
◾Lighting calculations
◾Post effects
◾Immediate AI
◾Ambient (world) AI
◾Immediate physics (shots, collisions)
◾Ambient physics
Leur Cloud peut réellement gérer tout ça ? Sans contraintes chez le gamer ? Je veux dire en fluidité, ils en parle ?
Un article super interessant sur l'avis de développeurs :
http://www.xboxgen.fr/xbox-one-cloud-avis-impressions-developpeurs-titanfall-watch-dogs-joel-emslie-dominic-guay-actualite-29389.html
Titre en maj, je lock
@ HaloTheLegends >
oui c'est possible mais peut être pas tout en même temps ^^
en fait l'avantage du cloud processing est qu'il tient en compte 2 choses : les besoins du logiciel/de la machine ET la qualité de connexion.
la grande question reste la Latence côté joueur à cause de sa propre connection.
au boulot on a réglé le problème de cette manière :
- on précharge des calculs et des objets par petits paquets sur le Disque Dur du PC physique pour s'assurer de performance haute dès les premières minutes d'utilisation (en fait on simule sur le HDD le cloud ^^)
- les process physique et online se lancent
- dès que le PC physique n'a plus besoin des process online, la machine virtuelle continue de marcher en préchargeant des process au cas où le PC ai de nouveau des besoins importants ou si la connexion vienne à diminuer voir s'arrêter.
- ainsi dessuite...
le plus dur sera donc de synchroniser les calculs "physiques" et "online" à la micro-seconde pret. C'est une latence infime mais qui pourrait causer pas mal de bugs ! D'où mon septicisme sur les jeux à 60FPS online... mais je ne suis pas dans le secret des dieux, peut être on-til trouvé la parade ???
@_comboultra84_ Ok je comprends mieux. Je pense tout de même qu'ils ont trouvés une parade, sinon quel intérêt d'investir autant pour offrir une expérience "bridé" chez les joueurs.
Le mieux est qu'ils se servent de seulement quelques éléments par rapport aux besoins du jeu.
Par exemple sur un FPS comme BF4, il faudra nettement booster la physique et la fluidité dans le gameplay, pourquoi pas sur les textures mais je doute qu'ils pourront utiliser tout ça chez des milliers de joueurs simultanément connecté.
J'imagine un BF4 avec des détails au niveau des meilleurs PC actuel, grâce au Cloud de Microsoft, mais je pense que je rêve trop...
Par contre...
en tant que designer (car c'est mon vrai poste... à ne pas confondre avec infographiste, je suis "architecte" web et mobile) j'imagine surtout que ces serveurs vont plus servir à l'IA et au réseau qu'autre chose.
la bonne nouvelle (et ça m'avait échappé) c'est que sur ONE toute la partie du CPU dédiée au online sera géré par le Cloud. Sur PS4 ca sera le CPU de la console "hôte" qui devra faire les calculs...
Sinon l'idée de serveurs dédiés et donc open 24/24 c'est l'opportunité d'avoir un monde qui vit indépendamment des joueurs humains. Imaginez nos avatars virtuels continuer à nous représenter malgré notre absence physique. Nos persos continueraient à participer à nos place à des événements majeurs... ou alors les mondes verraient leur éco-système évoluer seul. Imaginez qu'un joueur parte d'un matchmaking à 10 contre 10, et q'il soit immédiatement remplacé par une IA à son image, rééquilibrant immédiatement la partie ... Quoi d'autre ?
C'est pour ca que je partage l'enthousiasme du développeur ! Les possibilités matérielles sont enfin là.
@HaloTheLegends
mais je doute qu'ils pourront utiliser tout ça chez des milliers de joueurs simultanément connecté.
notre seul serveur fait fonctionner 350 postes PC de part le monde, recoit des données de plus de 500 000 terminaux de paiement (les petits boitiers de carte de crédit dans les boutiques/resto) et transite jusqu'à 150 millions d'opérations bancaires / minute (comprenant donc transit vers serveur des banques, identification, vérification et autorisation)...
et j'ose même pas imaginer le faible % que ca représentes sur ce que le serveur peut faire ^^
x300 000
honnêtement au boulot on y croit absolument pas à ce chiffre
@_comboultra84_ Oui les outils sont à disposition, il suffit maintenant aux développeurs se trouver une multitude d'innovation dans leurs jeux, que l'on ne pense pas forcément à intégrer dans un jeu, ou des choses qu'on ne pouvait pas appliquer à cause des configurations trop stagnante sur le long terme avec nos consoles actuelles.
Le cloud, expliqué de cette manière, je suis très confiant par rapport aux expériences de jeux que l'on bénéficiera.