#version 3.7; global_settings { assumed_gamma 1.0 max_trace_level 6 } background { color rgb <0.97, 0.97, 1.0> } // ---------------- Camera ---------------- camera { location <0, 0.25, -4.2> look_at <0, 0.15, 0> angle 32 } // ---------------- Lights (warm, soft shadows) ---------------- light_source { <-3.5, 4.5, -4.0> color rgb <1.00, 0.92, 0.80>*1.05 area_light <1.2,0,0>, <0,0,1.2>, 5, 5 adaptive 1 jitter } light_source { <3.5, 2.5, -3.0> color rgb <1.00, 0.90, 0.80>*0.45 area_light <1.0,0,0>, <0,0,1.0>, 4, 4 adaptive 1 jitter } // ---------------- Ground ---------------- plane { y, -1.25 pigment { color rgb <0.92, 0.92, 0.94> } finish { diffuse 0.85 specular 0.06 roughness 0.08 } } // ---------------- Heart (implicit from equation) ---------------- // Equation from image: x^2 + ( (5y/4) - sqrt(|x|) )^2 = 1 // We build an implicit surface F(x,y,z)=0 and extrude along z by adding z^2/a^2 // F = x^2 + ( (5y/4) - sqrt(|x|) )^2 + (z^2)/(t^2) - 1 = 0 #declare HeartThickness = 0.35; isosurface { function { x*x + pow( (5*y/4) - sqrt(abs(x)), 2 ) + (z*z)/(HeartThickness*HeartThickness) - 1 } contained_by { box { <-1.35, -1.40, -0.70>, <1.35, 1.35, 0.70> } } max_gradient 6 accuracy 0.0015 pigment { color rgb <0.86, 0.14, 0.20> } finish { diffuse 0.75 specular 0.25 roughness 0.035 } // Slightly lift above ground and scale to read nicely scale <1.25, 1.25, 1.0> translate <0, -0.05, 0> rotate <0, 18, 0> }