POV-Ray : Newsgroups : povray.tools.general : How to "roundify" objects : Re: AFAIK it should be integrated in Povray Server Time
23 Jan 2022 18:49:37 EST (-0500)
  Re: AFAIK it should be integrated in Povray  
From: clipka
Date: 21 May 2015 13:59:18
Message: <555e1cf6$1@news.povray.org>
Am 21.05.2015 um 10:05 schrieb Lars Rohwedder:
>> I have never found a satisfactory solution to the general rounding
>> problem. Isosurface blobs are good, but isosurfaces take so long to
>> render. Extensive macros for CSG, or hand-modelled meshes seem the
>> best value for time vs results...
>
> My rough idea:
>
> There is already a function that returns whether a vieving ray "hits"
> the surface of a given object's surface (and where it hits). I assume
> this function is used in the render core of Povray, too.
>
> So it should be possible to provide another function that returns the
> point where the distance between ray and object is 0, but where it has a
> given distance 'd'.

While that sounds like a neat idea at first, it becomes troublesome as 
soon as you try to implement the corresponding function for all the 
various primitives.

Spheres are ok.
Boxes, yes, you can do that.
Cylinders and cones, too.

Meshes and height fields? Things are starting to get a bit more complicated.

Prisms or lathes based on non-linear splines? Text? Bezier patches? It 
gets ugly here, making these objects as complicated as sphere sweeps 
(which are known to be prone to artefacts).

Isosurfaces? Surprisingly enough, while isosurfaces are the easiest way 
to already get what you are asking for (provided there is a solution to 
the problem at all), determining where the distance between the ray and 
the surface equals 'd' is outright impossible for generic isosurfaces.

Fractals? You must be kidding.


Post a reply to this message

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