POV-Ray : Newsgroups : povray.general : layered textures and uv_mapping? Server Time
14 Nov 2024 23:19:02 EST (-0500)
  layered textures and uv_mapping? (Message 1 to 2 of 2)  
From: Christopher Creutzig
Subject: layered textures and uv_mapping?
Date: 26 Jan 2005 04:21:22
Message: <41f76112$1@news.povray.org>
Salvete,

  Is it possible to have, on one mesh2 with uv_vectors, two layered 
textures, *one of which* uses uv_mapping?  (For mathematical surfaces, 
I'd like to draw parameter lines this way.)

mesh2 {
   vertex_vectors { 9,
      <0, 0, 0>, <0, 1, 1>, <0, 2, 0>,
      <1, 0, 1>, <1, 1, 1>, <1, 2, 1>,
      <2, 0, 0>, <2, 1, 1>, <2, 2, 0> }
   uv_vectors { 9,
      <0, 0>, <0, 1.025>, <0, 2.05>,
      <1.025, 0>, <1.025, 1.025>, <1.025, 2.05>,
      <2.05, 0>, <2.05, 1.025>, <2.05, 2.05> }
   face_indices { 8,
      <0, 1, 4>, <0, 4, 5>, <1, 2, 5>, <2, 6, 5>,
      <4, 5, 7>, <5, 8, 7>, <5, 6, 9>, <5, 9, 8> }
   texture {
      pigment {
        gradient z
        color_map { [0 rgb <1, 0, 0>] [1 rgb <0, 0, 1>] }
      }
   }
   texture {
      uv_mapping pigment {
        gradient u
        color_map { [0 rgb 0] [0.05 rgb 0]
                    [0.05 rgbft <0,0,0,1,1>] [1 rgbft <0,0,0,1,1>] }
      }
    }
   texture {
      uv_mapping pigment {
        gradient v
        color_map { [0 rgb 0] [0.05 rgb 0]
                    [0.05 rgbft <0,0,0,1,1>] [1 rgbft <0,0,0,1,1>] }
      }
    }
}


regards,
	Christopher Creutzig


Post a reply to this message

From: Abe
Subject: Re: layered textures and uv_mapping?
Date: 29 Jan 2005 11:10:00
Message: <web.41fbb544cae2709c223e068e0@news.povray.org>
Christopher Creutzig <chr### [at] creutzigde> wrote:
> Salvete,
>
>   Is it possible to have, on one mesh2 with uv_vectors, two layered
> textures, *one of which* uses uv_mapping?  (For mathematical surfaces,
> I'd like to draw parameter lines this way.)
>
> mesh2 {
>    vertex_vectors { 9,
>       <0, 0, 0>, <0, 1, 1>, <0, 2, 0>,
>       <1, 0, 1>, <1, 1, 1>, <1, 2, 1>,
>       <2, 0, 0>, <2, 1, 1>, <2, 2, 0> }
>    uv_vectors { 9,
>       <0, 0>, <0, 1.025>, <0, 2.05>,
>       <1.025, 0>, <1.025, 1.025>, <1.025, 2.05>,
>       <2.05, 0>, <2.05, 1.025>, <2.05, 2.05> }
>    face_indices { 8,
>       <0, 1, 4>, <0, 4, 5>, <1, 2, 5>, <2, 6, 5>,
>       <4, 5, 7>, <5, 8, 7>, <5, 6, 9>, <5, 9, 8> }
>    texture {
>       pigment {
>         gradient z
>         color_map { [0 rgb <1, 0, 0>] [1 rgb <0, 0, 1>] }
>       }
>    }
>    texture {
>       uv_mapping pigment {
>         gradient u
>         color_map { [0 rgb 0] [0.05 rgb 0]
>                     [0.05 rgbft <0,0,0,1,1>] [1 rgbft <0,0,0,1,1>] }
>       }
>     }
>    texture {
>       uv_mapping pigment {
>         gradient v
>         color_map { [0 rgb 0] [0.05 rgb 0]
>                     [0.05 rgbft <0,0,0,1,1>] [1 rgbft <0,0,0,1,1>] }
>       }
>     }
> }
>
>
> regards,
>  Christopher Creutzig


From my limited understanding of uv_mapping nuances in POV I'll say the
following:

Yes, it is possible. The above example will work with a few modifications.
The uv_mapping key word can be moved inside the pigment brackets to prevent
POV complaining about layering patterned textures. Also, as more of an
aside, face_indices as you have them give an out of range error.

Generally speaking, an object may have its uv vectors defined without
implicitly turning on uv mapping. To map a texture according to the defined
uv vectors, uv_mapping needs to be turned on within the texture definition.
Although, and this is where I get foggy, mesh2 objects can use the
uv_mapping keyword outside of the texture statement to globally activate uv
mapping for the object. Someone else needs to clarify this since I am not
finding explicit reference to this in the docs.

Abe


Post a reply to this message

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