viewport

Using a Viewport as a Mask

Sunday, December 7th, 2008 | examples | Comments


source

package
{
	import flash.display.Bitmap;
	import flash.events.Event;
 
	import org.papervision3d.materials.ColorMaterial;
	import org.papervision3d.objects.primitives.Plane;
	import org.papervision3d.view.BasicView;
 
	[SWF(width="640", height="480", backgroundColor="#000000", frameRate="60")]
	public class ViewportAsMask extends BasicView
	{
		[Embed(source="assets/rover.jpg")]
		private var roverAsset:Class;
		private var rover:Bitmap;
		private var plane:Plane;
 
		public function ViewportAsMask()
		{
			rover = new roverAsset() as Bitmap;
			rover.mask = viewport;
			addChild(rover);
 
			var colorMaterial:ColorMaterial = new ColorMaterial(0xffffff);
			plane = new Plane(colorMaterial);
			plane.z = -500;
 
			scene.addChild(plane);
			startRendering();
		}
 
		override protected function onRenderTick(event:Event=null):void
		{
			plane.moveForward(500);
			plane.rotationY = -viewport.containerSprite.mouseX / 320 * 90;
			plane.moveBackward(500);			
 
			renderer.renderScene(scene, camera, viewport);
		}
	}
}

Tags: ,

Search

Recommended Books

Speaking at FITC Toronto

 

September 2010
M T W T F S S
« May    
 12345
6789101112
13141516171819
20212223242526
27282930  

Preferred Video Tutorial Resolution

  • 1024x768 (53%, 85 Votes)
  • 1280x1024 (15%, 24 Votes)
  • 1920x1080 (15%, 24 Votes)
  • 800x600 (13%, 20 Votes)
  • 480x320 (4%, 6 Votes)
  • 640x480 (0%, 2 Votes)

Total Voters: 160

Loading ... Loading ...