Home | History | Annotate | Download | only in v8-v6

Lines Matching full:flog

4 //   http://labs.flog.nz.co/raytracer/
51 // flog/color.js
52 // flog/light.js
53 // flog/vector.js
54 // flog/ray.js
55 // flog/scene.js
56 // flog/material/basematerial.js
57 // flog/material/solid.js
58 // flog/material/chessboard.js
59 // flog/shape/baseshape.js
60 // flog/shape/sphere.js
61 // flog/shape/plane.js
62 // flog/intersectioninfo.js
63 // flog/camera.js
64 // flog/background.js
65 // flog/engine.js
68 /* Fake a Flog.* namespace */
69 if(typeof(Flog) == 'undefined') var Flog = {};
70 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
72 Flog.RayTracer.Color = Class.create();
74 Flog.RayTracer.Color.prototype = {
90 var result = new Flog.RayTracer.Color(0,0,0);
100 var result = new Flog.RayTracer.Color(0,0,0);
112 var result = new Flog.RayTracer.Color(0,0,0);
122 var result = new Flog.RayTracer.Color(0,0,0);
132 var result = new Flog.RayTracer.Color(0,0,0);
142 var result = new Flog.RayTracer.Color(0,0,0);
163 var result = new Flog.RayTracer.Color(0,0,0);
164 result = Flog.RayTracer.Color.prototype.add(
165 Flog.RayTracer.Color.prototype.multiplyScalar(c1, 1 - w),
166 Flog.RayTracer.Color.prototype.multiplyScalar(c2, w)
186 /* Fake a Flog.* namespace */
187 if(typeof(Flog) == 'undefined') var Flog = {};
188 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
190 Flog.RayTracer.Light = Class.create();
192 Flog.RayTracer.Light.prototype = {
207 /* Fake a Flog.* namespace */
208 if(typeof(Flog) == 'undefined') var Flog = {};
209 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
211 Flog.RayTracer.Vector = Class.create();
213 Flog.RayTracer.Vector.prototype = {
232 return new Flog.RayTracer.Vector(this.x / m, this.y / m, this.z / m);
240 return new Flog.RayTracer.Vector(
251 return new Flog.RayTracer.Vector(w.x + v.x, w.y + v.y, w.z + v.z);
256 return new Flog.RayTracer.Vector(v.x - w.x, v.y - w.y, v.z - w.z);
260 return new Flog.RayTracer.Vector(v.x * w.x, v.y * w.y, v.z * w.z);
264 return new Flog.RayTracer.Vector(v.x * w, v.y * w, v.z * w);
271 /* Fake a Flog.* namespace */
272 if(typeof(Flog) == 'undefined') var Flog = {};
273 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
275 Flog.RayTracer.Ray = Class.create();
277 Flog.RayTracer.Ray.prototype = {
289 /* Fake a Flog.* namespace */
290 if(typeof(Flog) == 'undefined') var Flog = {};
291 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
293 Flog.RayTracer.Scene = Class.create();
295 Flog.RayTracer.Scene.prototype = {
302 this.camera = new Flog.RayTracer.Camera(
303 new Flog.RayTracer.Vector(0,0,-5),
304 new Flog.RayTracer.Vector(0,0,1),
305 new Flog.RayTracer.Vector(0,1,0)
309 this.background = new Flog.RayTracer.Background(new Flog.RayTracer.Color(0,0,0.5), 0.2);
312 /* Fake a Flog.* namespace */
313 if(typeof(Flog) == 'undefined') var Flog = {};
314 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
315 if(typeof(Flog.RayTracer.Material) == 'undefined') Flog.RayTracer.Material = {};
317 Flog.RayTracer.Material.BaseMaterial = Class.create();
319 Flog.RayTracer.Material.BaseMaterial.prototype = {
346 /* Fake a Flog.* namespace */
347 if(typeof(Flog) == 'undefined') var Flog = {};
348 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
350 Flog.RayTracer.Material.Solid = Class.create();
352 Flog.RayTracer.Material.Solid.prototype = Object.extend(
353 new Flog.RayTracer.Material.BaseMaterial(), {
371 /* Fake a Flog.* namespace */
372 if(typeof(Flog) == 'undefined') var Flog = {};
373 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
375 Flog.RayTracer.Material.Chessboard = Class.create();
377 Flog.RayTracer.Material.Chessboard.prototype = Object.extend(
378 new Flog.RayTracer.Material.BaseMaterial(), {
407 /* Fake a Flog.* namespace */
408 if(typeof(Flog) == 'undefined') var Flog = {};
409 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
410 if(typeof(Flog.RayTracer.Shape) == 'undefined') Flog.RayTracer.Shape = {};
412 Flog.RayTracer.Shape.Sphere = Class.create();
414 Flog.RayTracer.Shape.Sphere.prototype = {
422 var info = new Flog.RayTracer.IntersectionInfo();
425 var dst = Flog.RayTracer.Vector.prototype.subtract(ray.position, this.position);
434 info.position = Flog.RayTracer.Vector.prototype.add(
436 Flog.RayTracer.Vector.prototype.multiplyScalar(
441 info.normal = Flog.RayTracer.Vector.prototype.subtract(
457 /* Fake a Flog.* namespace */
458 if(typeof(Flog) == 'undefined') var Flog = {};
459 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
460 if(typeof(Flog.RayTracer.Shape) == 'undefined') Flog.RayTracer.Shape = {};
462 Flog.RayTracer.Shape.Plane = Class.create();
464 Flog.RayTracer.Shape.Plane.prototype = {
474 var info = new Flog.RayTracer.IntersectionInfo();
484 info.position = Flog.RayTracer.Vector.prototype.add(
486 Flog.RayTracer.Vector.prototype.multiplyScalar(
495 var vU = new Flog.RayTracer.Vector(this.position.y, this.position.z, -this.position.x);
511 /* Fake a Flog.* namespace */
512 if(typeof(Flog) == 'undefined') var Flog = {};
513 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
515 Flog.RayTracer.IntersectionInfo = Class.create();
517 Flog.RayTracer.IntersectionInfo.prototype = {
527 this.color = new Flog.RayTracer.Color(0,0,0);
534 /* Fake a Flog.* namespace */
535 if(typeof(Flog) == 'undefined') var Flog = {};
536 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
538 Flog.RayTracer.Camera = Class.create();
540 Flog.RayTracer.Camera.prototype = {
552 this.screen = Flog.RayTracer.Vector.prototype.add(this.position, this.lookAt);
556 var pos = Flog.RayTracer.Vector.prototype.subtract(
558 Flog.RayTracer.Vector.prototype.subtract(
559 Flog.RayTracer.Vector.prototype.multiplyScalar(this.equator, vx),
560 Flog.RayTracer.Vector.prototype.multiplyScalar(this.up, vy)
564 var dir = Flog.RayTracer.Vector.prototype.subtract(
569 var ray = new Flog.RayTracer.Ray(pos, dir.normalize());
578 /* Fake a Flog.* namespace */
579 if(typeof(Flog) == 'undefined') var Flog = {};
580 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
582 Flog.RayTracer.Background = Class.create();
584 Flog.RayTracer.Background.prototype = {
593 /* Fake a Flog.* namespace */
594 if(typeof(Flog) == 'undefined') var Flog = {};
595 if(typeof(Flog.RayTracer) == 'undefined') Flog.RayTracer = {};
597 Flog.RayTracer.Engine = Class.create();
599 Flog.RayTracer.Engine.prototype = {
677 var best = new Flog.RayTracer.IntersectionInfo();
697 var R1 = Flog.RayTracer.Vector.prototype.add(
698 Flog.RayTracer.Vector.prototype.multiplyScalar(N, 2*c1),
701 return new Flog.RayTracer.Ray(P, R1);
706 var color = Flog.RayTracer.Color.prototype.multiplyScalar(info.color, scene.background.ambience);
714 var v = Flog.RayTracer.Vector.prototype.subtract(
722 color = Flog.RayTracer.Color.prototype.add(
724 Flog.RayTracer.Color.prototype.multiply(
726 Flog.RayTracer.Color.prototype.multiplyScalar(
750 color = Flog.RayTracer.Color.prototype.blend(
763 var shadowInfo = new Flog.RayTracer.IntersectionInfo();
766 var shadowRay = new Flog.RayTracer.Ray(info.position, v);
770 var vA = Flog.RayTracer.Color.prototype.multiplyScalar(color, 0.5);
772 color = Flog.RayTracer.Color.prototype.addScalar(vA,dB);
778 var Lv = Flog.RayTracer.Vector.prototype.subtract(
783 var E = Flog.RayTracer.Vector.prototype.subtract(
788 var H = Flog.RayTracer.Vector.prototype.subtract(
794 color = Flog.RayTracer.Color.prototype.add(
795 Flog.RayTracer.Color.prototype.multiplyScalar(light.color, glossWeight),
807 var scene = new Flog.RayTracer.Scene();
809 scene.camera = new Flog.RayTracer.Camera(
810 new Flog.RayTracer.Vector(0, 0, -15),
811 new Flog.RayTracer.Vector(-0.2, 0, 5),
812 new Flog.RayTracer.Vector(0, 1, 0)
815 scene.background = new Flog.RayTracer.Background(
816 new Flog.RayTracer.Color(0.5, 0.5, 0.5),
820 var sphere = new Flog.RayTracer.Shape.Sphere(
821 new Flog.RayTracer.Vector(-1.5, 1.5, 2),
823 new Flog.RayTracer.Material.Solid(
824 new Flog.RayTracer.Color(0,0.5,0.5),
832 var sphere1 = new Flog.RayTracer.Shape.Sphere(
833 new Flog.RayTracer.Vector(1, 0.25, 1),
835 new Flog.RayTracer.Material.Solid(
836 new Flog.RayTracer.Color(0.9,0.9,0.9),
844 var plane = new Flog.RayTracer.Shape.Plane(
845 new Flog.RayTracer.Vector(0.1, 0.9, -0.5).normalize(),
847 new Flog.RayTracer.Material.Chessboard(
848 new Flog.RayTracer.Color(1,1,1),
849 new Flog.RayTracer.Color(0,0,0),
861 var light = new Flog.RayTracer.Light(
862 new Flog.RayTracer.Vector(5, 10, -1),
863 new Flog.RayTracer.Color(0.8, 0.8, 0.8)
866 var light1 = new Flog.RayTracer.Light(
867 new Flog.RayTracer.Vector(-3, 5, -15),
868 new Flog.RayTracer.Color(0.8, 0.8, 0.8),
884 var raytracer = new Flog.RayTracer.Engine(