5 votes

Pourquoi un problème non lié au réseau, comme une carte vidéo inadéquate, me ferait-il perdre du temps dans les jeux de Starcraft II ?

Je n'arrête pas de perdre du temps dans les parties de Starcraft II, même si je suis (modérément) certain que mon réseau est parfait, je suis sur un campus universitaire.

Il me manque cependant des spécifications système, notamment ma carte graphique. Je ne sais pas comment ni pourquoi cela pourrait affecter ma connexion au jeu. Ma motivation est double : je suis curieux de savoir comment cela fonctionne et j'aimerais vraiment jouer à ce foutu Starcraft.

Quelques détails : Macbook pro. 2.16GHz intel core 2 duo. 3GB DDR2 ram. ATY Radeon X1600 128mb

EDIT : J'ai pensé poster cette question sur Superuser mais leur FAQ m'a dit de ne pas poster de question sur les jeux vidéo, alors j'espère que c'est le bon endroit pour le faire.

1 votes

C'est absolument le bon endroit pour venir. Bienvenue dans le monde du jeu.

0 votes

Les réseaux universitaires ont beaucoup de gigue et la bande passante disponible n'est pas toujours constante en raison d'un trafic intense, ce qui pourrait être la cause de ce problème.

0 votes

Réduire la résolution est utile si votre carte graphique n'est pas très performante, mais seulement jusqu'à un certain point, car certaines fonctions dépendent principalement de la puissance du processeur. Donc, commencez avec les paramètres minimums, si cela vous semble jouable, augmentez les paramètres petit à petit et voyez où ça casse.

8voto

Brian Points 13596

UN RAISONNEMENT POTENTIEL :

D'après mon expérience avec Modern Warfare 2, le programme derrière le jeu attend que certaines conditions soient remplies avant d'envoyer un paquet sur le réseau. Par exemple, si votre carte graphique prend trop de temps pour dessiner une image, le programme peut attendre que cette image soit terminée avant d'envoyer ou de lire le prochain paquet réseau. En outre, certains pilotes peuvent choisir de décharger le traitement sur le CPU s'ils détectent qu'il est trop long à terminer dans le temps imparti.

J'aimerais savoir si vous êtes le seul à subir un décalage ou si d'autres personnes le constatent également.

Lorsque mon disque dur externe prend beaucoup de temps pour écrire des données, ma carte réseau arrête de transmettre jusqu'à ce que les autres processus synchronisés soient terminés.

Cela s'explique mieux si l'on considère le cas où vous êtes l'hôte : en tant qu'hôte, il vous incombe de synchroniser tous les autres joueurs. Cependant, si vous mettez beaucoup de temps à terminer les processus de calcul, vous créerez un décalage, même si votre connexion réseau n'est pas surchargée.

Le ping est calculé non pas en fonction de l'encombrement du réseau, mais du temps qu'il faut pour répondre à un paquet. Si la source la plus évidente de retard intermittent est l'encombrement du réseau (mauvaise connexion), dans votre cas, il s'agit probablement d'un retard de traitement, c'est-à-dire que votre ordinateur n'arrive tout simplement pas à suivre la fréquence des messages.

J'espère que cela vous aidera.

SOLUTIONS POSSIBLES :

Si vous jouez à la version native de Starcraft II, je vous suggère de vous assurer que votre OSX est à la version 10.6.3 (revenez en arrière ou mettez à jour si nécessaire) et essayez de jouer avec les paramètres minimums. Si vous jouez sur Bootcamp avec la version PC, je vous suggère d'essayer d'overclocker votre carte graphique ou de mettre à jour les pilotes. Bootcamp est connu pour sous-cadencer les processeurs graphiques afin de maximiser la durée de vie de la batterie.

0 votes

Ps. désolé que la réponse soit si verbeuse :-p

0 votes

Cette réponse n'est que partiellement correcte - l'intérêt de la carte graphique est que le CPU peut faire autre chose (comme gérer le trafic réseau) pendant que les images sont dessinées. Dans un jeu comme Modern Warfare, où les joueurs ne sont que des clients muets, avoir une carte graphique lente peut donner l'apparence d'un décalage, mais le client ne devrait jamais être décalé. Les RTS comme Starcraft, cependant, fonctionnent de manière complètement différente. (architecture pair-à-pair, plutôt que client-serveur) - voir La réponse de @Sylvain

4voto

Merus Points 1452

Je n'ai pas joué à Starcraft II, mais j'ai travaillé sur de nombreux RTS en tant que programmeur réseau, et je vais essayer de vous donner une explication possible de ce qui se passe probablement. Lorsque vous concevez le code réseau d'un RTS, vous avez deux grandes options pour le faire.

La première option est de faire en sorte que chaque machine gère un sous-ensemble d'unités (celles du joueur local et peut-être un joueur contrôlé par l'IA) et d'envoyer à chaque autre machine la modification de l'état de chacune de ces unités (où sont-elles maintenant, ont-elles changé l'animation en cours, leur PV a-t-il changé, ...). Si vous procédez de cette manière, vous réduisez le travail réel de chaque machine (seulement le calcul de la modification pour certaines des unités), mais vous augmentez la bande passante utilisée (puisque vous devez envoyer toutes les modifications).

L'autre alternative est de faire en sorte que chaque machine simule le comportement de toutes les unités, et de n'envoyer entre elles que l'ordre donné par les joueurs puisque vous pouvez reconstruire toutes les modifications d'état à partir de cela. Cependant, la charge de chaque machine augmente. De nombreux jeux (Warcraft III, Starcraft, Supreme Commander, Age of Empire, ...) utilisent ce modèle car il réduit considérablement la bande passante nécessaire. On parle d'un moteur de réseau synchrone . I suspect que Startcraft II utilise aussi ce modèle.

Comment un mauvais GPU peut-il causer un lag ? Eh bien, lorsque vous avez un moteur de réseau synchrone, le pas de temps du traitement de la simulation doit être le même sur chaque machine. Ainsi, la machine la plus lente du jeu en cours est le facteur limitant. De plus, la simulation et le rendu doivent être synchronisés d'une manière ou d'une autre (le rendu dépend de la simulation, et vous ne pouvez pas dire à l'autre boîte que vous avez terminé l'image actuelle si elle n'a pas été rendue). Donc, si vous avez un GPU de mauvaise qualité, le CPU peut l'attendre avant de dire à l'autre boîte qu'elle a terminé son travail.

Cela peut s'aggraver. Comme votre CPU attend votre GPU, vous avez moins de temps que l'autre machine pour effectuer la simulation. Et comme vous devez simuler chaque unité (pas seulement la vôtre, mais celle de chaque joueur), vous avez plus de travail à faire en moins de temps au fur et à mesure que le jeu avance (car il y a probablement de plus en plus d'unités construites par chaque joueur).

En fait, dans les STR modernes, si vous faites une partie avec huit joueurs et que sept d'entre eux ont une machine très puissante et une connexion Internet rapide, mais que le dernier a une vieille machine, alors la partie sera nulle pour tout le monde.

0 votes

+1 c'est la bonne réponse - cela explique aussi pourquoi quelqu'un avec une mauvaise carte vidéo fera en sorte que TOUT LE MONDE soit en retard dans Starcraft. Ayant lu pas mal de choses sur les architectures réseau peer-to-peer, j'étais sur le point de poster la même chose.

1voto

kjv Points 2513

En complément de la réponse de Mechkos :

votre carte graphique est certainement lente. A partir du système minimum exigences :

128 MB PCIe NVIDIA® GeForce® 6600GT
ATI Radeon® 9800 PRO

J'espère que vous avez réduit TOUS les paramètres graphiques au minimum. Le minimum absolu. De plus, mettez à jour tous les pilotes liés aux graphiques. Parfois, cela aide aussi (je ne sais pas pour MAC).

1 votes

Le X1600 est meilleur qu'un 9800 (une génération plus récente, si je ne me trompe pas) ; cela étant dit, il est encore assez ancien par rapport aux normes de jeu, et en tant que tel, vous devriez fonctionner à des paramètres graphiques minimaux comme suggéré par StampedeXV.

0voto

Adi Points 2655

En général, les cartes réseau embarquées nécessitent une interaction avec votre CPU, par le biais d'IRQ (Interrupt Requests). Votre carte graphique a probablement une IRQ inférieure à celle de votre carte réseau, et en tant que telle, elle a la priorité sur votre carte réseau. Puisque votre carte graphique est si peu puissante pour le jeu, elle utilise probablement tellement de cycles de votre CPU qu'il n'en reste tout simplement pas assez pour votre carte réseau, et de ce fait, votre carte réseau ne fait rien, d'où l'effet de décalage.

Il s'agit strictement d'une présomption basée sur votre situation, mais elle est probablement de cet ordre.

Vous pouvez mettre à jour vos pilotes, ce qui pourrait résoudre le problème.

0 votes

Mais tous les systèmes d'exploitation modernes ne programmeraient-ils pas cela pour ne pas provoquer de famine ?

AlleGamers.com

AlleGamers est une communauté de gamers qui cherche à élargir la connaissance des jeux vidéo.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X