In case Flash no longer exists; a copy of this site is included in the Flashpoint archive's "ultimate" collection.

Dead Code Preservation :: Archived AS3 works from wonderfl.net

Papervision3d入門 3.2.7

Flash3D コンテンツ制作のためのPapervision3Dのサンプルテスト	

code 3.2.7
Get Adobe Flash player
by ug24k8 11 Feb 2010
/**
 * Copyright ug24k8 ( http://wonderfl.net/user/ug24k8 )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/rPVj
 */

// forked from yawakisin's Papervision3d入門 3.2.3
/*
	Flash3D コンテンツ制作のためのPapervision3Dのサンプルテスト	
	
	code 3.2.7
*/

package 
{
	import flash.display.*;
	import flash.events.*;
	import flash.net.*;
	import flash.system.*;
	import org.papervision3d.materials.special.CompositeMaterial;
	import org.papervision3d.view.*;
	import org.papervision3d.materials.*;
	import org.papervision3d.objects.primitives.*;
	
	[SWF(width = "800", height = "600", frameRate = "12", backgroundColor = "#101010")]
	public class CompositeSample extends BasicView {
		
		private var loader:Loader;

		// コンストラクタ
		public function CompositeSample() 
		{
			// Loaderクラスを使用して画像ファイルを読み込む(外部のパスを指定)
			loader = new Loader();
			loader.contentLoaderInfo.addEventListener(Event.COMPLETE, compHandler);
			loader.load(
				new URLRequest("http://assets.wonderfl.net/images/related_images/2/29/2957/295773efe549b4206f0ab5e4e776915fb02f95ff"),
				new LoaderContext(true));		
		}
		
		private function compHandler(e:Event):void 
		{
			// マテリアルを作成
			var material:CompositeMaterial = new CompositeMaterial();
			// 黄色のカラーマテリアルをコンポジットマテリアルに追加
//			material.addMaterial(new ColorMaterial(0xffff00));
			// 赤色のワイヤーフレームをコンポジットマテリアルに追加
			material.addMaterial(new WireframeMaterial(0xff0000));
                        // ビットマップテクスチャ
			// 画像ファイルを読み込んだ場合、loaderのcontentプロパティがビットマップ画像になっている
			var bmpData:BitmapData = Bitmap(loader.content).bitmapData;
			material.addMaterial(new BitmapMaterial(bmpData));
			
			// 球体(Sphere)を作成
			// 引数はマテリアル、球面の半径、横のポリゴン分割数、縦のポリゴン分割数
			var sphere:Sphere = new Sphere(material, 500, 10, 10);
			
			// 3D空間に球体を追加
			scene.addChild(sphere);
			
			// レンダリング
			startRendering();
		}
	}
}