POV-Ray : Newsgroups : povray.general : Bump Map Madness Server Time
29 Mar 2024 08:59:20 EDT (-0400)
  Bump Map Madness (Message 1 to 10 of 17)  
Goto Latest 10 Messages Next 7 Messages >>>
From: clipka
Subject: Bump Map Madness
Date: 29 Nov 2008 05:10:01
Message: <web.493114d0114da4434dea3830@news.povray.org>
Anyone ever noticed that bump maps are somewhat queer - and definitely wrong -
in PoV-ray?

Check out the following scene; it will need a file named bump_map.png - anything
that gives a nice clear dent will do, although I suggest a simple big black
blurred splotch on a white background, maybe with some small indicators added
to show orientation.

Output will be a cube (well, seven differently oriented copies to be exact) with
three dents on each side (well, on three of the sides that is):

- a real modeled dent for reference (uncolored)
- a bump-mapped dent using simple projection mapping (red/green/blue)
- a bump-mapped dent using UV mapping (gray)

Light is from the camera location (with three colored helper lights offset a
bit).

Notice how some of the dents do not only bulge outwards instead of inwards -
some even go "SIDEWAYS" somehow. You gotta see this to know what I mean.

Also notice how this changes for even the very same dent, depending on the
orientation of the whole object.

This is what I'd call weird (and actually broken). Am I the first to see this??


// ----- end of scene code

global_settings{
  assumed_gamma 2.2
  max_trace_level 5
  ambient_light 1
}
background { rgb <0,0,0> }
#declare camera_location = <-8, 8, 8>;
camera{
  perspective
  location camera_location
  right x*image_width/image_height
  up y
  angle 45
  look_at <0.000000, 0.000000, 0.000000>
}
#local LightOffset = 2;
light_source { camera_location                  color rgb 0.8 parallel point_at
<0,0,0> }
light_source { camera_location - LightOffset*x  color rgb 0.7*<1,0,0> parallel
point_at <0,0,0> }
light_source { camera_location + LightOffset*y  color rgb 0.7*<0,1,0> parallel
point_at <0,0,0> }
light_source { camera_location + LightOffset*z  color rgb 0.7*<0,0,1> parallel
point_at <0,0,0> }
default { pigment { color rgb 1 } finish  { ambient 0 diffuse 1 specular 0 } }
#declare wm_cube_plain  = texture{ pigment { color rgb <1.0,1.0,1.0> } }
#declare wm_cube_z      = texture{ pigment { color rgb <0.5,0.5,1.0> } normal {
bump_map { png "bump_map.png" bump_size 5.5 } scale <-1,0,0> } }
#declare wm_cube_y      = texture{ pigment { color rgb <0.5,1.0,0.5> } normal {
bump_map { png "bump_map.png" bump_size 5.5 } rotate x*90 rotate y*180 } }
#declare wm_cube_x      = texture{ pigment { color rgb <1.0,0.5,0.5> } normal {
bump_map { png "bump_map.png" bump_size 5.5 } rotate y*90 } }
#declare wm_cube_uv     = texture{ pigment { color rgb <0.5,0.5,0.5> } normal {
uv_mapping bump_map { png "bump_map.png" bump_size 5.5 } } }
#declare wo_0_cube1 = mesh2{
  vertex_vectors { 194, <1.000000, -1.000000, 1.000000>, <1.000000, 1.000000,
1.000000>, <-1.000000, 1.000000, 1.000000>, <-1.000000, -1.000000, 1.000000>,
<1.000000, -1.000000, -1.000000>, <1.000000, 1.000000, -1.000000>, <-1.000000,
1.000000, -1.000000>, <-1.000000, -1.000000, -1.000000>, <1.000000, 0.000000,
1.000000>, <0.000000, -1.000000, 1.000000>,
   <1.000000, -1.000000, 0.000000>, <0.000000, 1.000000, 1.000000>, <1.000000,
1.000000, 0.000000>, <-1.000000, 0.000000, 1.000000>, <-1.000000, 1.000000,
0.000000>, <-1.000000, -1.000000, 0.000000>, <1.000000, 0.000000, -1.000000>,
<0.000000, -1.000000, -1.000000>, <0.000000, 1.000000, -1.000000>, <-1.000000,
0.000000, -1.000000>, <0.015000, -0.015000, 1.000000>,
   <-1.000000, -0.015000, -0.015000>, <0.000000, -1.000000, 0.000000>,
<0.015000, 1.000000, -0.015000>, <0.000000, 0.000000, -1.000000>, <1.000000,
0.000000, 0.000000>, <0.300781, 0.993750, -0.699219>, <0.699219, 0.993750,
-0.699219>, <0.699219, 0.993750, -0.300781>, <0.300781, 0.993750, -0.300781>,
<0.699219, -0.300781, 0.993750>, <0.699219, -0.699219, 0.993750>,
   <0.300781, -0.699219, 0.993750>, <0.300781, -0.300781, 0.993750>, <-0.993750,
-0.699219, -0.300781>, <-0.993750, -0.699219, -0.699219>, <-0.993750, -0.300781,
-0.699219>, <-0.993750, -0.300781, -0.300781>, <0.409722, 0.961111, -0.590278>,
<0.590278, 0.961111, -0.590278>, <0.590278, 0.961111, -0.409722>, <0.409722,
0.961111, -0.409722>, <-0.961111, -0.590278, -0.409722>,
   <-0.961111, -0.590278, -0.590278>, <-0.961111, -0.409722, -0.590278>,
<-0.961111, -0.409722, -0.409722>, <0.590278, -0.409722, 0.961111>, <0.590278,
-0.590278, 0.961111>, <0.409722, -0.590278, 0.961111>, <0.409722, -0.409722,
0.961111>, <1.000000, -0.500000, 1.000000>, <0.500000, -1.000000, 1.000000>,
<1.000000, -1.000000, 0.500000>, <0.500000, 1.000000, 1.000000>,
   <1.000000, 1.000000, 0.500000>, <-1.000000, 0.500000, 1.000000>, <-1.000000,
1.000000, 0.500000>, <-1.000000, -1.000000, 0.500000>, <1.000000, -0.500000,
-1.000000>, <0.500000, -1.000000, -1.000000>, <0.500000, 1.000000, -1.000000>,
<-1.000000, 0.500000, -1.000000>, <1.000000, 0.500000, 1.000000>, <-0.500000,
-1.000000, 1.000000>, <1.000000, -1.000000, -0.500000>,
   <-0.500000, 1.000000, 1.000000>, <1.000000, 1.000000, -0.500000>, <-1.000000,
-0.500000, 1.000000>, <-1.000000, 1.000000, -0.500000>, <-1.000000, -1.000000,
-0.500000>, <1.000000, 0.500000, -1.000000>, <-0.500000, -1.000000, -1.000000>,
<-0.500000, 1.000000, -1.000000>, <-1.000000, -0.500000, -1.000000>, <-0.093750,
-0.500000, 1.000000>, <0.500000, 0.093750, 1.000000>,
   <0.000000, 0.500000, 1.000000>, <-0.500000, 0.000000, 1.000000>, <-1.000000,
-0.500000, 0.093750>, <-1.000000, 0.000000, 0.500000>, <-1.000000, 0.500000,
0.000000>, <-1.000000, 0.093750, -0.500000>, <0.500000, -1.000000, 0.000000>,
<0.000000, -1.000000, 0.500000>, <-0.500000, -1.000000, 0.000000>, <0.000000,
-1.000000, -0.500000>, <-0.500000, 1.000000, 0.000000>,
   <0.000000, 1.000000, 0.500000>, <0.500000, 1.000000, 0.093750>, <-0.093750,
1.000000, -0.500000>, <0.000000, 0.500000, -1.000000>, <0.500000, 0.000000,
-1.000000>, <0.000000, -0.500000, -1.000000>, <-0.500000, 0.000000, -1.000000>,
<1.000000, 0.500000, 0.000000>, <1.000000, 0.000000, 0.500000>, <1.000000,
-0.500000, 0.000000>, <1.000000, 0.000000, -0.500000>,
   <0.500000, 0.993750, -0.765625>, <0.218750, 1.000000, -0.781250>, <0.765625,
0.993750, -0.500000>, <0.781250, 1.000000, -0.781250>, <0.500000, 0.993750,
-0.234375>, <0.781250, 1.000000, -0.218750>, <0.234375, 0.993750, -0.500000>,
<0.218750, 1.000000, -0.218750>, <0.765625, -0.500000, 0.993750>, <0.781250,
-0.218750, 1.000000>, <0.500000, -0.765625, 0.993750>,
   <0.781250, -0.781250, 1.000000>, <0.234375, -0.500000, 0.993750>, <0.218750,
-0.781250, 1.000000>, <0.500000, -0.234375, 0.993750>, <0.218750, -0.218750,
1.000000>, <-0.993750, -0.765625, -0.500000>, <-1.000000, -0.781250,
-0.218750>, <-0.993750, -0.500000, -0.765625>, <-1.000000, -0.781250,
-0.781250>, <-0.993750, -0.234375, -0.500000>, <-1.000000, -0.218750,
-0.781250>,
   <-0.993750, -0.500000, -0.234375>, <-1.000000, -0.218750, -0.218750>,
<0.500000, 0.956250, -0.609375>, <0.359375, 0.975000, -0.640625>, <0.609375,
0.956250, -0.500000>, <0.640625, 0.975000, -0.640625>, <0.500000, 0.956250,
-0.390625>, <0.640625, 0.975000, -0.359375>, <0.390625, 0.956250, -0.500000>,
<0.359375, 0.975000, -0.359375>, <-0.956250, -0.609375, -0.500000>,
   <-0.975000, -0.640625, -0.359375>, <-0.956250, -0.500000, -0.609375>,
<-0.975000, -0.640625, -0.640625>, <-0.956250, -0.390625, -0.500000>,
<-0.975000, -0.359375, -0.640625>, <-0.956250, -0.500000, -0.390625>,
<-0.975000, -0.359375, -0.359375>, <0.609375, -0.500000, 0.956250>, <0.640625,
-0.359375, 0.975000>, <0.500000, -0.609375, 0.956250>, <0.640625, -0.640625,
0.975000>,
   <0.390625, -0.500000, 0.956250>, <0.359375, -0.640625, 0.975000>, <0.500000,
-0.390625, 0.956250>, <0.359375, -0.359375, 0.975000>, <0.500000, -0.500000,
0.950000>, <0.500000, 0.500000, 1.000000>, <-0.500000, 0.500000, 1.000000>,
<-0.500000, -0.500000, 1.000000>, <-1.000000, -0.500000, 0.500000>, <-1.000000,
0.500000, 0.500000>, <-1.000000, 0.500000, -0.500000>,
   <-0.950000, -0.500000, -0.500000>, <0.500000, -1.000000, 0.500000>,
<-0.500000, -1.000000, 0.500000>, <-0.500000, -1.000000, -0.500000>, <0.500000,
-1.000000, -0.500000>, <-0.500000, 1.000000, 0.500000>, <0.500000, 1.000000,
0.500000>, <0.500000, 0.950000, -0.500000>, <-0.500000, 1.000000, -0.500000>,
<0.500000, 0.500000, -1.000000>, <0.500000, -0.500000, -1.000000>,
   <-0.500000, -0.500000, -1.000000>, <-0.500000, 0.500000, -1.000000>,
<1.000000, 0.500000, 0.500000>, <1.000000, -0.500000, 0.500000>, <1.000000,
-0.500000, -0.500000>, <1.000000, 0.500000, -0.500000>, <0.500000, 1.000000,
-0.875000>, <0.875000, 1.000000, -0.500000>, <0.500000, 1.000000, -0.125000>,
<0.125000, 1.000000, -0.500000>, <0.875000, -0.500000, 1.000000>,
   <0.500000, -0.875000, 1.000000>, <0.125000, -0.500000, 1.000000>, <0.500000,
-0.125000, 1.000000>, <-1.000000, -0.875000, -0.500000>, <-1.000000, -0.500000,
-0.875000>, <-1.000000, -0.125000, -0.500000>, <-1.000000, -0.500000,
-0.125000>, <0.500000, 0.975000, -0.687500>, <0.687500, 0.975000, -0.500000>,
<0.500000, 0.975000, -0.312500>, <0.312500, 0.975000, -0.500000>,
   <-0.975000, -0.687500, -0.500000>, <-0.975000, -0.500000, -0.687500>,
<-0.975000, -0.312500, -0.500000>, <-0.975000, -0.500000, -0.312500>,
<0.687500, -0.500000, 0.975000>, <0.500000, -0.687500, 0.975000>, <0.312500,
-0.500000, 0.975000>, <0.500000, -0.312500, 0.975000>}
  //#local average_center = <0.002438, -0.002438, -0.002438>;
  normal_vectors { 413, <-0.000000, 0.000000, -1.000000>, <1.000000, 0.000000,
0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>,
<0.000000, 0.000000, 1.000000>, <-1.000000, 0.000000, 0.000000>, <-0.077474,
-0.993980, -0.077474>, <0.077474, -0.993980, -0.077474>, <0.077474, -0.993980,
0.077474>, <-0.077474, -0.993980, 0.077474>,
   <0.077474, 0.077474, -0.993980>, <0.077474, -0.077474, -0.993980>,
<-0.077474, -0.077474, -0.993980>, <-0.077474, 0.077474, -0.993980>, <0.993980,
-0.077474, 0.077474>, <0.993980, -0.077474, -0.077474>, <0.993980, 0.077474,
-0.077474>, <0.993980, 0.077474, 0.077474>, <-0.121525, -0.985121, -0.121525>,
<0.121525, -0.985121, -0.121525>, <0.121525, -0.985121, 0.121525>,
   <-0.121525, -0.985121, 0.121525>, <0.985121, -0.121525, 0.121525>, <0.985121,
-0.121525, -0.121525>, <0.985121, 0.121525, -0.121525>, <0.985121, 0.121525,
0.121525>, <0.121525, 0.121525, -0.985121>, <0.121525, -0.121525, -0.985121>,
<-0.121525, -0.121525, -0.985121>, <-0.121525, 0.121525, -0.985121>, <0.000000,
0.000000, -1.000000>, <-0.000000, 0.000000, -1.000000>,
   <-0.000000, 0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>, <1.000000,
0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <1.000000, 0.000000,
0.000000>, <1.000000, 0.000000, 0.000000>, <0.000000, 1.000000, 0.000000>,
<0.000000, 1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000,
1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>,
   <0.000000, -1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000,
-1.000000, 0.000000>, <0.000000, 0.000000, 1.000000>, <0.000000, 0.000000,
1.000000>, <0.000000, 0.000000, 1.000000>, <0.000000, 0.000000, 1.000000>,
<-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>, <-1.000000,
0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>,
   <0.000000, -0.984549, -0.175107>, <-0.012681, -0.999839, -0.012681>,
<0.175107, -0.984549, 0.000000>, <0.012681, -0.999839, -0.012681>, <0.000000,
-0.984549, 0.175107>, <0.012681, -0.999839, 0.012681>, <-0.175107, -0.984549,
0.000000>, <-0.012681, -0.999839, 0.012681>, <0.175107, -0.000000, -0.984549>,
<0.012681, 0.012681, -0.999839>, <0.000000, -0.175107, -0.984549>,
   <0.012681, -0.012681, -0.999839>, <-0.175107, 0.000000, -0.984549>,
<-0.012681, -0.012681, -0.999839>, <-0.000000, 0.175107, -0.984549>,
<-0.012681, 0.012681, -0.999839>, <0.984549, -0.175107, -0.000000>, <0.999839,
-0.012681, 0.012681>, <0.984549, -0.000000, -0.175107>, <0.999839, -0.012681,
-0.012681>, <0.984549, 0.175107, 0.000000>, <0.999839, 0.012681, -0.012681>,
   <0.984549, 0.000000, 0.175107>, <0.999839, 0.012681, 0.012681>, <0.000000,
-0.989335, -0.145659>, <-0.149171, -0.977495, -0.149171>, <0.145659, -0.989335,
-0.000000>, <0.149171, -0.977495, -0.149171>, <0.000000, -0.989335, 0.145659>,
<0.149171, -0.977495, 0.149171>, <-0.145659, -0.989335, 0.000000>, <-0.149171,
-0.977495, 0.149171>, <0.989335, -0.145659, 0.000000>,
   <0.977495, -0.149171, 0.149171>, <0.989335, -0.000000, -0.145659>, <0.977495,
-0.149171, -0.149171>, <0.989335, 0.145659, -0.000000>, <0.977495, 0.149171,
-0.149171>, <0.989335, -0.000000, 0.145659>, <0.977495, 0.149171, 0.149171>,
<0.145659, -0.000000, -0.989335>, <0.149171, 0.149171, -0.977495>, <0.000000,
-0.145659, -0.989335>, <0.149171, -0.149171, -0.977495>,
   <-0.145659, -0.000000, -0.989335>, <-0.149171, -0.149171, -0.977495>,
<0.000000, 0.145659, -0.989335>, <-0.149171, 0.149171, -0.977495>, <0.000000,
-0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>, <0.000000, 0.000000,
-1.000000>, <0.000000, 0.000000, -1.000000>, <1.000000, 0.000000, 0.000000>,
<1.000000, 0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>,
   <1.000000, -0.000000, -0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000,
1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000, 1.000000,
0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>,
<0.000000, -1.000000, -0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000,
0.000000, 1.000000>, <0.000000, 0.000000, 1.000000>,
   <0.000000, 0.000000, 1.000000>, <0.000000, 0.000000, 1.000000>, <-1.000000,
0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000,
0.000000>, <-1.000000, 0.000000, 0.000000>, <0.000000, -0.999276, -0.038045>,
<0.038045, -0.999276, -0.000000>, <0.000000, -0.999276, 0.038045>, <-0.038045,
-0.999276, 0.000000>, <0.038045, 0.000000, -0.999276>,
   <0.000000, -0.038045, -0.999276>, <-0.038045, 0.000000, -0.999276>,
<-0.000000, 0.038045, -0.999276>, <0.999276, -0.038045, 0.000000>, <0.999276,
0.000000, -0.038045>, <0.999276, 0.038045, 0.000000>, <0.999276, 0.000000,
0.038045>, <0.000000, -0.974789, -0.223129>, <0.223129, -0.974789, -0.000000>,
<0.000000, -0.974789, 0.223129>, <-0.223129, -0.974789, 0.000000>,
   <0.974789, -0.223129, 0.000000>, <0.974789, -0.000000, -0.223129>, <0.974789,
0.223129, -0.000000>, <0.974789, -0.000000, 0.223129>, <0.223129, -0.000000,
-0.974789>, <0.000000, -0.223129, -0.974789>, <-0.223129, -0.000000,
-0.974789>, <0.000000, 0.223129, -0.974789>, <0.000000, 1.000000, 0.000000>,
<-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>,
   <0.000000, 0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>, <0.000000,
0.000000, -1.000000>, <0.000000, -1.000000, 0.000000>, <0.000000, -1.000000,
0.000000>, <-1.000000, 0.000000, 0.000000>, <0.000000, 0.000000, -1.000000>,
<0.000000, 0.000000, -1.000000>, <1.000000, 0.000000, 0.000000>, <1.000000,
0.000000, 0.000000>, <0.000000, -1.000000, 0.000000>,
   <0.000000, 0.000000, -1.000000>, <1.000000, 0.000000, 0.000000>, <0.000000,
1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000, 1.000000,
0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000, 0.000000, 1.000000>,
<-1.000000, 0.000000, 0.000000>, <0.000000, 0.000000, 1.000000>, <0.000000,
0.000000, 1.000000>, <-1.000000, 0.000000, 0.000000>,
   <-1.000000, 0.000000, 0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000,
-1.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <0.000000, -1.000000,
0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000, 0.000000, 1.000000>,
<0.000000, 1.000000, 0.000000>, <0.000000, 0.000000, 1.000000>, <0.000000,
0.000000, 1.000000>, <1.000000, 0.000000, 0.000000>,
   <1.000000, 0.000000, 0.000000>, <0.000000, 0.000000, -1.000000>, <-1.000000,
0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000,
0.000000>, <0.000000, 0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>,
<0.000000, 0.000000, -1.000000>, <0.000000, 1.000000, 0.000000>, <0.000000,
1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>,
   <0.000000, 0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>, <0.000000,
1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000, 1.000000,
0.000000>, <-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>,
<-1.000000, 0.000000, 0.000000>, <0.000000, 0.000000, -1.000000>, <0.000000,
0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>,
   <0.000000, -1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000,
-1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>, <-1.000000, 0.000000,
0.000000>, <-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>,
<0.000000, -1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000,
0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>,
   <0.000000, 0.000000, -1.000000>, <1.000000, 0.000000, 0.000000>, <1.000000,
0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <1.000000, 0.000000,
0.000000>, <1.000000, 0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>,
<0.000000, -1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000,
-1.000000, 0.000000>, <1.000000, 0.000000, 0.000000>,
   <0.000000, 1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000,
1.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <1.000000, 0.000000,
0.000000>, <0.000000, 0.000000, 1.000000>, <0.000000, 0.000000, 1.000000>,
<0.000000, 0.000000, 1.000000>, <-1.000000, 0.000000, 0.000000>, <-1.000000,
0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>,
   <0.000000, 1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000,
1.000000, 0.000000>, <0.000000, 0.000000, 1.000000>, <0.000000, 0.000000,
1.000000>, <0.000000, 0.000000, 1.000000>, <0.000000, -1.000000, 0.000000>,
<0.000000, 0.000000, 1.000000>, <0.000000, 0.000000, 1.000000>, <0.000000,
0.000000, 1.000000>, <0.000000, -1.000000, 0.000000>,
   <0.000000, -1.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <0.000000,
0.000000, 1.000000>, <0.000000, 0.000000, 1.000000>, <0.000000, 0.000000,
1.000000>, <1.000000, 0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>,
<-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>, <-1.000000,
0.000000, 0.000000>, <0.000000, 0.000000, -1.000000>,
   <0.000000, 0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>, <0.000000,
0.000000, -1.000000>, <0.000000, 1.000000, 0.000000>, <0.000000, 1.000000,
0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000, 0.000000, -1.000000>,
<0.000000, 0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>, <0.000000,
0.000000, -1.000000>, <0.000000, 1.000000, 0.000000>,
   <0.000000, 1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>, <-1.000000,
0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000,
0.000000>, <0.000000, 0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>,
<0.000000, 0.000000, -1.000000>, <0.000000, -1.000000, 0.000000>, <0.000000,
-1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>,
   <0.000000, -1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000,
-1.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000,
0.000000>, <-1.000000, 0.000000, 0.000000>, <0.000000, 0.000000, -1.000000>,
<0.000000, 0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>, <1.000000,
0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>,
   <1.000000, 0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <1.000000,
0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <0.000000, -1.000000,
0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>,
<1.000000, 0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <1.000000,
0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>,
   <0.000000, 1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000,
1.000000, 0.000000>, <0.000000, 0.000000, 1.000000>, <0.000000, 0.000000,
1.000000>, <0.000000, 0.000000, 1.000000>, <-1.000000, 0.000000, 0.000000>,
<-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>, <0.000000,
1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>,
   <0.000000, 1.000000, 0.000000>, <0.000000, 0.000000, 1.000000>, <0.000000,
0.000000, 1.000000>, <0.000000, 0.000000, 1.000000>, <0.000000, 0.000000,
1.000000>, <0.000000, 0.000000, 1.000000>, <0.000000, 0.000000, 1.000000>,
<0.000000, -1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000,
-1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>,
   <1.000000, 0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <1.000000,
0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <0.000000, 0.000000,
1.000000>, <0.000000, 0.000000, 1.000000>, <0.000000, 0.000000, 1.000000>,
<0.000000, 0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>, <0.000000,
0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>,
   <-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>, <-1.000000,
0.000000, 0.000000>, <0.000000, 0.000000, -1.000000>, <0.000000, 0.000000,
-1.000000>, <0.000000, 0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>,
<0.000000, 1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000,
1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>,
   <0.000000, 1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>, <-1.000000,
0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000,
0.000000>, <0.000000, 0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>,
<0.000000, 0.000000, -1.000000>, <0.000000, -1.000000, 0.000000>, <0.000000,
-1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>,
   <-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>, <-1.000000,
0.000000, 0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000, -1.000000,
0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>,
<0.000000, 0.000000, -1.000000>, <0.000000, 0.000000, -1.000000>, <0.000000,
0.000000, -1.000000>, <1.000000, 0.000000, 0.000000>,
   <1.000000, 0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <1.000000,
0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <1.000000, 0.000000,
0.000000>, <0.000000, -1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>,
<0.000000, -1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000,
1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>,
   <1.000000, 0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <1.000000,
0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>, <0.000000, 0.000000,
1.000000>, <0.000000, 0.000000, 1.000000>, <0.000000, 0.000000, 1.000000>,
<-1.000000, 0.000000, 0.000000>, <-1.000000, 0.000000, 0.000000>, <-1.000000,
0.000000, 0.000000>, <0.000000, 1.000000, 0.000000>,
   <0.000000, 1.000000, 0.000000>, <0.000000, 1.000000, 0.000000>, <0.000000,
0.000000, 1.000000>, <0.000000, 0.000000, 1.000000>, <0.000000, 0.000000,
1.000000>, <0.000000, -1.000000, 0.000000>, <0.000000, -1.000000, 0.000000>,
<0.000000, -1.000000, 0.000000>, <0.000000, 0.000000, 1.000000>, <0.000000,
0.000000, 1.000000>, <0.000000, 0.000000, 1.000000>,
   <0.000000, 0.000000, 1.000000>, <0.000000, 0.000000, 1.000000>, <0.000000,
0.000000, 1.000000>, <1.000000, 0.000000, 0.000000>, <1.000000, 0.000000,
0.000000>, <1.000000, 0.000000, 0.000000>, <1.000000, 0.000000, 0.000000>}
  uv_vectors { 9, <0.000000, 0.000000>, <0.000000, 0.500000>, <0.000000,
1.000000>, <0.500000, 0.000000>, <0.500000, 0.500000>, <0.500000, 1.000000>,
<1.000000, 0.000000>, <1.000000, 0.500000>, <1.000000, 1.000000>}
  texture_list { 6, texture{wm_cube_plain}, texture{wm_cube_uv},
texture{wm_cube_x}, texture{wm_cube_y}, texture{wm_cube_z},
texture{wm_cube_plain}}
  face_indices { 384, <47, 140, 146>, 5, <146, 138, 47>, 5, <46, 138, 146>, 5,
<146, 144, 46>, 5, <49, 144, 146>, 5, <49, 146, 142>, 5, <48, 142, 146>, 5,
<48, 146, 140>, 5, <62, 147, 53>, 4, <53, 1, 62>, 4,
   <11, 53, 147>, 4, <11, 147, 76>, 4, <20, 76, 75>, 4, <76, 147, 75>, 4, <62,
8, 75>, 4, <62, 75, 147>, 4, <2, 65, 148>, 1, <2, 148, 55>, 1, <13, 55, 77>, 1,
<55, 148, 77>, 1, <76, 20, 77>, 1,
   <76, 77, 148>, 1, <76, 148, 65>, 1, <65, 11, 76>, 1, <3, 67, 63>, 0, <67,
149, 63>, 0, <63, 149, 74>, 0, <63, 74, 9>, 0, <74, 149, 77>, 0, <74, 77, 20>,
0, <13, 77, 149>, 0, <13, 149, 67>, 0,
   <78, 150, 57>, 2, <57, 15, 78>, 2, <57, 150, 67>, 2, <57, 67, 3>, 2, <67,
150, 13>, 2, <150, 79, 13>, 2, <79, 150, 78>, 2, <78, 21, 79>, 2, <79, 151,
55>, 1, <79, 55, 13>, 1, <55, 151, 2>, 1,
   <151, 56, 2>, 1, <56, 151, 80>, 1, <80, 14, 56>, 1, <80, 151, 79>, 1, <79,
21, 80>, 1, <68, 152, 61>, 0, <61, 6, 68>, 0, <81, 19, 61>, 0, <81, 61, 152>,
0, <21, 81, 80>, 0, <81, 152, 80>, 0,
   <14, 80, 152>, 0, <152, 68, 14>, 0, <43, 132, 153>, 5, <43, 153, 130>, 5,
<42, 130, 153>, 5, <153, 136, 42>, 5, <45, 136, 153>, 5, <153, 134, 45>, 5,
<44, 134, 153>, 5, <44, 153, 132>, 5, <0, 52, 51>, 5,
   <52, 154, 51>, 5, <9, 51, 154>, 5, <154, 83, 9>, 5, <83, 154, 82>, 5, <82,
22, 83>, 5, <154, 52, 10>, 5, <10, 82, 154>, 5, <3, 63, 155>, 5, <155, 57, 3>,
5, <57, 155, 84>, 5, <84, 15, 57>, 5,
   <22, 84, 155>, 5, <22, 155, 83>, 5, <9, 83, 63>, 5, <83, 155, 63>, 5, <15,
84, 156>, 5, <156, 69, 15>, 5, <69, 156, 71>, 5, <71, 7, 69>, 5, <156, 85, 17>,
5, <17, 71, 156>, 5, <22, 85, 84>, 5,
   <85, 156, 84>, 5, <85, 157, 59>, 5, <59, 17, 85>, 5, <157, 64, 4>, 5, <4, 59,
157>, 5, <64, 157, 82>, 5, <64, 82, 10>, 5, <82, 157, 22>, 5, <157, 85, 22>, 5,
<158, 56, 14>, 1, <14, 86, 158>, 1,
   <56, 158, 65>, 1, <56, 65, 2>, 1, <65, 158, 11>, 1, <158, 87, 11>, 1, <87,
158, 86>, 1, <86, 23, 87>, 1, <87, 159, 53>, 0, <87, 53, 11>, 0, <53, 159, 1>,
0, <159, 54, 1>, 0, <54, 159, 88>, 0,
   <88, 12, 54>, 0, <88, 159, 87>, 0, <87, 23, 88>, 0, <39, 124, 160>, 5, <160,
122, 39>, 5, <38, 122, 160>, 5, <38, 160, 128>, 5, <41, 128, 160>, 5, <41, 160,
126>, 5, <40, 126, 160>, 5, <160, 124, 40>, 5,
   <6, 72, 161>, 3, <6, 161, 68>, 3, <68, 161, 86>, 3, <68, 86, 14>, 3, <86,
161, 89>, 3, <86, 89, 23>, 3, <89, 161, 72>, 3, <72, 18, 89>, 3, <90, 162, 60>,
5, <60, 18, 90>, 5, <162, 70, 5>, 5,
   <5, 60, 162>, 5, <70, 162, 91>, 5, <70, 91, 16>, 5, <24, 91, 162>, 5, <162,
90, 24>, 5, <163, 58, 16>, 5, <16, 91, 163>, 5, <58, 163, 59>, 5, <58, 59, 4>,
5, <17, 59, 163>, 5, <163, 92, 17>, 5,
   <92, 163, 91>, 5, <91, 24, 92>, 5, <17, 92, 71>, 5, <92, 164, 71>, 5, <71,
164, 7>, 5, <164, 73, 7>, 5, <73, 164, 93>, 5, <93, 19, 73>, 5, <24, 93, 164>,
5, <24, 164, 92>, 5, <93, 165, 19>, 5,
   <165, 61, 19>, 5, <61, 165, 72>, 5, <72, 6, 61>, 5, <165, 90, 18>, 5, <18,
72, 165>, 5, <90, 165, 93>, 5, <90, 93, 24>, 5, <166, 54, 12>, 5, <12, 94,
166>, 5, <54, 166, 62>, 5, <54, 62, 1>, 5,
   <62, 166, 8>, 5, <166, 95, 8>, 5, <95, 166, 94>, 5, <94, 25, 95>, 5, <95,
167, 50>, 5, <95, 50, 8>, 5, <50, 167, 0>, 5, <167, 52, 0>, 5, <52, 167, 96>,
5, <96, 10, 52>, 5, <25, 96, 167>, 5,
   <25, 167, 95>, 5, <64, 168, 58>, 5, <58, 4, 64>, 5, <16, 58, 168>, 5, <16,
168, 97>, 5, <25, 97, 96>, 5, <97, 168, 96>, 5, <10, 96, 168>, 5, <168, 64,
10>, 5, <5, 70, 169>, 5, <5, 169, 66>, 5,
   <66, 169, 94>, 5, <66, 94, 12>, 5, <94, 169, 25>, 5, <169, 97, 25>, 5, <97,
169, 70>, 5, <70, 16, 97>, 5, <101, 170, 60>, 5, <60, 5, 101>, 5, <99, 18, 60>,
5, <99, 60, 170>, 5, <26, 99, 170>, 5,
   <26, 170, 98>, 5, <27, 98, 170>, 5, <27, 170, 101>, 5, <66, 12, 103>, 5, <66,
103, 171>, 5, <66, 171, 101>, 5, <101, 5, 66>, 5, <27, 101, 171>, 5, <27, 171,
100>, 5, <28, 100, 171>, 5, <28, 171, 103>, 5,
   <105, 172, 88>, 5, <105, 88, 23>, 5, <88, 172, 103>, 5, <88, 103, 12>, 5,
<28, 103, 172>, 5, <172, 102, 28>, 5, <102, 172, 29>, 5, <172, 105, 29>, 5,
<99, 173, 89>, 5, <89, 18, 99>, 5, <23, 89, 105>, 5,
   <89, 173, 105>, 5, <29, 105, 173>, 5, <173, 104, 29>, 5, <104, 173, 26>, 5,
<173, 99, 26>, 5, <50, 0, 109>, 5, <50, 109, 174>, 5, <50, 174, 107>, 5, <107,
8, 50>, 5, <30, 107, 174>, 5, <30, 174, 106>, 5,
   <31, 106, 174>, 5, <31, 174, 109>, 5, <111, 175, 51>, 5, <111, 51, 9>, 5,
<51, 175, 109>, 5, <51, 109, 0>, 5, <31, 109, 175>, 5, <175, 108, 31>, 5, <108,
175, 32>, 5, <175, 111, 32>, 5, <113, 176, 74>, 5,
   <113, 74, 20>, 5, <74, 176, 111>, 5, <74, 111, 9>, 5, <32, 111, 176>, 5,
<176, 110, 32>, 5, <110, 176, 33>, 5, <176, 113, 33>, 5, <75, 8, 107>, 5, <75,
107, 177>, 5, <113, 20, 75>, 5, <113, 75, 177>, 5,
   <33, 113, 177>, 5, <33, 177, 112>, 5, <30, 112, 177>, 5, <30, 177, 107>, 5,
<117, 178, 69>, 5, <69, 7, 117>, 5, <69, 178, 115>, 5, <69, 115, 15>, 5, <34,
115, 178>, 5, <178, 114, 34>, 5, <114, 178, 35>, 5,
   <178, 117, 35>, 5, <119, 179, 73>, 5, <73, 19, 119>, 5, <117, 7, 73>, 5,
<117, 73, 179>, 5, <35, 117, 179>, 5, <179, 116, 35>, 5, <116, 179, 36>, 5,
<179, 119, 36>, 5, <121, 180, 81>, 5, <121, 81, 21>, 5,
   <81, 180, 119>, 5, <119, 19, 81>, 5, <36, 119, 180>, 5, <36, 180, 118>, 5,
<37, 118, 180>, 5, <37, 180, 121>, 5, <78, 15, 115>, 5, <78, 115, 181>, 5,
<121, 21, 78>, 5, <121, 78, 181>, 5, <37, 121, 181>, 5,
   <37, 181, 120>, 5, <34, 120, 181>, 5, <34, 181, 115>, 5, <98, 27, 125>, 5,
<98, 125, 182>, 5, <98, 182, 123>, 5, <123, 26, 98>, 5, <38, 123, 182>, 5, <38,
182, 122>, 5, <182, 125, 39>, 5, <39, 122, 182>, 5,
   <100, 28, 127>, 5, <100, 127, 183>, 5, <100, 183, 125>, 5, <125, 27, 100>, 5,
<39, 125, 183>, 5, <39, 183, 124>, 5, <183, 127, 40>, 5, <40, 124, 183>, 5,
<129, 184, 102>, 5, <102, 29, 129>, 5, <28, 102, 127>, 5,
   <102, 184, 127>, 5, <40, 127, 184>, 5, <184, 126, 40>, 5, <126, 184, 41>, 5,
<184, 129, 41>, 5, <123, 185, 104>, 5, <104, 26, 123>, 5, <29, 104, 129>, 5,
<104, 185, 129>, 5, <41, 129, 185>, 5, <185, 128, 41>, 5,
   <128, 185, 38>, 5, <185, 123, 38>, 5, <133, 186, 114>, 5, <114, 35, 133>, 5,
<34, 114, 131>, 5, <114, 186, 131>, 5, <42, 131, 186>, 5, <186, 130, 42>, 5,
<130, 186, 43>, 5, <186, 133, 43>, 5, <135, 187, 116>, 5,
   <116, 36, 135>, 5, <35, 116, 133>, 5, <116, 187, 133>, 5, <43, 133, 187>, 5,
<187, 132, 43>, 5, <132, 187, 44>, 5, <187, 135, 44>, 5, <118, 37, 137>, 5,
<118, 137, 188>, 5, <118, 188, 135>, 5, <135, 36, 118>, 5,
   <44, 135, 188>, 5, <44, 188, 134>, 5, <188, 137, 45>, 5, <45, 134, 188>, 5,
<120, 34, 131>, 5, <120, 131, 189>, 5, <120, 189, 137>, 5, <137, 37, 120>, 5,
<45, 137, 189>, 5, <45, 189, 136>, 5, <189, 131, 42>, 5,
   <42, 136, 189>, 5, <31, 141, 106>, 5, <141, 190, 106>, 5, <106, 190, 139>, 5,
<139, 30, 106>, 5, <46, 139, 190>, 5, <46, 190, 138>, 5, <190, 141, 47>, 5, <47,
138, 190>, 5, <143, 191, 108>, 5, <108, 32, 143>, 5,
   <141, 31, 108>, 5, <141, 108, 191>, 5, <47, 141, 191>, 5, <191, 140, 47>, 5,
<140, 191, 48>, 5, <191, 143, 48>, 5, <145, 192, 110>, 5, <110, 33, 145>, 5,
<32, 110, 143>, 5, <110, 192, 143>, 5, <48, 143, 192>, 5,
   <192, 142, 48>, 5, <142, 192, 49>, 5, <192, 145, 49>, 5, <112, 30, 139>, 5,
<112, 139, 193>, 5, <112, 193, 145>, 5, <145, 33, 112>, 5, <49, 145, 193>, 5,
<49, 193, 144>, 5, <193, 139, 46>, 5, <46, 144, 193>, 5}
  normal_indices { 384, <27, 96, 102>, <102, 94, 27>, <26, 94, 102>, <102, 100,
26>, <29, 100, 102>, <29, 102, 98>, <28, 98, 102>, <28, 102, 96>, <336, 103,
279>, <280, 155, 337>,
   <205, 281, 103>, <206, 103, 32>, <0, 32, 31>, <32, 103, 31>, <338, 187, 31>,
<339, 31, 103>, <159, 356, 104>, <160, 104, 291>, <217, 292, 33>, <293, 104,
33>, <32, 0, 33>,
   <32, 33, 104>, <32, 104, 357>, <358, 207, 32>, <164, 369, 343>, <370, 105,
344>, <345, 105, 30>, <346, 30, 193>, <30, 105, 33>, <30, 33, 0>, <218, 33,
105>, <219, 105, 371>,
   <34, 106, 303>, <304, 229, 34>, <305, 106, 372>, <306, 373, 165>, <374, 106,
220>, <106, 35, 221>, <35, 106, 34>, <34, 1, 35>, <35, 107, 294>, <35, 295,
222>, <296, 107, 161>,
   <107, 297, 162>, <298, 107, 36>, <36, 223, 299>, <36, 107, 35>, <35, 1, 36>,
<375, 108, 329>, <330, 178, 376>, <37, 253, 331>, <37, 332, 108>, <1, 37, 36>,
<37, 108, 36>,
   <224, 36, 108>, <108, 377, 225>, <23, 88, 109>, <23, 109, 86>, <22, 86, 109>,
<109, 92, 22>, <25, 92, 109>, <109, 90, 25>, <24, 90, 109>, <24, 109, 88>, <150,
273, 266>,
   <274, 110, 267>, <194, 268, 110>, <110, 39, 195>, <39, 110, 38>, <38, 2, 39>,
<110, 275, 199>, <200, 38, 110>, <166, 347, 111>, <111, 307, 167>, <308, 111,
40>, <40, 230, 309>,
   <2, 40, 111>, <2, 111, 39>, <196, 39, 348>, <39, 111, 349>, <231, 40, 112>,
<112, 381, 232>, <382, 112, 394>, <395, 182, 383>, <112, 41, 241>, <242, 396,
112>, <2, 41, 40>,
   <41, 112, 40>, <41, 113, 316>, <317, 243, 41>, <113, 350, 168>, <169, 318,
113>, <351, 113, 38>, <352, 38, 201>, <38, 113, 2>, <113, 41, 2>, <114, 300,
226>, <227, 42, 114>,
   <301, 114, 359>, <302, 360, 163>, <361, 114, 208>, <114, 43, 209>, <43, 114,
42>, <42, 3, 43>, <43, 115, 282>, <43, 283, 210>, <284, 115, 156>, <115, 285,
157>, <286, 115, 44>,
   <44, 211, 287>, <44, 115, 43>, <43, 3, 44>, <19, 80, 116>, <116, 78, 19>,
<18, 78, 116>, <18, 116, 84>, <21, 84, 116>, <21, 116, 82>, <20, 82, 116>,
<116, 80, 20>,
   <179, 400, 117>, <180, 117, 378>, <379, 117, 42>, <380, 42, 228>, <42, 117,
45>, <42, 45, 3>, <45, 117, 401>, <402, 247, 45>, <46, 118, 322>, <323, 248,
46>, <118, 388, 172>,
   <173, 324, 118>, <389, 118, 47>, <390, 47, 235>, <4, 47, 118>, <118, 46, 4>,
<119, 310, 236>, <237, 47, 119>, <311, 119, 319>, <312, 320, 170>, <244, 321,
119>, <119, 48, 245>,
   <48, 119, 47>, <47, 4, 48>, <246, 48, 397>, <48, 120, 398>, <399, 120, 183>,
<120, 406, 184>, <407, 120, 49>, <49, 254, 408>, <4, 49, 120>, <4, 120, 48>,
<49, 121, 255>,
   <121, 333, 256>, <334, 121, 403>, <404, 181, 335>, <121, 46, 249>, <250, 405,
121>, <46, 121, 49>, <46, 49, 4>, <122, 288, 212>, <213, 50, 122>, <289, 122,
340>, <290, 341, 158>,
   <342, 122, 188>, <122, 51, 189>, <51, 122, 50>, <50, 5, 51>, <51, 123, 259>,
<51, 260, 190>, <261, 123, 151>, <123, 276, 152>, <277, 123, 52>, <52, 202,
278>, <5, 52, 123>,
   <5, 123, 51>, <353, 124, 313>, <314, 171, 354>, <238, 315, 124>, <239, 124,
53>, <5, 53, 52>, <53, 124, 52>, <203, 52, 124>, <124, 355, 204>, <174, 391,
125>, <175, 125, 362>,
   <363, 125, 50>, <364, 50, 214>, <50, 125, 5>, <125, 53, 5>, <53, 125, 392>,
<393, 240, 53>, <57, 126, 325>, <326, 176, 57>, <55, 251, 327>, <55, 328, 126>,
<6, 55, 126>,
   <6, 126, 54>, <7, 54, 126>, <7, 126, 57>, <365, 215, 59>, <366, 59, 127>,
<367, 127, 57>, <57, 177, 368>, <7, 57, 127>, <7, 127, 56>, <8, 56, 127>, <8,
127, 59>,
   <61, 128, 44>, <61, 44, 3>, <44, 128, 59>, <44, 59, 216>, <8, 59, 128>, <128,
58, 8>, <58, 128, 9>, <128, 61, 9>, <55, 129, 45>, <45, 252, 55>, <3, 45, 61>,
   <45, 129, 61>, <9, 61, 129>, <129, 60, 9>, <60, 129, 6>, <129, 55, 6>, <262,
153, 65>, <263, 65, 130>, <264, 130, 63>, <63, 191, 265>, <10, 63, 130>, <10,
130, 62>,
   <11, 62, 130>, <11, 130, 65>, <67, 131, 269>, <67, 270, 197>, <271, 131, 65>,
<272, 65, 154>, <11, 65, 131>, <131, 64, 11>, <64, 131, 12>, <131, 67, 12>, <69,
132, 30>,
   <69, 30, 0>, <30, 132, 67>, <30, 67, 198>, <12, 67, 132>, <132, 66, 12>, <66,
132, 13>, <132, 69, 13>, <31, 192, 63>, <31, 63, 133>, <69, 0, 31>, <69, 31,
133>,
   <13, 69, 133>, <13, 133, 68>, <10, 68, 133>, <10, 133, 63>, <73, 134, 384>,
<385, 185, 73>, <386, 134, 71>, <387, 71, 233>, <14, 71, 134>, <134, 70, 14>,
<70, 134, 15>,
   <134, 73, 15>, <75, 135, 409>, <410, 257, 75>, <73, 186, 411>, <73, 412,
135>, <15, 73, 135>, <135, 72, 15>, <72, 135, 16>, <135, 75, 16>, <77, 136,
37>, <77, 37, 1>,
   <37, 136, 75>, <75, 258, 37>, <16, 75, 136>, <16, 136, 74>, <17, 74, 136>,
<17, 136, 77>, <34, 234, 71>, <34, 71, 137>, <77, 1, 34>, <77, 34, 137>, <17,
77, 137>,
   <17, 137, 76>, <14, 76, 137>, <14, 137, 71>, <54, 7, 81>, <54, 81, 138>, <54,
138, 79>, <79, 6, 54>, <18, 79, 138>, <18, 138, 78>, <138, 81, 19>, <19, 78,
138>,
   <56, 8, 83>, <56, 83, 139>, <56, 139, 81>, <81, 7, 56>, <19, 81, 139>, <19,
139, 80>, <139, 83, 20>, <20, 80, 139>, <85, 140, 58>, <58, 9, 85>, <8, 58,
83>,
   <58, 140, 83>, <20, 83, 140>, <140, 82, 20>, <82, 140, 21>, <140, 85, 21>,
<79, 141, 60>, <60, 6, 79>, <9, 60, 85>, <60, 141, 85>, <21, 85, 141>, <141,
84, 21>,
   <84, 141, 18>, <141, 79, 18>, <89, 142, 70>, <70, 15, 89>, <14, 70, 87>, <70,
142, 87>, <22, 87, 142>, <142, 86, 22>, <86, 142, 23>, <142, 89, 23>, <91, 143,
72>,
   <72, 16, 91>, <15, 72, 89>, <72, 143, 89>, <23, 89, 143>, <143, 88, 23>, <88,
143, 24>, <143, 91, 24>, <74, 17, 93>, <74, 93, 144>, <74, 144, 91>, <91, 16,
74>,
   <24, 91, 144>, <24, 144, 90>, <144, 93, 25>, <25, 90, 144>, <76, 14, 87>,
<76, 87, 145>, <76, 145, 93>, <93, 17, 76>, <25, 93, 145>, <25, 145, 92>, <145,
87, 22>,
   <22, 92, 145>, <11, 97, 62>, <97, 146, 62>, <62, 146, 95>, <95, 10, 62>, <26,
95, 146>, <26, 146, 94>, <146, 97, 27>, <27, 94, 146>, <99, 147, 64>, <64, 12,
99>,
   <97, 11, 64>, <97, 64, 147>, <27, 97, 147>, <147, 96, 27>, <96, 147, 28>,
<147, 99, 28>, <101, 148, 66>, <66, 13, 101>, <12, 66, 99>, <66, 148, 99>, <28,
99, 148>,
   <148, 98, 28>, <98, 148, 29>, <148, 101, 29>, <68, 10, 95>, <68, 95, 149>,
<68, 149, 101>, <101, 13, 68>, <29, 101, 149>, <29, 149, 100>, <149, 95, 26>,
<26, 100, 149>}
  uv_indices { 384, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0,
0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <8, 5, 4>,
<8, 4, 7>, <6, 7, 3>, <7, 4, 3>, <1, 0, 3>,
   <1, 3, 4>, <1, 4, 5>, <5, 2, 1>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <3, 4, 1>, <3, 1, 0>, <1, 4, 2>,
   <4, 5, 2>, <5, 4, 7>, <7, 8, 5>, <7, 4, 3>, <3, 6, 7>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <4, 7, 8>, <8, 5, 4>,
   <7, 4, 3>, <7, 3, 6>, <3, 4, 0>, <4, 1, 0>, <1, 4, 5>, <5, 2, 1>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
   <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>,
<0, 0, 0>, <0, 0, 0>, <0, 0, 0>, <0, 0, 0>}
}
#declare Cube= object{ wo_0_cube1 interior { ior 1.000000 } no_shadow }
object{Cube}
object{Cube rotate  x*90 translate -4*x }
object{Cube rotate  y*90 translate  4*y }
object{Cube rotate  z*90 translate  4*z }
object{Cube rotate -x*90 translate  4*x }
object{Cube rotate -y*90 translate -4*y }
object{Cube rotate -z*90 translate -4*z }

// ----- end of scene code


Post a reply to this message

From: Tim Attwood
Subject: Re: Bump Map Madness
Date: 30 Nov 2008 15:36:43
Message: <4932f95b$1@news.povray.org>
"clipka" <nomail@nomail> wrote in message 
news:web.493114d0114da4434dea3830@news.povray.org...
> Anyone ever noticed that bump maps are somewhat queer - and definitely 
> wrong -
> in PoV-ray?
>
> Check out the following scene; it will need a file named bump_map.png - 
> anything
> that gives a nice clear dent will do, although I suggest a simple big 
> black
> blurred splotch on a white background, maybe with some small indicators 
> added
> to show orientation.
>
> Output will be a cube (well, seven differently oriented copies to be 
> exact) with
> three dents on each side (well, on three of the sides that is):
>
> - a real modeled dent for reference (uncolored)
> - a bump-mapped dent using simple projection mapping (red/green/blue)
> - a bump-mapped dent using UV mapping (gray)
>
> Light is from the camera location (with three colored helper lights offset 
> a
> bit).
>
> Notice how some of the dents do not only bulge outwards instead of 
> inwards -
> some even go "SIDEWAYS" somehow. You gotta see this to know what I mean.
>
> Also notice how this changes for even the very same dent, depending on the
> orientation of the whole object.
>
> This is what I'd call weird (and actually broken). Am I the first to see 
> this??

Some of the normals on your mesh triangles are inverted,
you are looking at the back side of them.


Post a reply to this message

From: Kenneth
Subject: Re: Bump Map Madness
Date: 30 Nov 2008 18:35:01
Message: <web.4933223af7160dff78dcad930@news.povray.org>
"clipka" <nomail@nomail> wrote:

> Notice how some of the dents do not only bulge outwards instead of inwards -
> some even go "SIDEWAYS" somehow. You gotta see this to know what I mean.
>
> Also notice how this changes for even the very same dent, depending on the
> orientation of the whole object.

Yes, I'm seeing all of those effects too, though only on the dark-gray cubes
(the ones using uv_vector bump_map). The rest look OK to my eyes. Sorry I can't
offer a suggestion; I'm certainly not a uv_mapping expert.

I fiddled around with the lights and camera, but the effects don't go away.

It *kind of* looks like the odd directional effect is 'locked into' the gray
cube, varying with the orientation of it.  Hard to describe. As if the normal
is ignoring the light_source direction, OR picking up the light from *some*
angle and just sticking it on the cube and reusing it. Only a guess, though.

Ken W.


Post a reply to this message

From: Kenneth
Subject: Re: Bump Map Madness
Date: 30 Nov 2008 18:45:00
Message: <web.49332545f7160dff78dcad930@news.povray.org>
"Kenneth" <kdw### [at] earthlinknet> wrote:

> Yes, I'm seeing all of those effects too, though only on the dark-gray cubes

Oops, now I'm seeing it on some of the blue cubes as well.  Not (yet!) on the
green or red ones. Will keep looking and fiddling around...

Ken W.


Post a reply to this message

From: Kenneth
Subject: Re: Bump Map Madness
Date: 30 Nov 2008 19:00:01
Message: <web.4933281df7160dff78dcad930@news.povray.org>
"Kenneth" <kdw### [at] earthlinknet> wrote:

> It *kind of* looks like the odd directional effect is 'locked into' the gray
> cube, varying with the orientation of it.  Hard to describe. As if the normal
> is ignoring the light_source direction, OR picking up the light from *some*
> angle and just sticking it on the cube and reusing it. Only a guess, though.

.....yet my own bump_map image--which contains a big fat arrow for directional
purposes--remains correctly aligned to the cubes, as it should, no matter where
the lights and camera are. Strange indeed!

KW


Post a reply to this message

From: clipka
Subject: Re: Bump Map Madness
Date: 1 Dec 2008 08:45:00
Message: <web.4933e9fcf7160dfff55cbdff0@news.povray.org>
"Tim Attwood" <tim### [at] comcastnet> wrote:
>
> Some of the normals on your mesh triangles are inverted,
> you are looking at the back side of them.

Doesn't shed a good light on the mesh editor I'm using for export to PoV-ray...
yet mesh2 objects are just collections of triangles anyway, so should that
matter?

At worst I'd expect that to cause bumps to go inside-out - but not "sideways".


Post a reply to this message

From: clipka
Subject: Re: Bump Map Madness
Date: 1 Dec 2008 09:05:00
Message: <web.4933ee29f7160dfff55cbdff0@news.povray.org>
"Kenneth" <kdw### [at] earthlinknet> wrote:
> It *kind of* looks like the odd directional effect is 'locked into' the gray
> cube, varying with the orientation of it.  Hard to describe. As if the normal
> is ignoring the light_source direction, OR picking up the light from *some*
> angle and just sticking it on the cube and reusing it. Only a guess, though.

I think the algorithm to do image-based normal pertubation is just plain wrong,
and somehow twists the normal in the wrong way.

Pertubing a normal according to a bump map picture is not an easy thing anyway:
I guess the mapped image is considered something in 3D space (which just
happens to be identical along a certain axis), so first you have to get a slope
out of the bump map; but that slope already needs to take into account the
orientation of the plane that should be "bumped" if I'm not totally mistaken.
Maybe the developer of the algorithm forgot about that.

And nobody ever noticed, because such strange effects in bump mapping are
visually hard to identify: The bump map usually doesn't look plain wrong,
because our brain blames it on a different lighting direction. Which gives us
some impression that "something is weird", but it's hard to pinpoint unless you
design a picture specifically for that purpose. And a 3d artist may often think
he just applied the bump map "wrong way round", so he just inverts the bump
map, which I guess will make the effect less prominent in many cases.

I guess this is one for the developers to fix.


Post a reply to this message

From: Kenneth
Subject: Re: Bump Map Madness
Date: 2 Dec 2008 00:45:00
Message: <web.4934c5d6f7160dff78dcad930@news.povray.org>
"clipka" <nomail@nomail> wrote:

> I guess the mapped image is considered something in 3D space (which just
> happens to be identical along a certain axis), so first you have to get a slope
> out of the bump map; but that slope already needs to take into account the
> orientation of the plane that should be "bumped" if I'm not totally mistaken.
> Maybe the developer of the algorithm forgot about that.

I seem to remember, in the dim past, posting a problem that also concerned (or
*possibly* concerned) the default slope_map that is built into some/all pigment
patterns. Wish I could remember when, and what it was all about; I'll post a
link if I can find it.
>
> And nobody ever noticed, because such strange effects in bump mapping are
> visually hard to identify...

Absolutely!!

> The bump map usually doesn't look plain wrong,
> because our brain blames it on a different lighting direction. Which gives us
> some impression that "something is weird", but it's hard to pinpoint unless
> you design a picture specifically for that purpose.

Yes, it sometimes QUITE difficult to construct just the 'right' scene. I had to
do similar detective work in trying to nail down a radiosity-from-media
problem. (Hmm, I need to post that experiment...sometime soon...)

Unless my eyes are playing tricks on me (which is possible, of course!), I still
cannot get your red and green areas to look *wrong*, no matter what I try. Blue
and gray, yes; red and green, no.  Although I can't imagine how, I wonder if
there's a clue hidden somewhere in this? (BTW, I tried eliminating the scale
block from your blue texture; but that didn't help it.)

I even set up an animation (using monkeyjam,
a great little Windows app for doing quick tests.) Using a single 'orbiting'
point_light, and your seven cubes rotated into all sorts of
orientations, I never saw anything amiss with red and green. What's your
opinion?

Ken W.


Post a reply to this message

From: Bill Pragnell
Subject: Re: Bump Map Madness
Date: 2 Dec 2008 04:35:01
Message: <web.49350052f7160dffd5b77e4a0@news.povray.org>
I've had a good long look but I don't see any bumpmap problems. The blue bump
does indeed appear to be the reverse of the others, but this looks like a
normals issue to me, as Tim mentioned. I see no 'sideways' distortion at all,
and all the coloured bumps appear to be consistent between the various copies.

Apart from the direction-reversing, this looks perfectly fine.

There is, however, a problem with your vertices - assuming you were trying for 8
squares per quarter-face, these vertices aren't correct. Some of the vertices in
the coloured squares are off-line, producing a chevron-like indent on many of
the quarter-faces. I see this clearly in the image too.


Post a reply to this message

From: clipka
Subject: Re: Bump Map Madness
Date: 2 Dec 2008 06:40:00
Message: <web.49351e3ff7160dffbdc576310@news.povray.org>
"Kenneth" <kdw### [at] earthlinknet> wrote:
> Unless my eyes are playing tricks on me (which is possible, of course!), I still
> cannot get your red and green areas to look *wrong*, no matter what I try. Blue
> and gray, yes; red and green, no.  Although I can't imagine how, I wonder if
> there's a clue hidden somewhere in this? (BTW, I tried eliminating the scale
> block from your blue texture; but that didn't help it.)

That's really weird! Which version of POV are you using? Because I actually did
have ONE face which seemed right for every orientation as well, but TWO showed
problems with either the UV-mapped or "flat-mapped" version of the bump map, or
even both, in some orientation or the other.

I'll post a shot from my scene in the binary newsgroup soon (can't do it right
now because my monitor has just been fried, so I can't access my private
computer), along with the original bump map I used.

> What's your opinion?

Mysterious thing. That's my opinion :)


Post a reply to this message

Goto Latest 10 Messages Next 7 Messages >>>

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.