POV-Ray : Newsgroups : povray.bugreports : Mach artifacts in blob objects : Re: Mach artifacts in blob objects Server Time
13 May 2024 16:31:29 EDT (-0400)
  Re: Mach artifacts in blob objects  
From: Le Forgeron
Date: 29 Dec 2009 19:15:39
Message: <4b3a9bab@news.povray.org>
Le 30/11/2009 21:21, Le_Forgeron nous fit lire :

> (I did not look at the blob to see if the mixing is easy or
> unrealisting, at the math level of the solver)

Now, I did.
It won't be simple, if at all possible to change the blob object.

Currently, the density function is strength*(1-(r/rad)^2)^2 and is
turned into solving a quartic as the influence along the ray just have
the right changes rate. (well, in fact, they are quartics)!
(Well, the ray is split in intervals where the various pondered
contributions ends up as solving a quartic for each segment)

Leaving the quartic solver (we already do that when using sturm
keyword), we end up with a general bisecting solver instead of a
"hard-coded" computation. It will take ages.


the actual root: you sample the equation again and again to hunt the
roots (if any)!

It will even take more times as the order N is big... and basic search
on wiki (and initial post) states that N=3 is enough for continuous
reflection (Initial request). Solving a 6th order instead of 4th order
is not going to make thing easier.
And it would required a full rewrite of the coefficient handling, as
currently blob is optimised for 4th order (need to use 2 more, and
updates all the developed formulas, with change of relevant weights.

So, to sum up: the "optimised" blob would be limited to order 2 or order
3 (forget about other values, including fractional ones), it would slow
down order 2 (old ones) even when no order 3 would be there.
Alternative solution could be to keep actual blob as they are, and
adding a new "metaball" object (and its silly solver) for order 2 & 3.
(still able to mix both orders)

Now, looking at some other metaball's software, we could also enjoy some
extra shapes:
 - ball for spherical component (and ellipse as today too, with transform)
 - tube for cylinder (add a single dimension to the center)
 * sheet for rectangle (add two orthogonal dimensions to the center)
 * cube (add three orthogonal dimensions)

If any mathgeek has some free time...


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.