forked from: flash on 2013-1-13
forked from flash on 2013-1-13 (diff: 1)
import org.papervision3d.view.stats.StatsView;
ActionScript3 source code
/**
* Copyright ohisama ( http://wonderfl.net/user/ohisama )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/9Hel
*/
// forked from ohisama's flash on 2013-1-13
package
{
import flash.events.Event;
import org.papervision3d.view.*;
import org.papervision3d.materials.shadematerials.FlatShadeMaterial;
import org.papervision3d.lights.*;
//import org.papervision3d.view.stats.StatsView;
public class test0 extends BasicView
{
private var light : PointLight3D;
private var c : Tri;
public function test0()
{
light = new PointLight3D();
light.x = -200;
light.y = -200;
light.z = -200;
_camera.zoom = 100;
c = new Tri(new FlatShadeMaterial(light, 0xffff99, 0xff9900));
scene.addChild(c);
//var sv : StatsView = new StatsView(renderer);
//addChild(sv);
addEventListener(Event.ENTER_FRAME, enterFrameHandler);
startRendering();
}
private function enterFrameHandler(event : Event) : void
{
c.rotationY += 0.5;
c.rotationZ += 0.5;
}
}
}
import org.papervision3d.core.geom.TriangleMesh3D;
import org.papervision3d.core.geom.renderables.Triangle3D;
import org.papervision3d.core.geom.renderables.Vertex3D;
import org.papervision3d.core.proto.MaterialObject3D;
import org.papervision3d.materials.shadematerials.FlatShadeMaterial;
import org.papervision3d.core.math.NumberUV;
class Tri extends TriangleMesh3D
{
public function Tri(tMaterial : MaterialObject3D = null)
{
super(tMaterial, new Array(), new Array(), null);
var v0: Vertex3D = new Vertex3D(-100, -100, 100);
var v1: Vertex3D = new Vertex3D( 100, -100, 100);
var v2: Vertex3D = new Vertex3D( 0, 100, 0);
var v3: Vertex3D = new Vertex3D(-100, -100, -100);
var v4: Vertex3D = new Vertex3D( 100, -100, -100);
this.geometry.vertices.push(v0);
this.geometry.vertices.push(v1);
this.geometry.vertices.push(v2);
this.geometry.vertices.push(v3);
this.geometry.vertices.push(v4);
var uvA : NumberUV = new NumberUV(0, 0);
var uvC : NumberUV = new NumberUV(1, 0);
var uvB : NumberUV = new NumberUV(0, 1);
this.geometry.faces.push(new Triangle3D(this, new Array(v2, v1, v0), null, new Array(uvA, uvC, uvB)));
this.geometry.faces.push(new Triangle3D(this, new Array(v2, v3, v4), null, new Array(uvA, uvC, uvB)));
this.geometry.faces.push(new Triangle3D(this, new Array(v2, v0, v3), null, new Array(uvA, uvC, uvB)));
this.geometry.faces.push(new Triangle3D(this, new Array(v2, v4, v1), null, new Array(uvA, uvC, uvB)));
this.geometry.faces.push(new Triangle3D(this, new Array(v1, v3, v0), null, new Array(uvA, uvC, uvB)));
this.geometry.faces.push(new Triangle3D(this, new Array(v1, v4, v3), null, new Array(uvA, uvC, uvB)));
this.geometry.ready = true;
}
}