![](/i/fill.gif) |
![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On Sun, 12 Sep 1999 12:35:05 -0500, Bob Hughes <inv### [at] aol com> wrote:
>Just to confirm, if I can, I believe Remco has the only answer there
>is for that. All objects are sort of one-sided while also being
>double-sided, if that makes any sense. At least for the purposes of
>texturing. Takes the two objects then to make a true piece of paper.
>Semi-transparency is another matter, in which case you'd want to make
>the underside page a little filtered.
And yet we POV-Ray users feel free to comment on the fact that people
who use other modeling programs feel the need to double up mesh faces.
Aren't we a bunch of hypocrites. :)
Seriously, there is another way to get different textures on both sides
of a sheet of paper, but it's a little more difficult. It requires
you to use a radial texture, and it requires the paper to have at least
a little thickness so as to prevent weirdness in the texture. If you're
using a patch object for the paper, I think I'd recommend doubling it
up as previously suggested.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Ron Parker wrote:
>
> Seriously, there is another way to get different textures on both sides
> of a sheet of paper, but it's a little more difficult. It requires
> you to use a radial texture, and it requires the paper to have at least
> a little thickness so as to prevent weirdness in the texture. If you're
> using a patch object for the paper, I think I'd recommend doubling it
> up as previously suggested.
I wonder: if it's a flat box would it work if you used a gradient pigment with
two image maps?
Something like:
pigment{
gradient y
pigment_map{
[0 image1]
[0.49 image1]
[0.51 image2]
[1 image2]
}
}
Forgive the syntax-mistakes, I haven't tried this...
Remco
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
There are pathological cases when the doubling method is practically impossible.
I wonder... Would it be difficult to implement separate textures for the two
sides of a surface? I.e. when the surface normal is >90 degrees from the current
ray, use one texture - and when <90 degrees use another. Sound simple, at least
in principle.
Margus
Ron Parker wrote:
>
> Seriously, there is another way to get different textures on both sides
> of a sheet of paper, but it's a little more difficult. It requires
> you to use a radial texture, and it requires the paper to have at least
> a little thickness so as to prevent weirdness in the texture. If you're
> using a patch object for the paper, I think I'd recommend doubling it
> up as previously suggested.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
That would not be difficult at all, in fact, I was about to make an
"interior_texture" patch when this message came up. :-)
I have already done something similar for a reflection patch I did, to
make one-way mirrors, but this method will be much more versatile. My
patch was limited to specifying the reflection for the interior side of
the surface.
Oh, before you ask-this patch should work for triangles, beziers, etc,
because although they don't have an interior, they are two-sided shapes.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On Mon, 13 Sep 1999 06:44:42 -0500, Chris Huff wrote:
>That would not be difficult at all, in fact, I was about to make an
>"interior_texture" patch when this message came up. :-)
>I have already done something similar for a reflection patch I did, to
>make one-way mirrors, but this method will be much more versatile. My
>patch was limited to specifying the reflection for the interior side of
>the surface.
One small note - beware the code that flips surface normals for shading
purposes. It might confuse your patch if it happens in the wrong place.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
: ) I was going to say the same thing when I saw Ron's "more
difficult" texturing method. So THAT's why I saw someone mention
Ron's extravagant use of the radial pattern!
Anyway, for flat objects fine, but sounds like the need for isosurface
and isopigments to me if doing wrinkled or otherwise misshaped base
objects.
Bob
Remco de Korte <rem### [at] xs4all nl> wrote in message
news:37DCCE82.7DBB51CE@xs4all.nl...
> Ron Parker wrote:
> >
>
> > Seriously, there is another way to get different textures on both
sides
> > of a sheet of paper, but it's a little more difficult. It
requires
> > you to use a radial texture, and it requires the paper to have at
least
> > a little thickness so as to prevent weirdness in the texture. If
you're
> > using a patch object for the paper, I think I'd recommend doubling
it
> > up as previously suggested.
>
> I wonder: if it's a flat box would it work if you used a gradient
pigment with
> two image maps?
> Something like:
> pigment{
> gradient y
> pigment_map{
> [0 image1]
> [0.49 image1]
> [0.51 image2]
> [1 image2]
> }
> }
>
> Forgive the syntax-mistakes, I haven't tried this...
>
> Remco
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On Mon, 13 Sep 1999 09:03:11 -0500, Bob Hughes wrote:
>: ) I was going to say the same thing when I saw Ron's "more
>difficult" texturing method. So THAT's why I saw someone mention
>Ron's extravagant use of the radial pattern!
If you saw someone make a comment about my extravagant use of the
radial pattern, it was probably in reference to either my hextiles
or my star pigments. That particular application of radial, to
texture both sides of an object differently, is something I picked
up from someone else; I think it was Chris Colefax.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Yes, I had to work around that for my reflectivity patch. An annoying
little bit of code...
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Saadat Saeed wrote:
> I have created a paper on PovRay and have mapped a scanned newspaper onto
> it. Now, the scanned newpaper appears on both sides on the newspaper.
> Oneside is what I want and the other side is in reverse. I'd like to keep
> the other side blank AND/OR and different image map on the other side. Can
> anyone guide me to the two different possibilities?
>
> BR/Saadat Saeed
I just downloaded the g version for MS-dos, so I don't know if this will
work in all versions.
#declare Box=box{<0,0,1>,<4,4,0>
texture {pigment{image_map { tga "Image.tga"
map_type 0 interpolate 2} }
scale<2,4,1> }}
#declare Box2=box{<0,0,0>,<2,10,.1>
texture {pigment{image_map { tga "Image2.tga"
map_type 0 interpolate 2} }
scale<2,4,1> }}
// white back side of paper
#declare Pg=intersection{
object{Box}
box{<0,0,0>,<2,10,.1> pigment{White}}
}
// Image2 on back side of paper
#declare Pg=intersection{
object{Box}
object{Box2}
}
You can also use the Height_field this way too.
Late but, Hope this helps.
Post a reply to this message
Attachments:
Download 'us-ascii' (2 KB)
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
There is also a neat solution at
http://www.spiritone.com/~english/cyclopedia/index.html#coins0
Leroy Whetstone wrote:
> Saadat Saeed wrote:
>
>> I have created a paper on PovRay and have mapped a scanned newspaper
>> onto
>> it. Now, the scanned newpaper appears on both sides on the
>> newspaper.
>> Oneside is what I want and the other side is in reverse. I'd like to
>> keep
>> the other side blank AND/OR and different image map on the other
>> side. Can
>> anyone guide me to the two different possibilities?
>>
>> BR/Saadat Saeed
>
> I just downloaded the g version for MS-dos, so I don't know if this
> will work in all versions.
>
> #declare Box=box{<0,0,1>,<4,4,0>
> texture {pigment{image_map { tga "Image.tga"
> map_type 0 interpolate 2} }
> scale<2,4,1> }}
>
> #declare Box2=box{<0,0,0>,<2,10,.1>
> texture {pigment{image_map { tga "Image2.tga"
> map_type 0 interpolate 2} }
> scale<2,4,1> }}
>
> // white back side of paper
> #declare Pg=intersection{
> object{Box}
> box{<0,0,0>,<2,10,.1> pigment{White}}
> }
>
> // Image2 on back side of paper
> #declare Pg=intersection{
> object{Box}
> object{Box2}
> }
>
>
> You can also use the Height_field this way too.
> Late but, Hope this helps.
--
Josh English
eng### [at] spiritone com
icq 1946299
"Stress is when you wake up screaming and realize you haven't fallen
asleep yet."
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |