Author |
Message
|
Doomcake |
Posted: Sat Mar 30, 2013 2:11 am Post subject: Having problems with Slope in MaskGen |
|
|
Joined: 29 Mar 2013 Posts: 2
|
I've spent today having fun learning Grome, vaguely following the Grome Terrain Modelling book by Richard Hawley while allowing myself to wander off and Investigate Stuff, but I've hit a problem understanding the Slope settings for the MaskGen functionality.
I tried to do a simple mask to detect slopes but it seemed to be noticeable even on flat terrain. In order to make sure I understood how Slope worked I decided to set up a a mask which wouldn't apply to anything as it's too steep.
Apply method: Replace
Terrain Normals: From interpolatrion surface w/ low Smoothness (Did try others..)
Color: White
Height: Min -100000, Max 100000, Att 0
Slope: Min 90, Max 90, Att 90
Orientation: Dir 0, Spread 180, Att 0
Feather: 0
The problem is this still seems to be applying on fairly slight slopes, and is visible even on rolling plains. Reversing the logic, with Slope: Min 0, Max 20, Att 0 seems to do what I'd expect and just grab the flat areas but I don't seem to be able to texture only slopes.
Am I doing something silly here or is something not behaving as expected? |
|
Back to top |
|
 |
ALicu |
Posted: Sat Mar 30, 2013 11:49 am Post subject: |
|
|
Joined: 12 Feb 2007 Posts: 1330
|
Hi,
I think the result you are getting is the consequence of the attenuation (Att). Basically this indicates the range around the value on which the mask is gradually shifting from none to full opaque. In your example above you've used an attenuation of 90 for a range from 90 to 90. This means that all values starting from 0 to 90 will get attenuated gradually from full transparency (0 degree) to full opaque (90 degrees). While you have a flat surface this in theory should contain only 0 degrees (so full transparency). But due to the nature of floating point computations this may incorrectly use another attenuation than 0 in some spots (floating point errors due to precision issues in CPU calculus). These values represent an extreme case, usually you don't notice these small errors.
I will do some tests myself but let me know if putting attenuation on 0 fixes this.
Regards,
Adrian L. |
|
Back to top |
|
 |
Doomcake |
Posted: Sun Mar 31, 2013 1:02 pm Post subject: |
|
|
Joined: 29 Mar 2013 Posts: 2
|
Suddenly it all makes sense and I've now got it working fine, I'd misunderstood how attenuation works. |
|
Back to top |
|
 |
ALicu |
Posted: Sun Mar 31, 2013 6:00 pm Post subject: |
|
|
Joined: 12 Feb 2007 Posts: 1330
|
Ok, I'm glad I could help . Maybe we also need to make the help more clear there. |
|
Back to top |
|
 |
|