Toggle navigation
Sign Up
Log In
Explore
Works
Folders
Tools
Collections
Artists
Groups
Groups
Topics
Tasks
Tasks
Jobs
Teams
Jobs
Recommendation
More Effects...
ActionScript
package { import away3d.containers.View3D; import away3d.controllers.HoverController; import away3d.core.base.SubGeometry; import away3d.entities.Mesh; import away3d.events.MouseEvent3D; import away3d.lights.PointLight; import away3d.materials.ColorMaterial; import away3d.materials.lightpickers.StaticLightPicker; import away3d.materials.methods.EnvMapMethod; import away3d.primitives.PlaneGeometry; import away3d.primitives.SkyBox; import away3d.textures.BitmapCubeTexture; import away3d.utils.Cast; import flash.display.Sprite; import flash.events.Event; import flash.events.MouseEvent; [SWF(width="1000",height='700')] public class Npianduan extends Sprite { private var view:View3D; private var plane:PlaneGeometry; private var mesh:Mesh; private var color:ColorMaterial; private var flu:Vector.
= new Vector.
(); private var normals:Vector.
= new Vector.
(); private var tangents:Vector.
= new Vector.
(); private var points:Vector.
>=new Vector.
>(); // private var normals:Vector.
= new Vector.
(); private var d:int=2; private var planeSh:Number=199; private var planeSW:Number=199; private var planeH:Number=planeSh*d; private var planeW:Number=planeSW*d; private var cameraController:HoverController; private var move:Boolean = false; private var lastPanAngle:Number; private var lastTiltAngle:Number; private var lastMouseX:Number; private var lastMouseY:Number; private var lightPicker:StaticLightPicker; private var t:int=1; private var k:Number=0; private var cs:int=0; private var di:int=0; private var cubeTexture:BitmapCubeTexture; [Embed(source="../../uploads/codefile/D9E749A8-18AB-0D1A-8B63-0CAF78CBD9B6/snow_positive_x.jpg")] private var EnvPosX:Class; [Embed(source="../../uploads/codefile/C71DB52A-FF58-9118-EF30-2CD15969D1AE/snow_positive_y.jpg")] private var EnvPosY:Class; [Embed(source="../../uploads/codefile/3E23EDF3-A342-0325-0067-FE0BE686E49D/snow_positive_z.jpg")] private var EnvPosZ:Class; [Embed(source="../../uploads/codefile/D2D4163A-9E27-0470-7F5C-C15C87C4FA40/snow_negative_x.jpg")] private var EnvNegX:Class; [Embed(source="../../uploads/codefile/CE0CD6C4-3414-23B7-AFC4-38475DF8DFBE/snow_negative_y.jpg")] private var EnvNegY:Class; [Embed(source="../../uploads/codefile/A4401AFC-639E-D57F-E641-4607FC0C8344/snow_negative_z.jpg")] private var EnvNegZ:Class; public function Npianduan() { addEventListener(Event.ENTER_FRAME, onEnterFrame); initview(); initPlane(); UVPlane(); //onPlaneg(); } private function initview():void{ view= new View3D(); cameraController = new HoverController(view.camera, null, 180, 20, 320, 5); addChild(view); var skyLight:PointLight = new PointLight(); skyLight.color = 0x0000FF; //skyLight.z=-1000; skyLight.y=100; skyLight.specular = 0.5; skyLight.diffuse = 2; lightPicker = new StaticLightPicker([skyLight]); //color.lightPicker = lightPicker; view.scene.addChild(skyLight); } private function initPlane():void{ cubeTexture = new BitmapCubeTexture(Cast.bitmapData(EnvPosX), Cast.bitmapData(EnvNegX), Cast.bitmapData(EnvPosY), Cast.bitmapData(EnvNegY), Cast.bitmapData(EnvPosZ), Cast.bitmapData(EnvNegZ)); view.scene.addChild(new SkyBox(cubeTexture)); color = new ColorMaterial(0xFFFFFF); // color.bothSides=true; color.lightPicker = lightPicker; color.addMethod(new EnvMapMethod(cubeTexture, 1)); color.specular = 0.5; color.ambient = 0.25; color.ambientColor = 0x111199; color.ambient = 1; plane = new PlaneGeometry(planeW,planeH,planeSW,planeSh); mesh = new Mesh(plane,color); //mesh.rotationZ=180; mesh.rotationX=90; //mesh.rotationZ+=90; mesh.geometry.convertToSeparateBuffers(); mesh.addEventListener(MouseEvent3D.MOUSE_MOVE, onDown); mesh.mouseEnabled = true; mesh.x-=150; mesh.z-=350; view.scene.addChild(mesh); stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown); stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUp); } private function UVPlane():void{ // ssz(); //trace(d+"d"); var a:uint, j:uint, i:uint; var m:Number=planeSh+1; var n:Number= planeSW+1; points[0] = new Vector.
(); points[1] = new Vector.
(); for( j = 0; j < m; j++ ) { var y:Number = d * j; for( i = 0; i
= points[0]; var points4:Vector.
= points[1]; var n:int; var m:int; var b:Number= planeSW+1; var jb:Number = 0.8; var cf:Number=0; var qs:Number = 1; var qsj:Number =-1; var qz:Number =0; var gd:Number =2; var jj:int=0; n = Math.random()*(planeSW-qs*2)+qs; m = Math.random()*(planeSh-qs*2)+qs; if(qs==0) { points3[n*b*3 + m*3 + 2]=-gd; points4[n*b*3 + m*3 + 2]=-gd; } for(var o:int=0;o
= new Vector.
(); var points1:Vector.
= new Vector.
(); points0 = points[_i]; points1 = points[1-_i]; //trace("改变数组"+_i); for( j = 1; j < m-1; j++ ) { var y:Number = d * j; for( i = 1; i
3) { // UVPlane() // color.lightPicker = lightPicker; // trace("zhixingle?"); onPlaneg(); if(k==4) initRandom(); if(k%300==0) { //trace("执行"); initRandom(); } } //initRandom(t); // suinit(); //trace(k/10+"k"); //mesh.rotationX++; //mesh.rotationZ++; if (move) { cameraController.panAngle = 0.3*(stage.mouseX - lastMouseX) + lastPanAngle; cameraController.tiltAngle = 0.3*(stage.mouseY - lastMouseY) + lastTiltAngle; } // suinit(); // mesh.rotationX++; // mesh.rotationY++; //mesh.rotationZ++; } } }
Join Effecthub.com
Working with Global Gaming Artists and Developers!
Login
Sign Up
Or Login with Your Email Address:
Email
Password
Remember
Or Sign Up with Your Email Address:
Your Email
This field must contain a valid email
Set Password
Password should be at least 1 character
Stay informed via email