Archive for 8月, 2009

DNA 菜单 x pv3d

星期四, 8月 20th, 2009

still from the flash blog,改写了一下
(Either JavaScript is not active or you are using an old version of Adobe Flash Player. Please install the newest Flash Player.)

import org.papervision3d.scenes.*;
import org.papervision3d.cameras.*;
import org.papervision3d.objects.*;
import org.papervision3d.objects.special.*;
import org.papervision3d.objects.primitives.*;
import org.papervision3d.materials.*;
import org.papervision3d.materials.special.*;
import org.papervision3d.materials.shaders.*;
import org.papervision3d.materials.utils.*;
import org.papervision3d.lights.*;
import org.papervision3d.render.*;
import org.papervision3d.view.*;
import org.papervision3d.events.*;
import org.papervision3d.core.utils.*;
import org.papervision3d.objects.parsers.Collada;
import org.papervision3d.core.utils.virtualmouse.VirtualMouse;


var viewport:Viewport3D=new Viewport3D(0,0,true,true);
addChild(viewport);
viewport.buttonMode=true;
var renderer:BasicRenderEngine = new BasicRenderEngine();
var scene:Scene3D = new Scene3D();
var cam:Camera3D = new Camera3D();
cam.zoom=25;


// Create camera center
var pc:Plane = new Plane();
pc.visible=false;
cam.target=pc;

// Spiral properties
var num:int=100;
var numOfRotations:Number=5;
var anglePer:Number = ((Math.PI*2) * numOfRotations) / num;
var yPos:Number=0;

// Create the planes
var pa:Array = new Array();
for (var i:uint=0; i<num; i++) {

 var cm:BitmapAssetMaterial=new BitmapAssetMaterial("air");
 cm.oneSide=false;
 var p:Plane=new Plane(cm,100,100);
 p.x=Math.cos(i*anglePer)*550;
 p.z=Math.sin(i*anglePer)*550;
 p.y=yPos+=50;
 p.rotationY = (-i*anglePer) * (180/Math.PI) + 270;
 scene.addChild(p);
}

// Create the render loop
addEventListener(Event.ENTER_FRAME, render);

var angle:Number=0;

function render(e:Event):void {
 var dist:Number = ((stage.mouseY) - stage.stageHeight * 0.5) * -0.1;
 var dist2:Number = ((stage.mouseX) - stage.stageWidth * 0.5) * 0.0005;
 angle+=dist2;
 cam.x=Math.cos(angle)*1000;
 cam.z=Math.sin(angle)*1000;
 cam.y+=dist;
 if (cam.y<369) {
  cam.y=369;
 }
 if (cam.y>4755) {
  cam.y=4755;
 }
 pc.y=cam.y;

 renderer.renderScene(scene, cam, viewport);

}

好文章/网站 推荐 陆续更新

星期二, 8月 4th, 2009

2009/08/04
Simple 3D programming for AS2.0
actionscript.org是一个专门的as教程的网站,文章的数量以及更新的速度都很不错。上面那篇文章是介绍flash中如果和运用数学算法来来达到透视以及一些三维的效果。
- - - - - - - - - - - - - - - -
dynamic stacking
soulwire是个超牛的网站(博客),专门介绍一些高端的visual arts的运用,不限制在as,而是扩展到processing和其他语言。。。目的都是为了实现视觉效果。这篇文章介绍了动态排序,类似于facebook那种拖动效果。
他的兄弟网站somerandomdude
noponies,一个牛人。
- - - - - - - - - - - - - - - -
ubuntu很好用的linux操作系统。
- - - - - - - - - - - - - - - -
jiglibflashflash的三维物理引擎,和box2d相比,他能实现三维空间的物理运算。
- - - - - - - - - - - - - - - -
3D Flash Perlin Noise Terrains with AS3 and Sandydrawlogic一篇关于如何把perlin noise 应用到sandy 3d(1三维引擎)的文章,并且演示了一个terrain generation class的效果。
- - - - - - - - - - - - - - - -
stardrive一个国外学生的blog。研究processing。。。visual arts video jockey…满不错。
- - - - - - - - - - - - - - - -
squidder很牛的blog.介绍 reality arguments和一些识别技术。
- - - - - - - - - - - - - - - -
bitmapData ARGB colorreflektions.com 不用多介绍,从as2到as3都一直看他的博客,每个例子都提供源代码。最近他在玩 mootools。。。

midnight

星期六, 8月 1st, 2009

shot by sharp sh01a