@Emiliocat welche Parameter meinst du genau?
void main() {
const float hmax = 3276.75;
const vec3 snowCol = vec3(.95, .95, .95);
vec2 texCoord2 = texCoord.xy;
vec2 posCnt = tileSize * texCoord2;
vec2 posBL = posCnt - .5 * resolution;
vec2 posTR = posCnt + .5 * resolution;
vec2 tcCnt = (1.0 - 3.0 * texel) * texCoord2 + vec2(1.5 * texel);
vec2 tcBL = (1.0 - 3.0 * texel) * posBL / tileSize + vec2(1.5 * texel);
vec2 tcTR = (1.0 - 3.0 * texel) * posTR / tileSize + vec2(1.5 * texel);
float hl = hmax * texture(heightmap, vec2(tcBL.x, tcCnt.y)).r;
float hr = hmax * texture(heightmap, vec2(tcTR.x, tcCnt.y)).r;
float hb = hmax * texture(heightmap, vec2(tcCnt.x, tcBL.y)).r;
float ht = hmax * texture(heightmap, vec2(tcCnt.x, tcTR.y)).r;
float height = .25 * (hl + hr + hb + ht);
vec3 normal = normalize(vec3((hl - hr) * resolution.y, (hb - ht) * resolution.x, resolution.x * resolution.y));
vec3 tangent = normalize(vec3(resolution.x, .0, hr - hl));
vec3 bitangent = cross(normal, tangent);
mat3 tangentMat = mat3(tangent, bitangent, normal);
float slope = 1.0 - normal.z;
//slope = floor(16.0*slope + .5)/16.0;
float amb = texture(ambient, texCoord2).r;
const float snow0 = .75 * hmax;
const float snow1 = .77 * hmax;
float grassInt = .0, snowInt = .0, rockInt = .0;
if (height <= snow0) {
grassInt = 1.0;
} else if (height >= snow1) {
snowInt = 1.0;
} else {
snowInt = (height - snow0)/(snow1 - snow0);
grassInt = 1.0 - snowInt;
das ist mal ein Auszug der Datei terrain_gen.fs
ich habe den Faktor float height = .25 * (hl + hr + hb + ht);
auf float height = .75 * (hl + hr + hb + ht); gesetzt und meine der Unterschied von Flach zu Berg wird größer aber man kanns ja nicht messen.
diese Konstanten const float snow0 = .75 * hmax;
const float snow1 = .77 * hmax;
sind für Deinen Mod sicher interessant