[Papervision3D] update MovieMaterial
Norbert Bokor
bokorn at tvn.hu
Tue Mar 11 04:47:33 PDT 2008
yeah, I've found the solution (thanks to google ;) )
for the archive:
i had to call the constructor with the third parameter set to true
Norbert Bokor írta:
> hi
>
> I have a plane with a MovieMaterial
> I'd like to see changes of the material on the plane, but it remains
> the same
> could somebody show me how to do this properly?
> here's the full code:
>
> package
> {
> import flash.display.*;
> import flash.events.*;
> import org.papervision3d.core.*;
> import org.papervision3d.core.geom.renderables.*;
> import org.papervision3d.scenes.*;
> import org.papervision3d.materials.*;
> import org.papervision3d.view.*;
> import org.papervision3d.objects.*;
> import org.papervision3d.render.*;
> import org.papervision3d.cameras.*;
> import org.papervision3d.objects.primitives.*;
>
> public class MatTest extends MovieClip
> { var movie:MovieClip=new MovieClip();
> var mat:MovieMaterial;
> var P:Plane;
> var scene:Scene3D=new Scene3D(false);
> var camera:FreeCamera3D=new FreeCamera3D();
> var viewport:Viewport3D=new
> Viewport3D(400,300,false,true,true,true);
> var renderer:BasicRenderEngine=new BasicRenderEngine();
>
> public function MatTest():void
> {
> movie.graphics.beginFill(0xff0000);
> movie.graphics.drawCircle(30,30,30);
> movie.graphics.endFill();
> mat=new MovieMaterial(movie,true);
> P=new Plane(mat,100,100,5,5);
> scene.addChild(camera);
> scene.addChild(P);
> addChild(viewport);
> addChild(movie);
> addEventListener(Event.ENTER_FRAME,onEnter);
> }
>
> private function onEnter(e:Event):void
> {
> movie.graphics.beginFill(0xffffff*Math.random());
> movie.graphics.drawCircle(30,30,30);
> movie.graphics.endFill();
>
> mat.updateBitmap();
>
> renderer.renderScene(scene,camera,viewport,true);
> }
> } }
>
>
pap
More information about the Papervision3D
mailing list