|
![](/i/fill.gif) |
"blooflame" <nomail@nomail> wrote:
> How would I do this? My (naive?) thought process is to define each sheet as
> a "box" with dimensions proportional to how a sheet of glass is (thin
> front-to-back, rectangular), then create images in the plane of one side of
> the box. Boxes to be placed in space such that each one is exactly next to
> the other.
That seems the simplest & most logical approach, but if you do that you're
going to get 3 problems:
1. Coincident surfaces - if you stack one box *exactly* next to the other
then Povray won't know which surface to render. Sometimes it will render
'Box A' and sometimes it will render 'Box B'. This isn't a problem if the
textures on 'Box A' & 'Box B' are exactly the same, but if they are
different you will get random per-pixel speckling where the surfaces
overlap. Simple solution is to leave a very small gap between the two
objects.
2. max_trace_level - if this is set too low (the default is 5) then most of
your glass sheets will end up black. Read the docs to find out why...
3. "My image_map appears on both sides of the box" - as Jim wrote, the
image_map extends infinitely along the Z axis (with planar mapping anyway).
This means it will appear on both the front & the back of your glass sheet,
which I'm guessing isn't what you want...
After experimenting with a few alternatives, the simplest solution to this
is to create a plain glass sheet, and put the image on a seperate
2-dimensional object placed very slightly in front of the glass sheet
(coincident surfaces again). The simplest way to make a 2-dimensional
square is with a polygon.
Do not regard this as the ONLY way to solve the problem. This is Povray and
there are many more ways to skin a cat (or render a skinned one). Read the
documentation, use the newsgroups & experiment with different techniques.
Post a reply to this message
|
![](/i/fill.gif) |