|
 |
On 6/9/26 7:38 PM, Leroy wrote:
> I accidently render it at 600 by 100 and it looked better!
> It's real funky how did you come with IT?
BE, spoiler warning if you still want to reverse-engineer it...! :-)
I took the literal signature I already use in my pre-existing brand
imagery (visible at https://petermarkley.com and on various social
profiles), and decided to recreate it as a mosaic using tiles of
POV-Ray's granite texture.
I rendered a huge image of the granite texture and "vibe-coded" an
OpenCV Python script that matched pieces of it to pieces of the
reference image by visual similarity. This Python script gave me a list
of these texture-space coordinates, ordered by source tile.
From there it was a matter of encoding the coordinates in a way that
was both compact and easily readable in POV-Ray. That's why in the code
there's 8 lines of dense random ASCII strings. Then for each tile, the
POV-Ray scene finds and decodes its texture-space coordinates, and
translates the granite texture to that point.
The result reminds me of a Magna-Doodle when you look at them up close,
because of the grainy pigment splotches separated into cells.
https://en.wikipedia.org/wiki/Magna_Doodle
--
/* https://petermarkley.com | (Render at 1280x384) */
#version 3.7;global_settings{assumed_gamma 1}#macro
B(a,b,c,d)box{-y,x+z texture{pigment{granite pigment_map{
[.2 rgb 0][.3 rgb 1]}scale 4 translate<-c,0,-d>}finish{ambient
1}}translate<a,0,b>}#end#macro C(h)(asc(substr(h,1,1))-48)*16+
asc(substr(h,2,1))-48#end camera{orthographic location<10,9,3>
direction-y right x*20 up z*6}#local s=array[24]{
"0:445<5251750:444;44","7<750<796853733;367:","4=7?2=774150010>3?46",
"3:762>00186733724=7?","1>601>04100937700<16","7340564>57034>35021?",
"334=7:74564>444>470<","520?403:716611536;32","067<622?194>602>622?",
"7>4<3=672>154=7?4665","1?5=792>444>15207779","2<3679034=7?2>003372",
"28337266622465364854","312;70201<6:69511?5=","72663?713;5<764:4546",
"7;0=43036:4:1?753423","595<000>792>70147320","7?440;026?643=674223",
"7;221<3:7=5>595=146?","595=3=6701365?4?4?3<","404431765:274;054658",
"467626792<32267=597=","3:7658554;0560764=28","4?7<77136?232>15520="
};#for(b,0,5)#for(a,0,19)#local i=(5-b)*4+floor(a/5);B(a,b,C(substr
(s[i],mod(a,5)*4+1,2)),C(substr(s[i],mod(a,5)*4+3,2)))#end#end
Post a reply to this message
|
 |