/// <summary> /// /// </summary> /// <param name="control"></param> public override void Load(Control control) { base.Load(control); camera = new PerspectiveCamera(60, control.Width / (float)control.Height, 1, 10000); this.camera.Position.Z = 500; scene = new Scene(); scene.Fog = new Fog(Color.White, 1, 10000); var geometry = new BoxGeometry(100, 100, 100); var material = new MeshNormalMaterial(); group = new Object3D(); for (var i = 0; i < 1000; i++) { var mesh = new Mesh(geometry, material); mesh.Position.X = Mat.Random() * 2000 - 1000; mesh.Position.Y = Mat.Random() * 2000 - 1000; mesh.Position.Z = Mat.Random() * 2000 - 1000; mesh.Rotation.X = (float)(Mat.Random() * 2.0 * Math.PI); mesh.Rotation.Y = (float)(Mat.Random() * 2.0 * Math.PI); mesh.MatrixAutoUpdate = false; mesh.UpdateMatrix(); group.Add(mesh); } scene.Add(group); renderer.SetClearColor(Color.White); renderer.SortObjects = false; }
/// <summary> /// /// </summary> /// <param name="control"></param> public override void Load(Control control) { base.Load(control); camera = new PerspectiveCamera(40, control.Width / (float)control.Height, 1, 15000); this.camera.Position.Z = 3200; scene = new Scene(); sphere = new Mesh(new SphereGeometry(100, 20, 20), new MeshNormalMaterial(new Hashtable { { "shading", Three.SmoothShading } })); scene.Add(sphere); var geometry = new CylinderGeometry(0, 10, 100, 3); geometry.ApplyMatrix(new Matrix4().MakeRotationFromEuler(new Euler((float)Math.PI / 2, (float)Math.PI, 0))); var material = new MeshNormalMaterial(); for (var i = 0; i < 1000; i++) { var mesh = new Mesh(geometry, material); mesh.Position.X = Mat.Random() * 4000 - 2000; mesh.Position.Y = Mat.Random() * 4000 - 2000; mesh.Position.Z = Mat.Random() * 4000 - 2000; mesh.Scale.X = mesh.Scale.Y = mesh.Scale.Z = Mat.Random() * 4 + 2; scene.Add(mesh); } scene.MatrixAutoUpdate = false; renderer.SetClearColor(Color.White); renderer.SortObjects = false; }
/// <summary> /// /// </summary> /// <param name="control"></param> public override void Load(Control control) { base.Load(control); camera = new PerspectiveCamera(60, control.Width / (float)control.Height, 1, 15000); this.camera.Position.Z = 500; scene = new Scene(); var geometry = new BoxGeometry(100, 100, 100); var material = new MeshNormalMaterial(); root = new Mesh(geometry, material); root.Position.X = 1000; scene.Add(root); var amount = 200; Object3D object3D; var parent = root; for (var i = 0; i < amount; i++) { object3D = new Mesh(geometry, material); object3D.Position.X = 100; parent.Add(object3D); parent = object3D; } parent = root; for (var i = 0; i < amount; i++) { object3D = new Mesh(geometry, material); object3D.Position.X = -100; parent.Add(object3D); parent = object3D; } parent = root; for (var i = 0; i < amount; i++) { object3D = new Mesh(geometry, material); object3D.Position.Y = -100; parent.Add(object3D); parent = object3D; } parent = root; for (var i = 0; i < amount; i++) { object3D = new Mesh(geometry, material); object3D.Position.Y = 100; parent.Add(object3D); parent = object3D; } parent = root; for (var i = 0; i < amount; i++) { object3D = new Mesh(geometry, material); object3D.Position.Z = -100; parent.Add(object3D); parent = object3D; } parent = root; for (var i = 0; i < amount; i++) { object3D = new Mesh(geometry, material); object3D.Position.Z = 100; parent.Add(object3D); parent = object3D; } renderer.SetClearColor(Color.White); renderer.SortObjects = false; }