package
{
import flash.display.Sprite;
import flash.events.Event;
import org.papervision3d.lights.PointLight3D;
import org.papervision3d.materials.shadematerials.FlatShadeMaterial;
import org.papervision3d.materials.utils.MaterialsList;
import org.papervision3d.objects.parsers.DAE;
import org.papervision3d.view.BasicView;
public class chapter07 extends Sprite
{
private var view:BasicView;
private var dae:DAE;
public function chapter07()
{
view = new BasicView( 550, 400 );
this.addChild( view );
// DAE 생성
dae = new DAE();
// Shader를 위한 Light 생성
var light: PointLight3D = new PointLight3D( false );
light.x = 0; light.y = 100; light.z = 0;
// Shader가 적용된 material 생성
var material: FlatShadeMaterial = new FlatShadeMaterial( light, 0xFFFFFF, 0xFF0000 );
// DAE 파일은 여러 3D객체의 조합으로 이루어지므로 Material도 여러 개를 따로 지정가능
var materialsList:MaterialsList = new MaterialsList();
materialsList.addMaterial( material, "all" );
// DAE 파일 불러오기
dae.load( "./model.dae", materialsList );
dae.y = -50
view.camera.zoom = 150
view.scene.addChild( dae );
view.addEventListener( Event.ENTER_FRAME, onEnter );
}
private function onEnter(event:Event):void
{
dae.rotationY += 2;
view.singleRender();
}
}
}
