diff options
Diffstat (limited to 'render_povray/templates_pov/diffuse_back.pov')
-rw-r--r-- | render_povray/templates_pov/diffuse_back.pov | 251 |
1 files changed, 251 insertions, 0 deletions
diff --git a/render_povray/templates_pov/diffuse_back.pov b/render_povray/templates_pov/diffuse_back.pov new file mode 100644 index 00000000..4aa70aef --- /dev/null +++ b/render_povray/templates_pov/diffuse_back.pov @@ -0,0 +1,251 @@ +// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License. +// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a +// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. + +// Persistence of Vision Raytracer Scene Description File +// File: diffuse_back.pov +// Author: Christoph Lipka +// Description: Demonstrates diffuse backside illumination +// +// -w640 -h480 +// -w800 -h600 +a0.3 +// +// Warning: this will take time! + +#version 3.7; + +#declare Photons=on; +#declare Radiosity=on; + +global_settings { + max_trace_level 25 + assumed_gamma 2.2 + #if (Photons) + photons { + count 100000 + } + #end + #if (Radiosity) + radiosity { + pretrace_start 0.04 + pretrace_end 0.005 + count 1000 + nearest_count 10 + error_bound 0.5 + recursion_limit 2 + low_error_factor .25 + gray_threshold 0.0 + minimum_reuse 0.002 + brightness 1 + adc_bailout 0.01/2 + always_sample off + } + #end +} + +#if (Radiosity) + default { + finish { ambient 0 } + } +#else + default { + finish { ambient 0.2 } + } +#end + +// ---------------------------------------- + +#declare OverallBrightness = 8; +#declare OverallScale = 100; + +camera { + right x*image_width/image_height // keep propotions with any aspect ratio + location < 1,1.6,-2.5>*OverallScale + look_at <-2.0,1.2,0>*OverallScale +} + +light_source { + vnormalize(<-500,200,-250>)*1000*OverallScale + color rgb 1.3 * OverallBrightness + area_light x*10*OverallScale,y*10*OverallScale, 9,9 adaptive 1 jitter circular orient + photons { + refraction on + reflection on + } +} + +sky_sphere { + pigment { + gradient y + color_map { + [0.0 rgb <0.6,0.7,1.0>*OverallBrightness*0.5] + [0.7 rgb <0.0,0.1,0.8>*OverallBrightness*0.5] + } + } +} + + +// ---------------------------------------- + +plane { y, -10 + texture { + pigment { color rgb <1.0, 0.8, 0.6> } + finish { diffuse 0.5 } + } +} + +#declare M_SolidWhite= material { + texture { + pigment { rgb 1 } + finish { ambient 0 diffuse 0.8 specular 0.2 reflection { 0.2 } } + } +} + +// Room + +difference { + box { <-3.1,-1,-4>, <3.1,3.5,4> } // solid block + box { <-3,-0.2,-3>, <3,2.5,3> } // main room cutout + box { <-3.2,0.3,-2>, <2.9,2,2> } // window cutout + texture { + pigment { color rgb <0.9, 0.9, 0.9> } + finish { diffuse 1.0 } + } + scale OverallScale +} + +// Window Bars + +union { + cylinder { <-3.05,0, 1>, <-3.05,2, 1>, 0.05 } + cylinder { <-3.05,0,-1>, <-3.05,2,-1>, 0.05 } + material { M_SolidWhite } + scale OverallScale +} + +// Baseboards + +#declare Baseboard = union { + cylinder { <-3,0.1,0>, <3,0.1,0>, 0.025 } + box { <-3,0,0>, <3,0.1,-0.025> } + material { M_SolidWhite } + translate z*3 +} + +union { + object { Baseboard } + object { Baseboard rotate y*90 } + object { Baseboard rotate y*180 } + object { Baseboard rotate y*270 } + scale OverallScale +} + + +box { <-3,0,-3>, <3,-0.1,3> + pigment { color rgb <1.0, 0.8, 0.6> } + scale OverallScale +} + + +// Curtains + +#declare M_Curtains= material { + texture { + pigment { rgb <1.0,0.8,0.6> } + finish { + ambient 0 + diffuse 0.7,0.2 + } + } +} + +#declare Curtain= union { + polygon{ 5, <0,0.1,2.0>, <0,0.1,0.1>, <0,2.45,0.1>, <0,2.45,2.0>, <0,0.1,2.0> material { M_Curtains } } + cylinder { <0,0.1,2.025>, <0,0.1,0.075>, 0.025 material { M_SolidWhite } } + cylinder { <0,2.45,2.025>, <0,2.45,0.075>, 0.025 material { M_SolidWhite } } + translate <-2.8,0,0> + material { M_Curtains } +} + +union { + object { Curtain } + object { Curtain scale <1,1,-1> } + scale OverallScale +} + +// Screen + +#declare M_Screen= material { + texture { + pigment { rgbt <1,1,1, 0.01> } + finish { + ambient 0 + diffuse 0.55,0.45 + specular 0.2 + reflection { 0.2 } + } + } +} + +#declare Screen = cylinder { <0,0,0>, <0,1.0,0>, 0.5 + open + clipped_by { plane { x, 0.1 } } + material { M_Screen } +} + +union { + object { Screen rotate y*45 translate <-2.25,0,2> } + object { Screen rotate y*0 translate <-2.25,0,-1.0> } + scale OverallScale +} + +// Glass Objects + +#declare M_Glass= material { + texture { + pigment {rgbt 1} + finish { + ambient 0.0 + diffuse 0.05 + specular 0.6 + roughness 0.005 + reflection { + 0.1, 1.0 + fresnel on + } + conserve_energy + } + } + interior { + ior 1.5 + fade_power 1001 + fade_distance 0.9 * 10 + fade_color <0.5,0.8,0.6> + } +} + +sphere { + <0,1,0>, 1 + scale 0.2 + translate <-1.8,0,0.5> + material { M_Glass } + photons { // photon block for an object + target 1.0 + refraction on + reflection on + } + scale OverallScale +} + +cylinder { + <0,0.01,0>, <0,2.5,0>, 1 + scale 0.2 + translate <-3.05,0.3,0.4> + material { M_Glass } + photons { // photon block for an object + target 1.0 + refraction on + reflection on + } + scale OverallScale +} |