*   >> Lecture Éducation Articles >> science >> la programmation

AS3IsoLib Tutorial Series - Camera

jouer à la démo

télécharger le code SOURCE

Retour à la index du tutoriel

Un concept commun dans les applications 3D est celle d'un appareil photo. Une caméra est généralement un objet mobile qui peut être positionné dans une scène, ce qui permet la scène à visualiser sous des angles différents sans avoir à changer la position des objets dans la scène. Dans as3isolib la classe IsoView implémente les fonctionnalités d'un appareil photo, vous permettant de visualiser une scène de différentes positions.

Main.

mxml

La scène est créée, tout comme il était avant.

 protégée appComplete de fonction (): void {var spriteContainer: SpriteUIComponent = new SpriteUIComponent (); this.addChild (spriteContainer); scène = new IsoScene (); 

Plutôt que d'ajouter la scène à l'application Flex directement, nous allons plutôt créer un objet de IsoView, et ajouter la scène à l'aide de la fonction de addScene

 view = nouvelle IsoView. (); view.

addScene (scène);

Nous désactivons la coupure de IsoView (où les objets en dehors de la vue de la scène ne sont pas établis) et de la frontière, et puis de l'afficher en ajoutant comme un enfant de la SpriteUIComponent

<. pre> view.showBorder = false; view.clipContent = false; spriteContainer.addChild (vue);

La boîte de rebond du dernier tutoriel est créé à nouveau de sorte que nous avons quelque chose à voir

 box1 = new iso-box ().; box1.setSize (75, 75, 75); box1.moveTo (0, 0, 50); scene.addChild (box1); TweenMax.to (box1, 2, {z: 0, yoyo: true, répéter: -1}); this.

addEventListener (Event.ENTER_FRAME, enterFrame);

Afin de déplacer la "caméra" au-dessus de la scène isométrique nous devons écouter pendant trois événements de la souris. La première est lorsque la souris est cliqué. Ici nous définissons la variable casserole pour vrai, que nous allons utiliser plus tard pour indiquer que l'utilisateur souhaite déplacer la caméra sur la scène

 this.addEventListener (MouseEvent.MOUSE_DOWN, la fonction (de l'événement:. MouseEvent): void {pan = true;.

Nous avons également besoin de faire une note de la position du curseur de la souris lorsque le bouton a été cliqué Ceci est parce que le mouvement de la caméra est basé sur le mouvement hors du mouvement relatif de la souris entre les cadres . Cependant classe MouseEvent ne garde pas une trace de ce mouvement relatif, la place ne fournir que la position absolue de la souris. En stockant

Page   <<       [1] [2] >>
Copyright © 2008 - 2016 Lecture Éducation Articles,https://lecture.nmjjxx.com All rights reserved.