|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> If I can propose a new feature, this
> would be it: object based AA. That way one could define high AA to very
> small detailed objects without affecting the whole scene.
The word I was looking for was of course "specific": object specific AA.
Severi
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Severi Salminen wrote:
> Warp wrote:
>
>> The blur trick uses normals as well, but it has a couple of advantages
>> compared to your suggested method:
>>
>> - Your suggestion requires quite heavy antialiasing to look good.
>
>
> Yes, I thought this to be non-issue as I want to use quite heavy AA
> normally. But for test renderings it will be an issue. And you are
> correct that the heavy AA makes this otherwise fast method not so fast
> afterall :(
If I may make an addition. If one DOES use heavy AA usually then the
single bumps method produces, of course, a lot faster reflections. Using
AA and many averaged textures slows thing down _a lot_! This depends
also the amount of reflecting surfaces in final image: the more area
there is, the faster the single bumps method will be. And I still think
the averaging and creating randomly moved normals looks and feels very
ugly in scene sources.
Newerthless, I strongly suggest that _both_ methods should be covered in
Pov-FAQ and TAG-Pov-FAQ as both methods have distinct advantages and
disadvantages depending on the actual situation. Would this be possible,
Warp?
Severi S.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
de news:3ff95bd4$1@news.povray.org...
> it would be maybe more usable. If I can propose a new feature, this
> would be it: object based AA. That way one could define high AA to very
> small detailed objects without affecting the whole scene.
For the record, this very feature exists in Cinema 4D (I'm compiling a list
of C4D vs POV-Ray features to be released soon): one defines AA at scene
level but each object can have a special tag attached that allows it to have
a higher AA quality (among other things that can be set at object level,
like radiosity). And yes, this is a big time saver (and an eye opener about
the type of optimisations that could be done in POV-Ray).
G.
--
**********************
http://www.oyonale.com
**********************
- Graphic experiments
- POV-Ray and Poser computer images
- Posters
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
On Mon, 5 Jan 2004 21:16:53 +0100, "Gilles Tran" <gitran_nospam_@wanadoo.fr>
wrote:
> > it would be maybe more usable. If I can propose a new feature, this
> > would be it: object based AA. That way one could define high AA to very
> > small detailed objects without affecting the whole scene.
>
> For the record, this very feature exists in Cinema 4D (I'm compiling a list
> of C4D vs POV-Ray features to be released soon): one defines AA at scene
> level but each object can have a special tag attached that allows it to have
> a higher AA quality (among other things that can be set at object level,
> like radiosity). And yes, this is a big time saver (and an eye opener about
> the type of optimisations that could be done in POV-Ray).
I made a patch with postprocessing based on the functions. Using functions
makes it possible to postprocess only selected selected parts of outputed
image. Mixing it with camera_view pigment I made or with projection pattern it
is possible to create selection with areas represented by views of object. In
other words it looks possible to do such effect with my patches thought I
would need some tests. Will post some images to p.b.i I hope, thought I think
first implementation will not be large time saver.
ABX
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Hugo Asm <hua### [at] post3teledk> wrote:
> there is a price to pay as well: It can produce very
> inaccurate results, at least when the normals have random directions and you
> don't average all 255 possible textures.
I don't understand how it is more inaccurate than using one normal scaled
very small + antialiasing, which also shoots reflected rays in random
directions.
--
#macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}// - Warp -
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Severi Salminen <sev### [at] not_thissibafi> wrote:
> If I may make an addition. If one DOES use heavy AA usually then the
> single bumps method produces, of course, a lot faster reflections. Using
> AA and many averaged textures slows thing down _a lot_!
Then you are using it wrong.
If you want to use heavy antialiasing, you don't need to average so
many textures (supposing you are scaling the normals small).
If eg. 100 averaged textures look good without antialiasing, but you
are going to use heavy antialiasing for the final image, you can decrease
that count to eg. 20 or 10 or whatever.
The advantage is that it will produce a better result than a single
normal with the same antialiasing settings. Even two averaged textures will.
--
#macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}// - Warp -
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> I don't understand how it is more inaccurate than using one normal
scaled
> very small + antialiasing, which also shoots reflected rays in random
> directions.
Perhaps I should add, that I was thinking of averaging textures with their
normals scaled very big. Otherwise there is no difference.
When random normals are scaled very big, they reveal a 'banding' effect that
I would say is more inaccurate than 'noise' because it catches the eye and
is perceived as "this looks wrong" rather than "this image has a little
noise".
Regards,
Hugo
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
In article <3ffaafe1$1@news.povray.org>,
"Hugo Asm" <hua### [at] post3teledk> wrote:
> When random normals are scaled very big, they reveal a 'banding' effect that
> I would say is more inaccurate than 'noise' because it catches the eye and
> is perceived as "this looks wrong" rather than "this image has a little
> noise".
It is no less accurate...what you are talking about is a sampling
artifact. The actual inaccuracy is the same, the errors in the small
normal method are just less spatially organized. The banding is usually
easier to eliminate than noise...the situation is very similar to the
tradeoffs between method 1 and method 2 or 3 media.
--
Christopher James Huff <cja### [at] earthlinknet>
http://home.earthlink.net/~cjameshuff/
POV-Ray TAG: <chr### [at] tagpovrayorg>
http://tag.povray.org/
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Gilles Tran wrote:
essage
> de news:3ff95bd4$1@news.povray.org...
>
>>it would be maybe more usable. If I can propose a new feature, this
>>would be it: object based AA. That way one could define high AA to very
>>small detailed objects without affecting the whole scene.
>
>
> For the record, this very feature exists in Cinema 4D (I'm compiling a
list
> of C4D vs POV-Ray features to be released soon): one defines AA at scen
e
> level but each object can have a special tag attached that allows it to
have
> a higher AA quality [...]
I would like to point out a few things:
first of all 'per object aa settings' is not a clearly defined feature
at all, it would be if we only had opaque non-reflective surfaces in the
scene. In all other cases the color of a sample is not just determined
by a single object so you can't find a general solution for this (no
matter how you implement it there will always be cases where it does not
do what you want).
second: the idea that you need higher aa settings for 'small and
detailed objects' to me seems to show a misunderstanding of the concept
of adaptive antialiasing - you automatically get better antialiasing for
such objects. The reason you want per object settings in case of
blurred reflection is because you abuse aa for something it never was
designed for.
Of course variable antialiasing settings might still be interesting for
mere speed reasons - you have a scene with quite slow periferial parts
and you want to reduce aa settings there for a faster render but need
the high quality settings for a central region to look good. In such a
case you might not want to have the aa settings for a specific object
but for a specific region (you have to make sure of course you get a
smooth transit). For this a 2d antialiasing map might be more useful
(it would of course also be easier to implement... :-).
A remark on blurred reflection: a useful feature would probably an
adaptive sampling technique for this purpose - you send out a set of
rays from the surface of the reflective object and stop if their
returned colors do not differ more than a certain threshold - otherwise
you send more rays.
Christoph
--
POV-Ray tutorials, include files, Sim-POV,
HCR-Edit and more: http://www.tu-bs.de/~y0013390/
Last updated 25 Oct. 2003 _____./\/^>_*_<^\/\.______
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
From: "Christoph Hormann" <chr### [at] gmxde>
Newsgroups: povray.general
Sent: Tuesday, January 06, 2004 6:57 PM
Subject: Re: A good blurred reflection with bumps
>first of all 'per object aa settings' is not a clearly defined feature
>at all, it would be if we only had opaque non-reflective surfaces in the
>scene. In all other cases the color of a sample is not just determined
>by a single object so you can't find a general solution for this (no
>matter how you implement it there will always be cases where it does not
>do what you want).
Well, yes, from a general point of view, and there would be cases where it
wouldn't work perfectly, probably. But in the "real" world of 3D scenes,
it's quite easy to see how this kind of feature can be extremely handy.
Let's assume that, default aa settings are usually good enough and represent
a good compromise between quality and speed (after all that's why these are
default settings). In my experience, better aa settings are often needed for
very specific situations: small regular patterns like grids, fine lines,
small letterings etc. In many cases it's a just window on a wall, a logotype
on a bottle, a plant, that sort of thing. Using high quality aa there isn't
much of a problem because the object doesn't occupy a lot of screen estate.
However, using the high quality aa on the entire scene is likely to bring it
down, because a good part of the screen space is going to be taken by the
other objects, those that were acceptable for the user with the default aa
settings but that will get "improved" anyway (I'm not talking about
quasi-uniform textures or surfaces there).
About having aa defined by zones, I think still it's much more practical to
have it defined per object. Not only it's often a object problem, as seen
above, but when doing animation that would be the only sensible way to do it
(one just doesn't want to define the zones frame by frame).
I could imagine, in an hypothetical POV-Ray, a syntax like this one:
global_settings{
radiosity{...}
antialiasing{...}
}
object{
...
object_settings{
radiosity{...}
antialiasing{...}
}
}
Note that this can already be done in POV-Ray, using several passes
(including a mask one) and an image editor (not for animation of course)...
Christoph
--
POV-Ray tutorials, include files, Sim-POV,
HCR-Edit and more: http://www.tu-bs.de/~y0013390/
Last updated 25 Oct. 2003 _____./\/^>_*_<^\/\.______
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |