|
![](/i/fill.gif) |
clipka <ano### [at] anonymous org> wrote:
> Am 11.03.2011 00:50, schrieb stbenge:
>
> > IME, the best (not to mention the most accessible) way to do this is to
> > use a proximity pattern, which is basically just an object pigment
> > blurred in 3D space. The advantage of using proximity patterns is that
> > you can obtain *outside*edge* data as well as inside edge data.
> >
> > Any other AO-like ray tracing/casting method would require some new
> > routines to be added into POV's rendering core... but I could be wrong.
> > (anything can be done if you're willing to wait through a long render)
>
> Trevor's idea was actually the path I followed with my earlier attempt
> at a proximity pattern. Code-wise it was not much of a change, as
> radiosity already has everything that's needed, even including some
> optimization. However, it could not do outside edges, and the approach
> also didn't allow for choosing only a subset of objects to affect the
> pattern - it would always use the complete scene.
My thought was that it could be implemented as a pattern type where it is object
based. One slight issue with my idea is that if you only use the direct normal,
it would fail at the very valley of a crevice as the normal ray would come
straight back out without intersection. This could maybe be solved by not using
the normal, but perhaps an average of a few normals some angle from
perpendicular (eg 45deg) that would intersect.
I don;t see the issue with outside edges, as what I think of as grime tends to
be only on interior edges or crevices; that is surface areas that are not
exposed.
I would look at trying to code this myself, but I'm not really up to snuff yet
with the internal POV coding. Maybe in the future if I have time, I may look at
it and a few other things, but for now just throwing it out there as ideas for
those that are playing at the code. Would be nice to see if you can come up
with something.
-tgq
Post a reply to this message
|
![](/i/fill.gif) |