POV-Ray : Newsgroups : povray.binaries.images : Another brick - plus source : Re: Another brick - plus source Server Time
7 Aug 2024 07:12:48 EDT (-0400)
  Re: Another brick - plus source  
From: PM 2Ring
Date: 5 May 2006 12:30:01
Message: <web.445b7c805db93cba1bd1c060@news.povray.org>
"Bill Pragnell" <bil### [at] hotmailcom> wrote:
> "PM 2Ring" <nomail@nomail> wrote:
> > I don't think smoothing is necessary for bricks, since you want some
> > roughness, but it does mean you need to keep your triangles small to avoid
> > funny-looking artifacts.
> I think I'd have to agree, after playing with this for a bit.

I don't think the kind of rounding that smooth triangles gives is correct
for a brick, unless you want the brick to look like it's been smoothed by
water erosion, etc.

> > That's a very minimal texture there, Bill. :) I guess you want to avoid use
> > of normals, since they slow things down, and tend to look the same at all
> > distances.
> Well, it's only a test render, really! Try slapping that sandstone texture
> on it... Actually, I might experiment with micronormals too - they could
> help hide the triangles on lower-res meshes.

Yes, and the distance problem is much less of an issue with micronormals,
but they can be time consuming.

> > Also, how long is your parsing time? I guess it won't be too bad, if you're
> > not making hundreds of different bricks. Maybe you can save the mesh to a
> > file? See
> > #macro HFCreate_ () in "shapes.inc" for an example.
> Parsing time is pretty big actually, and peak memory was over 50MB. I think
> saving the meshes to files would be the best way to proceed for larger
> scenes! I've found that no more than 10-20 different bricks make for
> sufficient variation in a wall.

And if you can somhow 'weld' sub-bricks into a single unit so no seams are
visible, then you can turn a small pool of sub-bricks into a sizeable group
of bricks. I used this technique last year with patches of grass.

Also consider that you don't have to texture all faces of your brick; in a
wall, most of the faces are going to be invisible anyway.

> > > All the parameters required can be passed to the macro, except the pigment
> > > function (I couldn't get it to work for some reason). The macro therefore
> > > assumes a pre-declared function called fn_brick_surface.
> > I have vague memories of having problems with something like that, too.
> > However the manual says:
> Well, I'm passing the function down a couple of nested macros, and it
> doesn't seem to like the third handover! But it doesn't really matter if
> meshes are declared before use.

Ok, it may be the nested macros that get it confused; maybe one of the
source code gurus will enlighten us.


Post a reply to this message

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