





 
 




 
 


Maybe I can get somebody inspired to implement it in POVRay.
I simulated a "blob texture". Created a 10x10x10 virtual grid and put a random
point in each cell. That's the centre of a "blob item", that is, I used the blob
equation from the docs to calculate grey values. The radius is randomized
between 0.5 and 2.5. The strength is kept at 1.0 and the threshold is not used.
The worley noise is based on the same principle and also calculates the minimum
distance between the points to find the nearest neighbour. The crackle pattern
uses this and probably more. So the basics for such a pattern may be there. The
minimum distance could be used as radius, or strength.
Post a reply to this message
Attachments:
Download 'blobtexture_8.png' (131 KB)
Preview of image 'blobtexture_8.png'


 
 




 
 


"ingo" <nomail@nomail> wrote:
> Maybe I can get somebody inspired to implement it in POVRay.
>
> I simulated a "blob texture".
30x30x5 grid. Random values for strength 1.0 to 1.0, then all brought into the
01 range for the image. No gamma.
Post a reply to this message
Attachments:
Download 'blob30.png' (163 KB)
Preview of image 'blob30.png'


 
 




 
 


> I simulated a "blob texture". Created a 10x10x10 virtual grid and put a random
> point in each cell. That's the centre of a "blob item", that is, I used the blob
> equation from the docs to calculate grey values. The radius is randomized
> between 0.5 and 2.5. The strength is kept at 1.0 and the threshold is not used.
>
Is this similar to a bunch of spherical pattern components added together?
I guess it is:
strength * pow((1  pow((distance / radius), 2), 2)
For each defined blob component from a sample point, then added together, which
isn't exactly the same?
As it is, I think you could do this for blobs with up to 13 or 14 components
using userdefined functions, but you would need a separate function for each
number of components, or have a "component count" parameter and then have
ignored parameters off the right side.
But either way, probably not ideal.
Post a reply to this message


 
 




 
 


in news:web.62cdd6fe9db63f2b864166f75d51d79c@news.povray.org jceddy wrote:
> strength * pow((1  pow((distance / radius), 2), 2)
>
strength * pow((1  pow((min(radius, distance) / radius), 2), 2)
But yes. That's it. I just used brute force (using Nim).
By limiting the radius (max 1.5 cell ~2.6) and strength one can probably
limit the amount of cells/blobs to sum to 48(?)
ingo

https://ingoogni.nl
Post a reply to this message


 
 




 
 


> strength * pow((1  pow((min(radius, distance) / radius), 2), 2)
>
> But yes. That's it. I just used brute force (using Nim).
> By limiting the radius (max 1.5 cell ~2.6) and strength one can probably
> limit the amount of cells/blobs to sum to 48(?)
>
So one could definitely create an internal function for this.
Maybe I'll create a patch for it as a diversion from the kind of frustrating
things I am working on now. XD
Post a reply to this message


 
 




 
 


> But yes. That's it. I just used brute force (using Nim).
> By limiting the radius (max 1.5 cell ~2.6) and strength one can probably
> limit the amount of cells/blobs to sum to 48(?)
>
Poking around, this actually already exists: the potential pigment
for example:
box {
<0.5, 0.5, 0>, <0.5, 0.5, 0>
texture {
pigment {
potential {
blob {
threshold 0.6
sphere { <.75, 0, 0>, 1, 1 }
sphere { <.375, .64952, 0>, 1, 1 }
sphere { <.375, .64952, 0>, 1, 1 }
scale 0.25
}
}
color_map {
[0.0 color rgb 0.0 ]
[1.0 color rgb 1.0 ]
}
}
finish {
ambient 1.0
diffuse 0.0
}
}
}
I rendered this with an orthographic camera and attached the output.
Post a reply to this message
Attachments:
Download 'test_blob_pattern.png' (13 KB)
Preview of image 'test_blob_pattern.png'


 
 




 
 


in news:web.62d23d8a9db63f2b864166f75d51d79c@news.povray.org jceddy wrote:
> the potential pigment
>
How did I miss that?
It works different than what I had in mind. Moving a 3d x*y*z "cache"
through space and depending in what "cell" one is fill the cache with the
approriate deterministic random data and calculate the result with that.
But, time to investigate the potential of potential.
Thanks,
ingo

https://ingoogni.nl
Post a reply to this message


 
 




 