? Microsoft desenvolveu seu software XNA para ajudar os desenvolvedores na criação de jogos de vídeo para consolas Xbox 360 e PCs com Windows . XNA lida com todos os aspectos da programação de jogos de vídeo , incluindo aceitar a entrada do controlador como o jogador manipula seus joysticks e botões. Dados do controlador assume duas formas diferentes, analógico e digital. Dados analógicos assume um intervalo contínuo de valores, a informação digital é discreto . Operação
Como você jogar um jogo de vídeo , você pode usar tanto analógico e controles digitais . Um controlador de Xbox 360, por exemplo, tem "vara " que controla dados de saída analógicos através de uma série de posições de frente - trás e direita-esquerda . A única posição consiste em dois números : um ao longo do eixo direita-esquerda e outro ao longo do eixo frente - costas. Controlos digitais , por outro lado , têm estados discretos , tais como " on" ou "off". Pushbuttons sobre os dados digitais de saída do controlador . Para ajudar os desenvolvedores de jogos , o XNA inclui objetos de software que têm variáveis de vários valores para entrada analógica e valores específicos para a entrada digital.
Controles
O controlador Xbox tem 10 digital e quatro controles analógicos . Os controles digitais incluem interruptores on-off , como gatilhos esquerdo e direito , pára-choques e no botão guia. O D -pad é um controle digital, que tem quatro valores distintos : para cima, para baixo, esquerda e direita. O controlador possui dois controles analógico , cada um dos quais lhe permitem especificar um local em um plano XY. Quando você apertar um controle de disparo , ele tem um efeito continuamente variável através de sua amplitude de movimento. Além do Xbox , XNA trabalha em software de jogos para PC . No PC, controles digitais incluem o teclado e os botões do mouse . Cada tecla do teclado é para cima ou para baixo, os botões do mouse são clicados ou não. Forward- costas e esquerda -direita movimentos do rato constituem dados analógicos.
Programação
Para usar a entrada analógica vara do console Xbox em um programa usando XNA , você especificar o objeto thumbsticks . Tem as propriedades de "esquerda" e " direita", que identificam a vara, e "X " e " Y ", que contém a direita-esquerda e frente e para trás valores do eixo , como o código a seguir ilustra :
stickLeftX = currentState.ThumbSticks.Left.X ; stickLeftY = currentState.ThumbSticks.Left.Y ; stickRightX = currentState.ThumbSticks.Right.X ; stickRightY = currentState.ThumbSticks.Right.Y ;
controles analógicos produzir numérica Os valores que você usa em seu programa . Seu programa testa o estado de um controle digital e realiza ações , dependendo do resultado do teste, como esta linha de código mostra :
if ( GamePad.GetState ( PlayerIndex.One ) Buttons.A == ButtonState . . pressionado) abc = 1;
Neste exemplo, quando player One pressiona o botão "A" em seu controlador , o programa define a variável "abc " para o valor de um. Note-se que "A" é uma propriedade dos "Buttons" coleção de objetos.
Applications
programas de jogos , controles analógicos de parâmetro único determinar quantidades variáveis , como o velocidade de um carro de corrida ou a força por trás de um campo de beisebol. Controles da vara permitem que você defina um valor variável e uma direção , permitindo que você use a vara para " orientar " uma nave espacial e determinar a sua velocidade. O controle D -pad pode definir uma direção, mas , por ser digital , não é possível definir uma velocidade ou outro parâmetro variável. Os controles de botão , também digital, desencadear vários eventos , como iniciar um jogo ou exibir um mapa.