Papervision – Tutorial 1

Agora que você fez o download do Papervision e preparou o Flash para iniciar os seus projetos, vamos iniciar com uma classe básica de introdução ao Papervision 2.0 – Great White.

Crie um Actionscript file e salve-o como Tutorial1.as.

package {
// Importamos as classes necessárias
// AS3
import flash.display.Sprite;
import flash.events.Event;
// Papervision
import org.papervision3d.scenes.Scene3D;
import org.papervision3d.view.Viewport3D;
import org.papervision3d.cameras.FreeCamera3D;
import org.papervision3d.render.BasicRenderEngine;
// objeto
import org.papervision3d.objects.primitives.Sphere;
//
// Declaramos nossa classe
public class Tutorial1 extends Sprite {
// e as variáveis
public var cena:Scene3D;
public var viewport:Viewport3D;
public var camera:FreeCamera3D;
public var renderer:BasicRenderEngine;
public var objeto:Sphere;
//
// Declaramos a função da classe
public function Tutorial1 () {
// que irá acionar as funções auxiliares
Set ();
Objetos ();
Listeners ();
}
//
// funções básicas do Papervision
public function Set ():void {
cena = new Scene3D();
viewport = new Viewport3D(stage.stageWidth, stage.stageHeight, true, false, true, true);
addChild (viewport);
camera = new FreeCamera3D();
renderer = new BasicRenderEngine();
}
//
// função que irá criar o objeto
public function Objetos ():void {
objeto = new Sphere(null, 100, 8, 6, null);
cena.addChild (objeto);
//
//objeto.x=50;
//objeto.y=-50;
//objeto.z=-500;
//objeto.rotationX = 15;
//objeto.rotationY = 25;
//objeto.rotationZ = -75;
//camera.x=10;
//camera.y=60;
//camera.z=-2200;
//camera.zoom=2;
//camera.focus=400;
//
// Antes de descomentar as linhas acima, veja as propriedades padrão no trace
// Depois descomente e modifique os valores para ver as alterações
trace ('viewport.viewportWidth: '+viewport.viewportWidth+' viewport.viewportHeight: '+viewport.viewportHeight);
trace ('objeto x: '+objeto.x+'\nobjeto y: '+objeto.y+'\nobjeto z: '+objeto.z);
trace ('camera x: '+camera.x+'\ncamera y: '+camera.y+'\ncamera z: '+camera.z+'\ncamera zoom: '+camera.zoom+'\ncamera focus: '+camera.focus);
}
//
// função que irá receber novas funções auxiliares
public function Listeners ():void {
addEventListener (Event.ENTER_FRAME, Render);
}
//
// função responsável pela renderização do Papervision
public function Render (e:Event):void {
// objeto.rotationY += 2;
// camera.rotationY += 2;
renderer.renderScene (cena, camera, viewport);
}
}
}

Copie e cole o código acima e salve-o.

Agora crie um novo arquivo Flash File ( ActionScript 3.0 ) e salve-o no mesmo diretório do arquivo Tutorial1.as.
Vá em File>Publish Settings>Flash (aba) e clique no botão Settings.
Em Document class, digite o nome da classe Tutorial1.
Se você não determinou o caminho para a classe nas preferências globais do Flash, você deve setar o caminho em Classpath.

Salve o arquivo e compile.

Descomente as linhas no arquivo Tutorial1.as, faça testes alterando os valores, salve o arquivo e recompile.

Para compreender a fundo os parâmetros de cada propriedade, dê uma olhada na documentação do Papervision 2.0 – Great White.

Por enquanto é isso. Aos poucos vamos incluir materiais, interações, etc …

6 Comentários »

  1. Marcos Disse:

    O flash naum consegue achar o a classe papervision

  2. Marco Molina Disse:

    Marcos, dê uma olhada no artigo “Papervision – Será que depois da web 2.0 chegou a vez da web 3D ?” para configurar o classpath.

  3. Raul Disse:

    Cara fiz o tuto exatamente como ta aí, mas retornou o erro “1020: Method marked override must override another method.” no arquivo TriangleMesh3D.as linha 53.

    Já pesquisei em tudo q é lugar e num achei nada sobre esse erro. Percebi que eu não tenho o diretório “branches/Effects”, e eu baxei do “http://papervision3d.googlecode.com/svn/trunk/” exatamente como você explicou, será q eu preciso desse diretório?

  4. André Disse:

    Mesmo erro =((
    1020: Method marked override must override another method

    Alguém ae conseguiu alguma coisa??

  5. Anirudha Disse:

    popping 1020 at me also
    I came to know that code brows is not showing effects folder
    but the folder is there
    see these links
    http://code.google.com/p/papervision3d/source/browse/#svn/trunk/branches
    this shows only cs4 folder

    now chk this
    http://www.google.com/codesearch?hl=en&q=show:0_W2E3LFcJE:S2-7J6oArOk&ct=rdp&cs_p=http://papervision3d.googlecode.com/svn&cs_f=trunk/branches

    shows Effects GreatWhite CS4 folders

    I guess somethings wrong with code google
    Please reply on this
    Thanks

    http://www.arystudios.com

  6. oZuna Disse:

    Olá, estou com problemas também, porém no meu caso aparecem 29 erros de syntax entre as linhas 59,60 e 61 (traces).

    Mais alguem teve este problema?

    Outra coisa, estou usando o Flash CS4…o Papervision é compativel com ele?

    obrigado.


{ RSS feed para comentários neste post} · { URI do TrackBack }

Deixe um comentário