#version 3.7; global_settings { assumed_gamma 1.3 max_trace_level 16 radiosity { pretrace_start 0.08 pretrace_end 0.01 count 200 nearest_count 10 error_bound 0.5 recursion_limit 2 low_error_factor 0.5 gray_threshold 0.0 } } background { color rgb <0.92, 0.50, 0.32> } camera { location <0, 2.6, -7.2> look_at <0, 1.55, 0> angle 40 up <0,9,0> right <16,0,0> // right,up -> 16:9 } #declare MAT_Clay = finish { diffuse 0.85 specular 0.15 roughness 0.08 } #declare MAT_Dull = finish { diffuse 0.9 specular 0.08 roughness 0.12 } #declare C_Clay = color rgb <0.26, 0.20, 0.18>; #declare C_Scar = color rgb <0.12, 0.08, 0.07>; #declare C_Glow = color rgb <1.00, 0.70, 0.35>; light_source { <6, 7, -6> color rgb <1.00, 0.85, 0.70>*1.15 area_light <1.6,0,0>, <0,0,1.6>, 6, 6 adaptive 1 jitter } light_source { <-5, 4.5, -4> color rgb <1.00, 0.78, 0.62>*0.55 area_light <1.0,0,0>, <0,0,1.0>, 5, 5 adaptive 1 jitter } light_source { <0, 6.5, 5> color rgb <1.00, 0.72, 0.60>*0.35 area_light <1.2,0,0>, <0,0,1.2>, 5, 5 adaptive 1 jitter } plane { y, 0 pigment { color rgb <0.35, 0.22, 0.18> } finish { diffuse 0.9 specular 0.05 roughness 0.15 } } // ---------- GOLEM ---------- #declare Torso = union { // blobby main mass sphere { <0,1.72,0>, 1.25 } sphere { <0,1.05,0>, 1.10 } sphere { <0,2.35,0>, 0.95 } // shoulder bulges sphere { <-1.10,1.85,0.05>, 0.78 } sphere { < 1.10,1.85,0.05>, 0.78 } } #declare Legs = union { cylinder { <-0.55,0.00,0>, <-0.55,1.05,0>, 0.52 } cylinder { < 0.55,0.00,0>, < 0.55,1.05,0>, 0.52 } sphere { <-0.55,0.20,0>, 0.55 } sphere { < 0.55,0.20,0>, 0.55 } sphere { <-0.55,1.00,0>, 0.52 } sphere { < 0.55,1.00,0>, 0.52 } // inner seam hint cylinder { <0,0.05,0>, <0,0.95,0>, 0.06 } } #declare ArmL = union { sphere { <-1.55,1.70,0.20>, 0.42 } cylinder { <-1.30,1.55,0.20>, <-0.75,1.28,0.55>, 0.36 } sphere { <-0.75,1.28,0.55>, 0.40 } // wrist // hand block box { <-1.05,1.12,0.35>, <-0.35,1.38,0.92> } // finger grooves difference { box { <-1.02,1.14,0.37>, <-0.38,1.36,0.90> } box { <-0.98,1.16,0.48>, <-0.42,1.34,0.56> } box { <-0.98,1.16,0.64>, <-0.42,1.34,0.72> } box { <-0.98,1.16,0.80>, <-0.42,1.34,0.88> } pigment { color rgbt 1 } } } #declare ArmR = union { sphere { <1.55,1.70,0.20>, 0.42 } cylinder { <1.30,1.55,0.20>, <0.75,1.28,0.55>, 0.36 } sphere { <0.75,1.28,0.55>, 0.40 } // wrist box { <0.35,1.12,0.35>, <1.05,1.38,0.92> } difference { box { <0.38,1.14,0.37>, <1.02,1.36,0.90> } box { <0.42,1.16,0.48>, <0.98,1.34,0.56> } box { <0.42,1.16,0.64>, <0.98,1.34,0.72> } box { <0.42,1.16,0.80>, <0.98,1.34,0.88> } pigment { color rgbt 1 } } } #declare ChestPlate = difference { // plate box { <-1.05,1.05,0.52>, <1.05,1.55,0.92> } // triangular "crack" opening prism { linear_sweep linear_spline 0.50, 0.96, 4, <-0.18, 1.20>, <0.12, 1.20>, <0.00, 1.50>, <-0.18, 1.20> rotate <0,0,0> translate <0,0,0> } // widen the opening with an intersecting wedge box { <-0.25,1.12,0.60>, <0.25,1.55,0.92> rotate <0,0,25> } // small dents cylinder { <-0.70,1.25,0.40>, <-0.70,1.25,1.10>, 0.09 } cylinder { < 0.70,1.25,0.40>, < 0.70,1.25,1.10>, 0.09 } // hollow behind opening so glow reads box { <-0.35,1.08,0.70>, <0.35,1.52,1.35> } pigment { color C_Clay } finish { MAT_Clay } } #declare ScarFront = union { // angled gash across chest box { <-0.20,1.65,-0.40>, <0.20,2.25,0.55> rotate <0,0,18> translate <0.10,0,0.45> } box { <-0.08,1.62,-0.50>, <0.08,2.28,0.70> rotate <0,0,18> translate <0.10,0,0.45> } } #declare ScarBack = union { // back scars: two vertical gashes box { <-0.55,1.35,-0.90>, <-0.35,2.20,0.20> rotate <0,0,-8> translate <0,0,-0.35> } box { < 0.35,1.35,-0.90>, < 0.55,2.20,0.20> rotate <0,0, 8> translate <0,0,-0.35> } box { <-0.10,1.55,-0.90>, < 0.10,2.05,0.10> translate <0,0,-0.40> } } #declare EyeSockets = union { // shallow dimples sphere { <-0.22,2.55,0.80>, 0.13 } sphere { < 0.22,2.55,0.80>, 0.13 } } #declare GolemBody = difference { union { object { Torso } object { Legs } object { ArmL } object { ArmR } // simple neck/head smoothing sphere { <0,2.62,0.35>, 0.78 } } // carve eye sockets slightly object { EyeSockets scale <1,1,1> translate <0,0,0> } // front and back scars object { ScarFront } object { ScarBack } pigment { color C_Clay } finish { MAT_Clay } } // Eyes + core glow are separate additive-looking elements (no textures, simple finishes) #declare EyesGlow = union { sphere { <-0.22,2.55,0.82>, 0.07 pigment { color C_Glow } finish { emission 2 diffuse 0 } } sphere { <0.22,2.55,0.82>, 0.07 pigment { color C_Glow } finish { emission 2 diffuse 0 } } } #declare CoreGlow = union { // glowing core inside chest opening sphere { <0.00,1.30,1.00>, 0.33 pigment { color rgb <1.00,0.55,0.20> } finish { emission 2.6 diffuse 0 } } // small internal light source for extra "inside light" light_source { <0.0,1.32,1.00> color rgb <1.00,0.55,0.25>*0.65 fade_distance 2.0 fade_power 2 } } #declare PlateMaterial = texture { pigment { color rgb <0.22,0.16,0.14> } finish { diffuse 0.85 specular 0.12 roughness 0.10 } } #declare ScarDark = texture { pigment { color C_Scar } finish { MAT_Dull } } // Put it together: body + dark scar insets + chest plate + glows union { object { GolemBody } // add darker "scar fill" slabs so the cuts read as deep object { union { object { ScarFront } object { ScarBack } } texture { ScarDark } } object { ChestPlate texture { PlateMaterial } } object { EyesGlow } object { CoreGlow } translate <0,0,0> }