surface lab7 param color circlecolor 0 0 0 param color bgcolor 0 0 0 param float radius 0.35 param float fuzz 0.025 param float column_count 10 param float row_count 10 local point center 0 0 0 local float disk 0 local float ss 0 local float tt 0 local float d 0 local color surface_color 0 0 0 initcode 0 pushiv 1 0 0 popc circlecolor initcode 1 pushiv 1 1 1 popc bgcolor initcode 5 return code return_area pushif 1 pushf column_count mulF s mod popf ss pushif 1 pushf row_count mulF t mod popf tt pushiv 0.5 0.5 0 popv center pushif 0 pushf tt pushf ss pushv center distance popf d pushf d pushf radius pushf fuzz subF radius smoothstep pushif 1 subff popf disk pushf disk pushc circlecolor mulcf pushf disk pushif 1 subff pushc bgcolor mulcf addcc popc surface_color cpCC surface_color Ci return