POV-Ray : Newsgroups : povray.newusers : Texturing landscapes : Re: Texturing landscapes Server Time
29 Jul 2024 10:17:48 EDT (-0400)
  Re: Texturing landscapes  
From: gonzo
Date: 12 Mar 2006 16:35:35
Message: <44149427@news.povray.org>
Kjetil wrote:
> Hi there.
> 
> I am trying to create an image with an (ant)arctic-looking landscape - much
> like Christoph Hormann's image here:
> http://www.imagico.de/pov/pict/frozen_island.jpg.
> 
> However, I just cannot work out how to get the texturing right.
> 
> My height field is created using a "f_ridged_mf" function, and I have tried
> using a texture consisting of a slope texture map of snow and rock. The
> effect is far from what I am after -
> 
> The main problem appears to be that the "slope" keyword is too "dependent"
> on altitude. Whereas Christoph's image above has snow / rock together at a
> range of altitudes, I get a very clear "cutoff point" with snow below and
> rock below.
> 
> If anyone have any pointers to this, or know of any tutorials on how to
> texture landscapes in general, I am very grateful.
> 
> Thanks in advance!
> 
> 


I usually pre-define substrate textures using a gradient y for altitude 
dependent features, then combine those into a new texture using slope to 
determine which are visible,  i.e.;  (sorry, not on my machine so don't 
have any available at the moment, so pure pseudo-code here...)

T_Snow {
   gradient y
   map
     [LOW   wet_mud ]
     [MID   patchy_drifts ]
     [HIGH  packed_powder ]
}
T_Rock {
   gradient y
   map
     [LOW   gravel ]
     [MID   mixed_scree ]
     [HIGH  hard_stone ]
}

T_Rocky_Snow
   slope y
   map
     [STEEP  T_Rock ]
     [FLAT   T_Snow ]
}

That way both the snow and rock will change with slope and altitude. 
Just remember that your y scale must always be the same as the 
height_field so the gradient y doesn't tile itself. I usually apply the 
texture to the height_filed before scaling so they always stay the same.

RG


Post a reply to this message

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