#include "colors.inc" #declare Photons= ; #declare reflsw=0; #declare Intensity=9; #declare Area_Light=1; global_settings { assumed_gamma 1 max_trace_level 5 #if(Photons) photons {spacing 0.02} #end } #default {finish {ambient 0}} camera { angle 35 location <2.5,3,-9> up y right x*image_width/image_height look_at <0,0,0> } light_source { <-50,65,100>*.5, color White*Intensity #if (Area_Light) area_light x*15, y*15,13,13 adaptive 1 jitter orient #end fade_distance vlength(<-100,65,50>*.5) fade_power 2 #if (Photons) photons { refraction on reflection reflsw } #end } sky_sphere { pigment { gradient y color_map { [0.0 color Gray10] [1.0 color Gray30] }}} ////////////////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ #declare Interior = interior { fade_distance 2 fade_power 3 ior 1.45 //Quartz_Ior = 1.550 // 1.45 dispersion .1 //Quartz_Glass_Dispersion = 1.012 dispersion_samples 12 } // As POV-Ray does not use wavelengths for raytracing, a spectrum is simulated. // The dispersion_samples value controls the amount of color-steps and smoothness // in the spectrum. The default value is 7, the minimum is 2. Values up to 100 or // higher may be needed to get a very smooth result. #macro PhotonBlock() #if (Photons) photons { target collect off reflection reflsw refraction on } #end #end #declare boardfinish = finish { ambient .05 diffuse .2 phong .15/Intensity phong_size 550 reflection 0.025 } #declare p_yelwood = pigment { wood color_map { [.4 rgb <.9,.7,.4>] [.6 rgb <1,.8,.6>] } turbulence .5 scale <.5,.5,5> } #declare lightwood = texture { pigment { p_yelwood } finish { boardfinish } scale 0.3 } #declare p_darkwood_table = pigment { wood color_map { [.4 rgb <0.45, 0.30, 0.15>] [.6 rgb <0.60, 0.35, 0.20>] } turbulence .5 scale <.5,.5,5> } #declare p_darkwood = pigment { wood color_map { [.4 rgb <0.45, 0.30, 0.15>] [.6 rgb <0.60, 0.35, 0.20>] } turbulence .5 scale <.5,.5,5> } #declare darkwood = texture { pigment { p_darkwood } finish { boardfinish } scale 0.3 } #declare darkwoodr = texture { pigment { p_darkwood } finish { boardfinish } scale 0.3 rotate <0,90,0> } #declare darkwoodtable = texture { pigment { p_darkwood } finish { boardfinish } scale 0.3 rotate <0,60,0> } #declare table = plane { <0, 1, 0>, 0 texture { pigment { p_darkwood_table } finish { boardfinish } scale 0.3 rotate <0,60,0> } translate <0,-0.3,0> } #declare GlassTex = texture { pigment {color rgbf <1, 1, 1, 1>} finish { reflection 0.05 phong .2 phong_size 800 roughness 0.001 metallic on } } #declare GlassTexd = texture { pigment {color rgbf <1,0.8392,0,1>} finish { reflection 0.05 phong .2 phong_size 800 roughness 0.001 metallic on } } #declare cball = sphere { <0,0,0>,1 texture {GlassTex} interior {Interior} PhotonBlock() translate <0, .99,0> } ///// board #macro board_sq(p) object { box { <-1.0,-0.01,-1.0>, < 0.0,-.25,0.0> } translate p } #end #macro boardlight() #local i=0;#local j=0; #while (i<8) #local j=0; #while (j<8) #if (mod(i+j,2)) board_sq(<-3+j,0,-3+i>) #end #local j=j+1; #end #local i=i+1; #end #end #macro boarddark() #local i=0;#local j=0; #while (i<8) #local j=0; #while (j<8) #if (!mod(i+j,2)) board_sq(<-3+j,0,-3+i>) #end #local j=j+1; #end #local i=i+1; #end #end #if (10) union { boardlight() texture { lightwood } } union { boarddark() texture { darkwood } } #end #declare frame = union { difference { box { <-4.5, -0.02, -4.5>, < 4.5, -1, 4.5> } box { <-4.01, 1, -4.01>, < 4.01, -2, 4.01> } } box { <-4.8, -0.1, -4.8>, < 4.8, -2, 4.8> } } #declare frame1 = difference { object { frame } box { <-5, -3, -4>, < 5, 1, 5> } box { <-15, -3, 0>, < 15, 1, 10> rotate y*45 } box { <-15, -3, 0>, < 15, 1, 10> rotate y*-45 } texture { darkwoodr } } //#declare _frame_ = union { object { frame1 } object { frame1 rotate y*180 } object { frame1 rotate y*90 } object { frame1 rotate y*-90 } } plane {y, -50 pigment {color Gray60} } /////////////////////////////////////////board end\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ //#include "chess_set.pov" #include "chess_set2.pov" //#include "chess_bevset.pov" #declare Dark_Pawn = object { Pawn texture { GlassTexd } interior { Interior } PhotonBlock() scale .1 }; #declare Dark_Bishop= object { Bishop texture { GlassTexd } interior { Interior } PhotonBlock() scale .1 }; #declare Dark_Rook = object { Rook texture { GlassTexd } interior { Interior } PhotonBlock() scale .1 }; #declare Dark_Queen = object { Queen texture { GlassTexd } interior { Interior } PhotonBlock() scale .1 }; #declare Dark_King = object { King texture { GlassTexd } interior { Interior } PhotonBlock() scale .1 }; #declare Dark_Knight= object { Knight texture { GlassTexd } interior { Interior } PhotonBlock() scale .1 }; #declare Light_Pawn = object { Pawn texture { GlassTex } interior { Interior } PhotonBlock() scale .1 }; #declare Light_Bishop= object { Bishop texture { GlassTex } interior { Interior } PhotonBlock() scale .1 }; #declare Light_Rook = object { Rook texture { GlassTex } interior { Interior } PhotonBlock() scale .1 }; #declare Light_Queen = object { Queen texture { GlassTex } interior { Interior } PhotonBlock() scale .1 }; #declare Light_King = object { King texture { GlassTex } interior { Interior } PhotonBlock() scale .1 }; #declare Light_Knight= object { Knight texture { GlassTex } interior { Interior } PhotonBlock() scale .1 }; #macro place(O,Str,r) #local T = ; object { O rotate <0,r,0> translate T } #end /* 8 7 6 5 4 3 2 1 A B C D E F G H */ place(Light_Queen,"f3",0) place(Dark_Knight,"e3",-90) #if (0) #if (10) place(Light_Rook,"h1",0) place(Dark_Knight,"h2",-90) place(Light_Knight,"f3",0) place(Light_Bishop,"f1",0) //place(Light_Queen,"d1",0) //place(Light_King,"e1",0) #end //place(Dark_Pawn,"d5",0) //place(Dark_Pawn,"e6",0) //place(Dark_Pawn,"f7",<0,0,0>) place(Dark_Bishop,"f4",0) //place(Dark_Pawn,"g5",0) #if (10) object { Dark_Bishop translate <1, -0.3, -5.7> } object { Light_Knight rotate <0,110,0> translate <5.6, -0.3, -3.5> } object { Light_Pawn translate <3.0, -0.3, -5.5> } #end #end #macro loadpawns() #local i=0; #while (i<8) object { Light_Pawn translate } object { Dark_Pawn translate } #local i=i+1; #end #end //place(Light_Rook,"h1",0) //place(Light_Rook,"h1",0) #if (0) loadpawns() place(Light_Rook,"a1",0) place(Light_Knight,"b1",y*-110) place(Light_Bishop,"c1",0) place(Light_Queen,"d1",0) place(Light_King,"e1",0) place(Light_Bishop,"f1",0) place(Light_Knight,"g1",y*110) place(Light_Rook,"h1",0) #if (0) place(Dark_Rook,"a8",0) place(Dark_Knight,"b8",y*-110) place(Dark_Bishop,"c8",0) place(Dark_Queen,"d8",0) place(Dark_King,"e8",0) place(Dark_Bishop,"f8",0) place(Dark_Knight,"g8",y*110) place(Dark_Rook,"h8",0) #end #end