Programação  
 
Conhecimento computador >> Programação >> C /C + + programação >> 
Como Animar em XNA
O XNA Game Studio ( XNA ) é um ambiente de programação desenvolvida pela Microsoft que ajuda você a criar jogos complexos para computadores , celulares e consoles de Xbox de dentro do Visual Studio 2010 plataforma de programação . Animando sprites e modelos em XNA é importante porque um animado, bidimensional (2- D) do sprite simples , faz uma grande diferença quando você incluí-lo em seus jogos . Coisas que você precisa
Visual Studio 2010
A 256 × 64 textura contendo quatro quadros do mesmo tamanho .
Mostrar Mais instruções
1

Abra o Visual Studio 2010 e ir para o construtor do XNA game . Criar uma nova instância da classe " AnimatedTexture " usando este código de exemplo :

SpriteTexture AnimatedTexture privado; const privado flutuar Rotação = 0; Escala const private float = 2.0f ; privado Profundidade const bóia = 0.5f ; Game1 pública () {

SpriteTexture = new AnimatedTexture ( Vector2.Zero , rotação, escala , profundidade ); # se ZUNETargetElapsedTime = TimeSpan.FromSeconds ( 1 /30,0) ; # endif }

Nota que a taxa de quadros deve ser de 30 quadros por segundo ( fps) , se você pretende usar a sua animação em Zune. Neste exemplo , " ( 0.0 ) " é a origem da textura . A textura não tem rotação , está em uma escala de "2" e tem uma profundidade de " 0,5 ".
2

carregar a textura contendo os quatro quadros e divida-o em quadros de animação por usando este código de exemplo :

viewport privado viewport ; privado Vector2 objPos ; private const int Frames = 4; const private int FramesPerSec = 2; protegido LoadContent override void () { SpriteBatch = new SpriteBatch ( GraphicsDevice ); SpriteTexture . carga ( Content ", objectanimated " , quadros, FramesPerSec ); viewport = graphics.GraphicsDevice.Viewport ; shipPos = new Vector2 ( viewport.Width /2, viewport.Height /2); }

A " classe AnimatedTexture " carrega a textura e desenha-lo em quadros. Este exemplo desenha dois quadros por segundo , por dois segundos. Substituir " objectanimated " com o nome do seu ativo objeto.
3

Determinar os quadros de animação para exibir usando o método "Update" . Use este código como um exemplo: .

Atualização override protected void ( GameTime GameTime ) {float decorrido = ( float) gameTime.ElapsedGameTime.TotalSeconds ;//Adicione a sua lógica do jogo aqui

SpriteTexture . UpdateFrame ( decorrido ); base.Update ( GameTime );} UpdateFrame public void (float decorrido ) {if ( pausa ) return ; TotalElapsed + = decorrido ; if ( TotalElapsed > TimePerFrame ) { frame + +; Quadro = Frame % FrameCount ; TotalElapsed - = TimePerFrame ;}}

método " UpdateFrame " do AnimatedTexture recebe os segundos decorridos entre as atualizações e lida com a exibição dos diferentes quadros
4

Desenhe o sprite no jogo. "Empate" método usando a função " spriteBatch.Draw " no objeto " AnimatedTexture " . Utilize este código de exemplo para chamar a correta subrectangle da textura contendo um sprite :

protegido Sorteio override void ( GameTime GameTime ) { GraphicsDevice.Clear ( Color.CornflowerBlue ) ;//Adicione seu código de desenho aqui

spriteBatch.Begin (); SpriteTexture.DrawFrame ( SpriteBatch , objPos ); spriteBatch.End (); base.Draw ( GameTime );} public void DrawFrame (batch SpriteBatch , Vector2 screenPos ) { DrawFrame (batch , Frame, screenPos ) ;} DrawFrame public void (batch SpriteBatch , int quadro, Vector2 screenPos ) {int FrameWidth = myTexture.Width /FrameCount ; Retângulo sourceRect = new Rectangle ( FrameWidth * quadro, 0, FrameWidth , myTexture.Height ); batch.Draw ( myTexture , screenPos , sourceRect , Color.White , Rotação , origem, Escala, SpriteEffects.None , profundidade );}
5

compilar e criar o projeto. Quando você executar o projeto, você vai ver a animação criada com os quatro quadros de sua textura original .

Anterior :

Próximo : No
  Os artigos relacionados
·Como desenhar linhas no Visual C + + 
·Cocoa Touch vs. Objective C 
·Como obter um número par no CPP 
·Como converter C + + ASCII para UTF8 
·Como externo um membro estático 
·Como criar um BlogSkin para Blogger 
·Como Fake um Código Modelo 
·Como usar OLE Com o Visual C 
·Como introduzir uma mistura de números e letras de um …
·Como transmitir vídeo ao vivo no Xcode 
  Artigos em destaque
·Como compilar Flex para iPhone 
·Como usar Arrays fazer Matrizes em C + + 
·Como alocar memória na pilha usando C + + 
·Como usar uma função GetOpenFileName 
·Base de SDK xCode Faltando 
·Como usar o LINQ to XML 
·Como usar um buffer de anel 
·Xcode Texto Tutorial editor 
·Projetos ASP.NET e Codificação em C 
·Como Fazer um Asterisk Espaço Padrão em C + + 
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados