Manta Interactive Ray Tracer Development Mailing List

Text archives Help


[Manta] r1761 - trunk/scenes


Chronological Thread 
  • From: shirley@sci.utah.edu
  • To: manta@sci.utah.edu
  • Subject: [Manta] r1761 - trunk/scenes
  • Date: Sun, 7 Oct 2007 08:21:32 -0600 (MDT)

Author: shirley
Date: Sun Oct  7 08:21:31 2007
New Revision: 1761

Modified:
   trunk/scenes/softshadow.cc
Log:
now has N random samples (needs to become a CLA)
epsilon needs to change still (acne)
ground plane needs texture



Modified: trunk/scenes/softshadow.cc
==============================================================================
--- trunk/scenes/softshadow.cc  (original)
+++ trunk/scenes/softshadow.cc  Sun Oct  7 08:21:31 2007
@@ -77,19 +77,29 @@
 
 void addFence(Group* group)
 {
-  // Top
   Material* white = new Lambertian(Color::white() * 0.8);
-  group->add( new Cube(white, Vector(900,-100,-200), Vector(1000,0,600)) );
+
+  //vertica posts
+  group->add( new Cube(white, Vector(910,-80,-200), Vector(990,0,400)) );
+  group->add( new Cube(white, Vector(-90,-80,-200), Vector(-10,0,400)) );
+  group->add( new Cube(white, Vector(-1090,-80,-200), Vector(-1010,0,400)) );
+
+  //cross bars
+  group->add( new Cube(white, Vector(-1090,-80,400), Vector(990,0,440)) );
+  group->add( new Cube(white, Vector(-1090,-80,0), Vector(990,0,40)) );
+
+  //slats
+  group->add( new Cube(white, Vector(900,-100,-150), Vector(1000,-80,600)) );
   group->add( new Cube(white, Vector(700,-100,-150), Vector(800,-80,600)) );
   group->add( new Cube(white, Vector(500,-100,-150), Vector(600,-80,600)) );
   group->add( new Cube(white, Vector(300,-100,-150), Vector(400,-80,600)) );
   group->add( new Cube(white, Vector(100,-100,-150), Vector(200,-80,600)) );
-  group->add( new Cube(white, Vector(-100,-100,-200), Vector(0,0,600)) );
+  group->add( new Cube(white, Vector(-100,-100,-150), Vector(0,-80,600)) );
   group->add( new Cube(white, Vector(-300,-100,-150), Vector(-200,-80,600)) 
);
   group->add( new Cube(white, Vector(-500,-100,-150), Vector(-400,-80,600)) 
);
   group->add( new Cube(white, Vector(-700,-100,-150), Vector(-600,-80,600)) 
);
   group->add( new Cube(white, Vector(-900,-100,-150), Vector(-800,-80,600)) 
);
-  group->add( new Cube(white, Vector(-1100,-100,-200), Vector(-1000,0,600)) 
);
+  group->add( new Cube(white, Vector(-1100,-100,-150), 
Vector(-1000,-80,600)) );
 }
 
 
@@ -104,6 +114,19 @@
   group->add(floor);
 }
 
+void addLights( LightSet* lights, int num_lights)
+{
+  float minx = -2000; float scalex = 600;
+  float minz = 4000; float scalez = 600;
+  float y = 4000;
+  Color col = Color(RGB(0.8,0.8,0.8)) * (1.0/num_lights);
+  for (int i = 0; i < num_lights; i++) { 
+     float u = drand48();
+     float v = drand48();
+     lights->add(new PointLight(Vector(minx + u * scalex, y, minz + 
v*scalez), col));
+  }
+}
+
 
 extern "C"
 Scene* make_scene(const ReadContext&, const vector<string>& args)
@@ -130,22 +153,7 @@
   scene->setObject(bvh);
 
   LightSet* lights = new LightSet();
-  lights->add(new PointLight(Vector(225,5*375,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(375,5*300,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(400,5*350,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(550,5*325,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(275,5*425,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(300,5*400,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(475,5*450,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(500,5*475,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(250,5*575,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(350,5*525,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(525,5*500,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(425,5*550,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(200,5*600,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(325,5*675,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(450,5*625,2300), 
Color(RGB(1,1,1))*0.05));
-  lights->add(new PointLight(Vector(575,5*650,2300), 
Color(RGB(1,1,1))*0.05));
+  addLights(lights, 100);
   Color cup(RGB(0.5, 0.5, 0));
   Color cdown(RGB(0.1, 0.1, 0.7));
   Vector up(0,0,1);
@@ -154,7 +162,7 @@
   scene->setLights(lights);
 
   // Add a default camera
-  Vector eye(700,1390,300);
+  Vector eye(1400,1500,600);
   Vector lookat(0,0,150);
   Real fov=45;
   scene->addBookmark("default view", eye, lookat, up, fov, fov);




  • [Manta] r1761 - trunk/scenes, shirley, 10/07/2007

Archive powered by MHonArc 2.6.16.

Top of page