diff --git a/Effects/water-dds.eff b/Effects/water-dds.eff
new file mode 100644
index 000000000..90c59d8b9
--- /dev/null
+++ b/Effects/water-dds.eff
@@ -0,0 +1,50 @@
+
+
+ Effects/water-dds
+ Effects/water
+
+
+ Textures/Water/water-reflection.dds
+ linear-mipmap-linear
+ repeat
+ repeat
+ normalized
+
+
+ Textures/Water/waves-ver10-nm.dds
+ linear-mipmap-linear
+ repeat
+ repeat
+ normalized
+
+
+ Textures/Water/water_sine_nmap.dds
+ linear-mipmap-linear
+ repeat
+ repeat
+ normalized
+
+
+ Textures/Water/water-reflection-grey.dds
+ linear-mipmap-linear
+ repeat
+ repeat
+ normalized
+
+
+ Textures/Water/sea_foam.dds
+ linear-mipmap-linear
+ repeat
+ repeat
+ normalized
+
+
+ Textures/Water/perlin-noise-nm.dds
+ linear-mipmap-linear
+ repeat
+ repeat
+ normalized
+
+ 1.0
+
+
diff --git a/Effects/water.eff b/Effects/water.eff
index 4a886557a..05e542ba0 100644
--- a/Effects/water.eff
+++ b/Effects/water.eff
@@ -11,14 +11,14 @@
normalized
- Textures/Water/waves-ver10-nm.dds
+ Textures/Water/waves-ver10-nm.png
linear-mipmap-linear
repeat
repeat
normalized
- Textures/Water/water_sine_nmap.dds
+ Textures/Water/water_sine_nmap.png
linear-mipmap-linear
repeat
repeat
@@ -32,19 +32,20 @@
normalized
- Textures/Water/sea_foam.dds
+ Textures/Water/sea_foam.png
linear-mipmap-linear
repeat
repeat
normalized
- Textures/Water/perlin-noise-nm.dds
+ Textures/Water/perlin-noise-nm.png
linear-mipmap-linear
repeat
repeat
normalized
+ 0.0
@@ -331,6 +332,14 @@
sampler-2d
6
+
+
+ normalmap_dds
+ float
+
+
+
+
saturation
float
@@ -542,7 +551,7 @@
-
+
0
@@ -687,6 +696,14 @@
sampler-2d
6
+
+
+ normalmap_dds
+ float
+
+
+
+
saturation
float
@@ -1044,6 +1061,14 @@
sampler-2d
6
+
+
+ normalmap_dds
+ float
+
+
+
+
saturation
float
diff --git a/Materials/base/materials-base.xml b/Materials/base/materials-base.xml
index fd2e0a0f2..eef967c73 100644
--- a/Materials/base/materials-base.xml
+++ b/Materials/base/materials-base.xml
@@ -400,111 +400,6 @@ Shared parameters for various materials.
0.1
-
- Ocean
- Effects/water
- Terrain/water.png
- 400
- 400
-
- 40000
-
-
-
- 40000
-
-
-
- 40000
-
-
-
-
-
- 40000
-
-
-
- 40000
-
-
-
- 40000
-
-
-
- 40000
-
-
-
- 40000
-
-
-
- 0.0
- 0.0
- 0.0
- 1.0
-
-
- 0.4
- 0.4
- 0.4
- 1.0
-
-
- 0.0
- 0.0
- 0.2
- 1.0
-
- 0
- 0
- 2
- 0.8
-
-
-
BarrenCover
Dirt
diff --git a/Materials/base/water.xml b/Materials/base/water.xml
new file mode 100644
index 000000000..40714baf0
--- /dev/null
+++ b/Materials/base/water.xml
@@ -0,0 +1,102 @@
+
+
+
+400
+ 400
+
+ 40000
+
+
+
+ 40000
+
+
+
+ 40000
+
+
+
+
+
+ 40000
+
+
+
+ 40000
+
+
+
+ 40000
+
+
+
+ 40000
+
+
+
+ 40000
+
+
+
+ 0.0
+ 0.0
+ 0.0
+ 1.0
+
+
+ 0.4
+ 0.4
+ 0.4
+ 1.0
+
+
+ 0.0
+ 0.0
+ 0.2
+ 1.0
+
+ 0
+ 0
+ 2
+ 0.8
+
\ No newline at end of file
diff --git a/Materials/dds/materials.xml b/Materials/dds/materials.xml
index 26349f6c7..d89faeff7 100644
--- a/Materials/dds/materials.xml
+++ b/Materials/dds/materials.xml
@@ -897,7 +897,7 @@
0.02
1.0
-
+
2500.0
0.4
3
@@ -943,7 +943,7 @@
0.02
1.0
-
+
2500.0
0.4
3
@@ -991,7 +991,7 @@
0.02
1.0
-
+
@@ -1004,7 +1004,7 @@
Town
SubUrban
Terrain/Town1.png
- Terrain/Town1.mask.png
+ Terrain/Town1.mask.png
1024
1024
100000.0
@@ -1028,40 +1028,10 @@
15.0
-
-
-
- sim/startup/season
- summer
-
-
- Effects/water
- Lagoon
- Terrain/water-lake.png
- 400
- 400
-
- 0.0
- 0.0
- 0.0
- 1.0
-
-
- 0.5
- 0.5
- 0.5
- 1.0
-
-
- 0.3
- 0.3
- 0.3
- 1.0
-
- 1.2
- 0
- 1.5
- 0.6
+
+ Ocean
+ Effects/water-dds
+ Terrain/water.png
@@ -1789,7 +1759,7 @@
Terrain/city2-relief-light.png
Terrain/city1.mask.png
- Terrain/city2.mask.png
+ Terrain/city2.mask.png
Terrain/city1.mask.png
Terrain/city2.mask.png
1000
@@ -1801,7 +1771,7 @@
0.02
1.0
-
+
2500.0
0.4
3
@@ -1842,7 +1812,7 @@
0.02
1.0
-
+
@@ -1855,7 +1825,7 @@
Town
SubUrban
Terrain.winter/Town1.png
- Terrain/Town1.mask.png
+ Terrain/Town1.mask.png
1024
1024
100000.0
diff --git a/Materials/default/materials.xml b/Materials/default/materials.xml
index 0b45341b2..03efdbd77 100644
--- a/Materials/default/materials.xml
+++ b/Materials/default/materials.xml
@@ -75,7 +75,7 @@
false
false
-
+
pa_stopway
Runway/pa_stopway.png
@@ -352,7 +352,7 @@
false
false
-
+
pc_stopway
Runway/pc_stopway.png
@@ -859,7 +859,7 @@
Terrain/city2-relief-light.png
Terrain/city1.mask.png
- Terrain/city2.mask.png
+ Terrain/city2.mask.png
1000
1000
100000.0
@@ -869,7 +869,7 @@
0.02
1.0
-
+
2500.0
0.4
3
@@ -899,7 +899,7 @@
Terrain/city1.png
Terrain/city2.png
Terrain/city1.mask.png
- Terrain/city2.mask.png
+ Terrain/city2.mask.png
1000
1000
100000.0
@@ -909,9 +909,9 @@
0.02
1.0
-
+
-
+
@@ -922,7 +922,7 @@
Town
SubUrban
Terrain/Town1.png
- Terrain/Town1.mask.png
+ Terrain/Town1.mask.png
1024
1024
100000.0
@@ -946,6 +946,12 @@
15.0
+
+ Ocean
+ Effects/water
+ Terrain/water.png
+
+
@@ -1297,7 +1303,7 @@
NaturalCrop
Terrain/naturalcrop1.png
- Terrain/naturalcrop1.mask.png
+ Terrain/naturalcrop1.mask.png
2000
2000
1
@@ -1635,7 +1641,7 @@
Terrain/city2-relief-light.png
Terrain/city1.mask.png
- Terrain/city2.mask.png
+ Terrain/city2.mask.png
1000
1000
100000.0
@@ -1645,7 +1651,7 @@
0.02
1.0
-
+
2500.0
0.4
3
@@ -1675,7 +1681,7 @@
Terrain/city1.png
Terrain/city2.png
Terrain/city1.mask.png
- Terrain/city2.mask.png
+ Terrain/city2.mask.png
1000
1000
100000.0
@@ -1685,9 +1691,9 @@
0.02
1.0
-
+
-
+
@@ -1698,7 +1704,7 @@
Town
SubUrban
Terrain.winter/Town1.png
- Terrain/Town1.mask.png
+ Terrain/Town1.mask.png
1024
1024
100000.0
@@ -2265,7 +2271,7 @@
1.0
-
+
UnidirectionalTaperRed
Symbols/unidirectionalred.png
diff --git a/Shaders/water.frag b/Shaders/water.frag
index 5daf5de27..6c674ae0c 100644
--- a/Shaders/water.frag
+++ b/Shaders/water.frag
@@ -31,6 +31,7 @@ varying vec3 normal;
uniform float WaveFreq ;
uniform float WaveAmp ;
uniform float WaveSharp ;
+uniform float normalmap_dds;
////fog "include" /////
uniform int fogType;
@@ -99,7 +100,8 @@ void main(void)
vec4 dist = texture2D(water_dudvmap, vec2(waterTex1 + disdis*sca2)* windScale) * 2.0 - 1.0;
dist *= (0.6 + 0.5 * smoothstep(0.0, 15.0, windEffect));
vec4 fdist = normalize(dist);
- fdist = -fdist; //dds fix
+ if (normalmap_dds > 0)
+ fdist = -fdist; //dds fix
fdist *= sca;
//normalmaps
@@ -123,8 +125,8 @@ void main(void)
nmap1 *= windEffect_low;
// mix water and noise, modulated by factor
vec4 vNorm = normalize(mix(nmap, nmap1, mixFactor) * waveRoughness);
-
- vNorm = -vNorm; //dds fix
+ if (normalmap_dds > 0)
+ vNorm = -vNorm; //dds fix
//load reflection
vec4 tmp = vec4(lightdir, 0.0);
@@ -168,7 +170,8 @@ void main(void)
vec3 N = normalize(mix(Normal + N0, Normal + N1, mixFactor) * waveRoughness);
- N = -N; //dds fix
+ if (normalmap_dds > 0)
+ N = -N; //dds fix
// specular
vec3 specular_color = vec3(gl_LightSource[0].diffuse)
diff --git a/Shaders/water_sine.frag b/Shaders/water_sine.frag
index abd1302b7..53fd5f6c2 100644
--- a/Shaders/water_sine.frag
+++ b/Shaders/water_sine.frag
@@ -37,6 +37,7 @@ uniform float WaveSharp ;
uniform float WaveAngle ;
uniform float WaveFactor ;
uniform float WaveDAngle ;
+uniform float normalmap_dds;
////fog "include" /////
uniform int fogType;
@@ -279,7 +280,9 @@ void main(void)
// mix water and noise, modulated by factor
vec4 vNorm = normalize(mix(nmap, nmap1, mixFactor) * waveRoughness);
vNorm.r += ddxSum;
- vNorm = -vNorm; //dds fix
+
+ if (normalmap_dds > 0)
+ vNorm = -vNorm; //dds fix
//load reflection
vec4 tmp = vec4(lightdir, 0.0);
@@ -328,7 +331,9 @@ void main(void)
N0.g += ddySum;
Normal = normalize(mix(Normal + N0, Normal + N1, mixFactor) * waveRoughness);
- Normal = -Normal; //dds fix
+
+ if (normalmap_dds > 0)
+ Normal = -Normal; //dds fix
}
diff --git a/Textures/Water/perlin-noise-nm.png b/Textures/Water/perlin-noise-nm.png
new file mode 100644
index 000000000..a9d3ff76a
Binary files /dev/null and b/Textures/Water/perlin-noise-nm.png differ
diff --git a/Textures/Water/water-reflection-grey.dds b/Textures/Water/water-reflection-grey.dds
new file mode 100644
index 000000000..927c5e4bf
Binary files /dev/null and b/Textures/Water/water-reflection-grey.dds differ
diff --git a/Textures/Water/water-reflection.dds b/Textures/Water/water-reflection.dds
new file mode 100644
index 000000000..74240f06c
Binary files /dev/null and b/Textures/Water/water-reflection.dds differ
diff --git a/Textures/Water/water-reflection.png b/Textures/Water/water-reflection.png
index d5d689cc6..0da36c3ea 100644
Binary files a/Textures/Water/water-reflection.png and b/Textures/Water/water-reflection.png differ
diff --git a/Textures/Water/water_sine_nmap.png b/Textures/Water/water_sine_nmap.png
new file mode 100644
index 000000000..fa30f6928
Binary files /dev/null and b/Textures/Water/water_sine_nmap.png differ
diff --git a/Textures/Water/waves-ver10-nm.png b/Textures/Water/waves-ver10-nm.png
new file mode 100644
index 000000000..65846ae5f
Binary files /dev/null and b/Textures/Water/waves-ver10-nm.png differ