Je sais que Sean James l'a déjà dit . Mais sérieusement, Visual Studio (en particulier les outils de débogage) est formidable pour cela.
Je n'utilise pas beaucoup le C ++ de nos jours, donc je ne sais pas dans quelle mesure ceux-ci s'appliquent ici. Mais pour C # (y compris dans C # Express) vous avez:
Et cela pourrait vous couper le souffle (ça m'a fait exploser quand je l'ai découvert):
La fenêtre immédiate est en fait assez difficile à trouver (elle se trouve dans le menu Debug / Windows).
Le seul inconvénient majeur de l'utilisation du débogueur Visual C # est qu'il n'aime pas changer les const
valeurs. Donc, je fais généralement mes valeurs liées au gameplay static
pendant que je les ajuste.
(Aussi: avoir deux moniteurs aide beaucoup.)
Maintenant, je dois admettre que la méthode ci-dessus implique de suspendre votre application, ce qui peut être insuffisant pour quelques choses particulièrement délicates.
Dans ces rares occasions, ce que je fais (dans XNA) est de simplement pirater un peu de code (probablement en utilisant Edit et Continue, comme ci-dessus) pour récupérer Keyboard.GetState().IsKeyDown()
(en fait, j'ai un wrapper plus facile à taper pour cela) et ajuster le valeur par touches. Rien de plus compliqué ne vaut l'effort.
Dans la pratique, ce que je trouve généralement beaucoup plus important est de pouvoir visualiser (plutôt que modifier) les valeurs en temps réel. Pour cela, j'ai une jolie petite classe qui peut tamponner des lignes et du texte à dessiner à la fin du cadre. Il est également utile pour le prototypage rapide.
(Et, encore une fois, c'est agréable de pouvoir "éditer et continuer" ces visualisations au moment de l'exécution.)
(source: andrewrussell.net )
( d'ici )
Je crains de ne pas avoir de "belle" source à publier pour le moment (peut-être plus tard). Mais il s'agit essentiellement d'une liste de lignes (pour cette bibliothèque de lignes rondes ) et de chaînes (pour SpriteBatch intégré à XNA). Faites-le public static
quelque part et dessinez tout avec une transformation appropriée pour que tout apparaisse dans "l'espace du monde" (puis effacez les listes pour la prochaine image).