// Cute black sheep (plush/toy style) - single file scene #version 3.7; global_settings { assumed_gamma 1.0 max_trace_level 6 } background { color rgb <1,1,1> } camera { location <0, 2.2, -8.0> look_at <0, 1.6, 0> angle 30 } light_source { <-6, 8, -6> color rgb <1.00, 0.85, 0.70>*1.15 area_light <2.5,0,0>, <0,0,2.5>, 5, 5 adaptive 1 jitter } light_source { <6, 6, -4> color rgb <1.00, 0.88, 0.75>*0.65 area_light <2.0,0,0>, <0,0,2.0>, 4, 4 adaptive 1 jitter } light_source { <0, 10, 6> color rgb <1.00, 0.92, 0.80>*0.35 } plane { y, 0 pigment { color rgb <0.98,0.98,0.985> } finish { diffuse 0.9 ambient 0 specular 0.08 roughness 0.08 } } // Simple materials (no textures) #declare MatBlack = texture { pigment { color rgb <0.06,0.06,0.07> } finish { diffuse 0.85 ambient 0 specular 0.12 roughness 0.06 } } #declare MatWhiteWool = texture { pigment { color rgb <0.96,0.96,0.94> } finish { diffuse 0.92 ambient 0 specular 0.06 roughness 0.10 } } #declare MatEyeWhite = texture { pigment { color rgb <0.98,0.98,0.98> } finish { diffuse 0.9 ambient 0 specular 0.25 roughness 0.03 } } #declare MatPupil = texture { pigment { color rgb <0.05,0.05,0.05> } finish { diffuse 0.8 ambient 0 specular 0.15 roughness 0.05 } } #declare Sheep = union { // --- Body (white fluffy belly) --- blob { threshold 0.65 sphere { <0, 1.15, 0.00>, 1.05, 1.0 } // main belly sphere { <0, 0.60, 0.05>, 0.85, 1.0 } // lower belly sphere { <0, 1.65,-0.05>, 0.75, 1.0 } // upper belly // little bumps for wool feel sphere { <0.55,1.10, 0.30>, 0.35, 0.6 } sphere { <-0.55,1.05, 0.25>, 0.35, 0.6 } sphere { <0.40,0.75, 0.25>, 0.30, 0.55 } sphere { <-0.35,0.80,0.30>, 0.30, 0.55 } sphere { <0.15,1.50,0.35>, 0.30, 0.55 } sphere { <-0.20,1.45,0.32>, 0.30, 0.55 } texture { MatWhiteWool } } // --- Head (black) --- blob { threshold 0.70 sphere { <0, 2.25, 0.05>, 0.82, 1.0 } // main head sphere { <0, 2.05, 0.30>, 0.60, 1.0 } // snout/face bulge texture { MatBlack } } // --- White wool cap on head --- blob { threshold 0.70 sphere { <0, 2.85, 0.00>, 0.62, 1.0 } sphere { <0.35,2.80,0.10>, 0.30, 0.65 } sphere { <-0.35,2.80,0.10>, 0.30, 0.65 } sphere { <0.00,2.70,0.25>, 0.28, 0.55 } texture { MatWhiteWool } } // --- Ears (black, droopy) --- union { blob { threshold 0.72 sphere { <0.95, 2.25, 0.05>, 0.22, 1.0 } sphere { <1.30, 2.05, 0.05>, 0.28, 1.0 } sphere { <1.15, 1.75, 0.05>, 0.26, 1.0 } texture { MatBlack } } blob { threshold 0.72 sphere { <-0.95, 2.25, 0.05>, 0.22, 1.0 } sphere { <-1.30, 2.05, 0.05>, 0.28, 1.0 } sphere { <-1.15, 1.75, 0.05>, 0.26, 1.0 } texture { MatBlack } } } // --- Eyes (big cartoon) --- union { // whites sphere { <-0.22, 2.40, 0.70>, 0.22 texture { MatEyeWhite } } sphere { < 0.22, 2.40, 0.70>, 0.22 texture { MatEyeWhite } } // pupils sphere { <-0.15, 2.38, 0.88>, 0.08 texture { MatPupil } } sphere { < 0.15, 2.38, 0.88>, 0.08 texture { MatPupil } } } // --- Arms (black, hanging) --- union { // left arm cylinder { <-0.95, 1.85, 0.10>, <-1.10, 0.95, 0.05>, 0.16 texture { MatBlack } } sphere { <-0.95, 1.85, 0.10>, 0.16 texture { MatBlack } } sphere { <-1.10, 0.95, 0.05>, 0.18 texture { MatBlack } } // hand // right arm cylinder { <0.95, 1.85, 0.10>, <1.10, 0.95, 0.05>, 0.16 texture { MatBlack } } sphere { <0.95, 1.85, 0.10>, 0.16 texture { MatBlack } } sphere { <1.10, 0.95, 0.05>, 0.18 texture { MatBlack } } // hand } // --- Legs (black, long) --- union { // left leg cylinder { <-0.35, 0.55, 0.05>, <-0.35, 0.12, 0.00>, 0.15 texture { MatBlack } } cylinder { <-0.35, 0.12, 0.00>, <-0.35, 0.00, 0.00>, 0.16 texture { MatBlack } } sphere { <-0.35, 0.55, 0.05>, 0.15 texture { MatBlack } } sphere { <-0.35, 0.00, 0.00>, 0.22 texture { MatBlack } } // foot // right leg cylinder { <0.35, 0.55, 0.05>, <0.35, 0.12, 0.00>, 0.15 texture { MatBlack } } cylinder { <0.35, 0.12, 0.00>, <0.35, 0.00, 0.00>, 0.16 texture { MatBlack } } sphere { <0.35, 0.55, 0.05>, 0.15 texture { MatBlack } } sphere { <0.35, 0.00, 0.00>, 0.22 texture { MatBlack } } // foot } // Slight overall scale and lift so feet rest on plane scale <1,1,1> translate <0, 0.00, 0> } object { Sheep }