Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package {
- import away3d.containers.ObjectContainer3D;
- import away3d.entities.Mesh;
- import away3d.materials.ColorMaterial;
- import away3d.materials.methods.EnvMapMethod;
- import away3d.materials.SkyBoxMaterial;
- import away3d.materials.TextureMaterial;
- import away3d.primitives.CubeGeometry;
- import away3d.primitives.PlaneGeometry;
- import away3d.primitives.TorusGeometry;
- import away3d.textures.BitmapCubeTexture;
- import away3d.textures.BitmapTexture;
- import away3d.utils.Cast;
- import flash.display.BitmapData;
- import flash.geom.ColorTransform;
- import flash.geom.Vector3D;
- public class Box extends ObjectContainer3D{
- public function Box() {
- createPool()
- }
- private function createPool() {
- var planeSize:Number=64;
- var poolHeight:Number = 64;
- var poolThickness:Number = 5;
- var poolVOffset:Number = 5 - poolHeight/2;
- var poolHOffset:Number = planeSize/2 + poolThickness/2;
- trace(planeSize);
- var liquidMaterial = new ColorMaterial(0xFFFF00);
- var tex:BitmapData = new BitmapData(512, 512, false, 0);
- tex.perlinNoise(25, 25, 8, 1, false, true, 7, true);
- tex.colorTransform(tex.rect, new ColorTransform(0.1, 0.1, 0.1, 1, 0, 0, 0, 0));
- var poolMaterial = new TextureMaterial(new BitmapTexture(tex));
- var plane:Mesh = new Mesh(new PlaneGeometry(planeSize, planeSize, 2,2), liquidMaterial);
- //plane.rotationX = 90;
- //plane.x = planeSize;
- //plane.z -= planeSize / 2;
- plane.y-= planeSize / 2;
- addChild(plane);
- var left:Mesh = new Mesh(new CubeGeometry(poolThickness, poolHeight, planeSize + poolThickness*2), poolMaterial);
- left.x = -poolHOffset;
- left.y = poolVOffset;
- addChild(left);
- var right:Mesh = new Mesh(new CubeGeometry(poolThickness, poolHeight, planeSize + poolThickness*2), poolMaterial);
- right.x = poolHOffset;
- right.y = poolVOffset;
- addChild(right);
- var back:Mesh = new Mesh(new CubeGeometry(planeSize, poolHeight, poolThickness), poolMaterial);
- back.z = poolHOffset;
- back.y = poolVOffset;
- addChild(back);
- var front:Mesh = new Mesh(new CubeGeometry(planeSize, poolHeight, poolThickness), poolMaterial);
- front.z = -poolHOffset;
- front.y = poolVOffset;
- addChild(front);
- }
- private function randomRange(minNum:Number, maxNum:Number):Number
- {
- return (Math.floor(Math.random() * (maxNum - minNum + 1)) + minNum);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement