Flash CS4, Classe Matrix3D
Para compensar a falta de posts, este mês vou tentar escrever com frequência sobre as novidades do Flash CS4 na programação.
Para poder ver exemplos de posts como este você vai precisar instalar o Flash Player 10.
Neste primeiro post vou começar com uma das novidades que mais me animou, a possibilidade de criação de animações em 3D nativamente.
O exemplo abaixo usa o método prependRotation da classe Matrix3D para rotacionar um movieclip.
package { import flash.display.MovieClip; import flash.geom.*; import flash.events.MouseEvent; public class matrix3DRotation extends MovieClip { //objecto mcball, classe associada ao mc na biblioteca private var goku:mcball; public function matrix3DRotation():void { //cria um novo objeto mcball e adiciona no palco this.goku = new mcball(); addChild(this.goku); //setar as poições x, y e o novo eixo z this.goku.x = stage.stageWidth/2; this.goku.y = stage.stageHeight/2; this.goku.z = 1; //evento para atualizar a rotação do mc de acordo com o mouse stage.addEventListener(MouseEvent.MOUSE_MOVE, upRotation); } private function upRotation(evt:MouseEvent):void { //o método prependRotation da classe matrix3D é o responsável por rotacionar o objeto //os parâmetros aplicados são graus e eixo de rotação //o eixo é setado através de contantes da classe Vector3D, //por exemplo, a constante Vector3D.X_AXIS corresponde ao eixo X this.goku.transform.matrix3D.prependRotation(this.mouseX/60, Vector3D.X_AXIS); this.goku.transform.matrix3D.prependRotation(this.mouseY/60, Vector3D.Y_AXIS); } } }
Abaixo o exemplo rodando, mova o mouse sobre o filme para rotacionar o mc.
This movie requires Flash Player 8.




October 10th, 2008 at 9:01
Cara muito legal o seu post. Fiquei muito interesando nessa nova tecnologia, da asas pra imaginação mesmo.
October 12th, 2008 at 19:32
[...] comentei no post anterior sobre o framework 3D, eFlash3D, que estou desenvolvendo utilizando os novos recursos do Flash CS4, acabei a implementação de materiais (imagem, vídeo e movieclip) na classe do Cubo 3D. O [...]
October 21st, 2008 at 13:28
Cara, tentei executar aqui no flash cs4 mas não consegui simular o efeito acima.
Não entendi também a parte onde ele fala o seguinte:
private var goku:mcball;
o objeto mcball é uma outra classe?
October 21st, 2008 at 13:58
Oi Celso, o mcball é o “linkage” da imagem na biblioteca, a partir do AS3 o objeto é associado a uma classe, neste caso mcball, não precisa criá-la, o Flash cria na compilação. =)
December 1st, 2008 at 20:22
Show de Bola Erick!!!
Eu estava tentando mudar diretamente o .z hahha, mc.z +=1 por ex, e não estava conseguindo!
Vlw!
March 27th, 2009 at 9:39
Erick, há como ao largar o mouse, o objeto voltar (se movimentando com o rotation) para sua posição original? Porque eu tentei aqui, mas não achei o atributo do mc que o Rotation distorce, para fazer uma validação(if) que quando chegar em tal rotação por exemplo ele para.
Abçs!
December 9th, 2010 at 4:16
Great lession indeed!! a lot of thanks.for posting? this instructive article.
November 2nd, 2011 at 3:10
Jocuri online 3d…
[...]Flash CS4, Classe Matrix3D - Erick Souza[...]…
December 10th, 2011 at 18:38
I needed to draft you this very little note to finally give many thanks over again for all the pleasing thoughts you’ve shown on this page. This is certainly surprisingly generous with you to supply openly all many individuals would’ve advertised as an e-book to generate some cash for themselves, particularly since you could have tried it if you wanted. These good tips additionally served like the good way to understand that the rest have a similar eagerness really like mine to understand great deal more with regards to this issue. Certainly there are many more enjoyable instances up front for individuals who scan your blog.
December 15th, 2011 at 15:00
First of all, permit my loved ones acknowledge an individual?s demand while doing this concern. Although this is certainly completely new , by way of absolutely no meanstheless promptly shortly after signing up your site, that intelligence has got boomed thoroughly. Make it possible for all of us to bear in mind hold of a?azines rss feed to support manage in touch with in the least probable mail messages Genuine have an understanding of nevertheless may pass it on to help admirers along with my tailored are located participants