*   >> Leitura Educação Artigos >> science >> programação

AS3IsoLib Tutorial Series - Moving Boxes

jogar o demo

BAIXAR O CÓDIGO FONTE

Voltar ao Índice TUTORIAL

Um dos aspectos mais complicados de um sistema isométrico são o coordena. Com as3isolib o eixo x corre ao longo da diagonal a partir do canto superior esquerdo da tela no canto inferior direito. O eixo y é perpendicular, correndo de canto superior direito para o canto inferior esquerdo. O eixo z define a altura, e corre para cima e para baixo.

Para demonstrar como isométrica objetos se movem ao longo desses eixos vamos criar 3 ligeiramente diferentes blocos de formas.

O código é praticamente o mesmo que o último tutorial, exceto que agora as variáveis ​​para os vários objetos, como os caixas e da cena, são variáveis ​​de classe, não funcionar variáveis ​​

 cena var protegido:. IsoScene = null ; protegido box1 var: IsoBox = null; protegido box2 var: IsoBox = null; protegido box3 var: IsoBox = null; função protegida appComplete (): void {var spriteContainer: SpriteUIComponent = new SpriteUIComponent (); this.addChild (spriteContainer); cena = new IsoScene (); scene.hostContainer = spriteContainer; box1 = new IsoBox (); box1.

setSize (50, 50, 50); box1.moveTo (300, -100, 0); scene.addChild (box1);

O moveToRandomPosition cria um efeito de interpolação que irá mover a caixa para uma posição aleatória no plano x /y

 moveToRandomPosition (box1).; box2 = new IsoBox (); box2.setSize (50, 50, 100); box2.moveTo (200, 100, 0); scene.addChild (box2); moveToRandomPosition (box2); box3 = new IsoBox (); box3.setSize (50, 100, 50); box3.moveTo (500, 100, 0); scene.addChild (box3); moveToRandomPosition (box3); 

Uma vez que as caixas vão mover, a cena precisa ser re-renderizados cada frame.

Perviously, porque a cena era estático, fizemos a uma chamada para a função de render. Agora vamos definir a função enterFrame a ser chamado cada quadro

 this.addEventListener (Event.ENTER_FRAME, enterFrame);} 

A função enterFrame faz uma coisa:. Renderizar a cena. Tornando-a cada frame do movimento das caixas será visível

 enterFrame função protegida (event: Event): void {scene.render ();} 

As funções randomPosition e moveToRandomPosition são usados ​​em conjunto. com TweenLite para mover as caixas ao redor no plano x /y.

Observe que a função moveToRandomPosition é chamado recursivamente quando a ação interpolação foi concluída. Desta forma podemos manter as caixas em movimento contínuo

 protegido randomPosition função (min: N

Page   <<       [1] [2] >>
Copyright © 2008 - 2016 Leitura Educação Artigos,https://artigos.nmjjxx.com All rights reserved.