Eu sei que Sean James já disse isso . Mas, falando sério, o Visual Studio (especificamente as ferramentas de depuração) é ótimo para isso.
Atualmente, não uso muito C ++, por isso não tenho certeza de quão bem eles se aplicam lá. Mas para C # (inclusive no C # Express) você tem:
E isso pode explodir sua mente (ele explodiu a minha quando eu descobri sobre ele):
A Janela Imediata é realmente difícil de encontrar (está no menu Debug / Windows).
A única grande desvantagem de usar o depurador do Visual C # é que ele não gosta de alterar const
valores. Então, eu geralmente apenas fazer meus valores relacionados com o jogo static
, enquanto eu estou aprimorando-los.
(Além disso: ter dois monitores ajuda muito.)
Agora devo admitir que o método acima envolve pausar seu aplicativo - o que pode ser insatisfatoriamente lento para algumas coisas particularmente complicadas.
Nessas raras ocasiões, o que faço (no XNA) é simplesmente invadir um pouco de código (provavelmente usando Editar e Continuar, como acima) para pegar Keyboard.GetState().IsKeyDown()
(na verdade, tenho um wrapper mais fácil de digitar para isso) e ajustar o valor por pressionamentos de tecla. Qualquer coisa mais complicada não vale o esforço.
Na prática, o que geralmente acho muito mais importante é poder visualizar (em vez de modificar) valores em tempo real. Por isso eu tenho um pouco de classe agradável que pode buffer linhas e texto a ser elaborado no final do quadro. Também é útil para prototipagem rápida.
(E, mais uma vez, é bom poder "Editar e continuar" essas visualizações em tempo de execução.)
(fonte: andrewrussell.net )
( daqui )
Receio não ter uma fonte "legal" para publicar no momento (talvez mais tarde). Mas é basicamente apenas uma lista de linhas (para esta biblioteca de linhas redondas ) e seqüências de caracteres (para o SpriteBatch interno do XNA). Apenas faça isso em public static
algum lugar e desenhe tudo com uma transformação apropriada para que tudo apareça no "espaço do mundo" (e limpe as listas para o próximo quadro).