//1フレーム目に記述
//ライブラリにリンケージid「mc0~mc5」のmcが入ってます
import flash.display.*;
import flash.events.*;
import org.papervision3d.objects.*;
import org.papervision3d.objects.primitives.*;
import org.papervision3d.view.*;
import org.papervision3d.cameras.Camera3D;
import org.papervision3d.render.BasicRenderEngine;
import org.papervision3d.scenes.Scene3D;
import org.papervision3d.materials.*;
import org.papervision3d.materials.utils.MaterialsList; import caurina.transitions.*;
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.quality = StageQuality.BEST;
init3D();
function init3D():void { //初期化
var viewport:Viewport3D = new Viewport3D(500,500,true,true);
addChild( viewport);
var renderer:BasicRenderEngine = new BasicRenderEngine();
var camera:Camera3D = new Camera3D();
camera.x = 0;
camera.y = 0;
camera.z = 300;
camera.focus = 500;
var scene = new Scene3D();
var mat:MaterialsList = new MaterialsList({
front:new MovieAssetMaterial( "mc0", true,true,true ,true),
back:new MovieAssetMaterial( "mc1", true,true,true,true ),
right:new MovieAssetMaterial( "mc2", true,true,true,true ),
left:new MovieAssetMaterial( "mc3", true,true,true,true ),
top:new MovieAssetMaterial( "mc4", true,true,true,true ),
bottom:new MovieAssetMaterial( "mc5", true,true,true,true )
});
var matCube = new Cube(mat,100,100,100);
scene.addChild( matCube );
stage.addEventListener(KeyboardEvent.KEY_DOWN,key_mov);
stage.addEventListener(Event.ENTER_FRAME,handler);
function handler(event:Event):void{
renderer.renderScene( scene,camera,viewport);
}
function key_mov(event:KeyboardEvent):void{ //キーボードイベント関数
var distance:uint = 50;
switch (event.keyCode) {
case Keyboard.RIGHT:
Tweener.addTween(matCube, {x:-80,rotationY:"45",scale:1,time:2.0,transition:"easeOutElastic"});
break;
case Keyboard.LEFT:
Tweener.addTween(matCube, {x:80,rotationY:"-45",scale:1,time:2.0,transition:"easeOutElastic"});
break;
case Keyboard.UP:
Tweener.addTween(matCube, {y:80,rotationX:"-90",scale:1,time:2.0,transition:"easeOutElastic"});
break;
case Keyboard.DOWN:
Tweener.addTween(matCube, {y:-80,rotationX:"90",scale:1,time:2.0,transition:"easeOutElastic"});
break;
}
}
}
僕が買った、もしくは買う予定の参考書
参考書は指定されていません
ブックマークする