Ferenc Arn
35ea827e83
Avoid some unnecessary calculations in scene.glsl.
2018-10-11 10:34:37 -04:00
Juan Linietsky
e0871b0f52
Baker fixes
2018-10-07 11:18:44 -03:00
Rémi Verschelde
45842c0ea9
Merge pull request #22627 from akien-mga/gles2-pixel-snap
...
GLES2: Implement pixel snap 2D option
2018-10-02 19:09:34 +02:00
Rémi Verschelde
ac2a4771d5
GLES2: Implement pixel snap 2D option
2018-10-02 15:53:24 +02:00
Rémi Verschelde
8c9c1d6882
Merge pull request #21436 from CptPotato/tonemap-fixes
...
tonemapping fixes
2018-10-02 15:42:15 +02:00
Rémi Verschelde
9c93a401b9
Merge pull request #22483 from tagcup/fresnel
...
Restore the Fresnel term in the BRDF.
2018-10-02 15:18:31 +02:00
Bastiaan Olij
a6df366b23
Moving lens distortion shader into drivers and adding GLES2 support
2018-10-02 17:14:43 +10:00
tagcup
9f4e9fcb81
Optimized GGX G function for GLES2.
...
Also changed the mapping of anisotropy to match the common definition.
2018-09-30 16:33:50 -04:00
Ferenc Arn
e94f6aacee
Restore the Fresnel term in the BRDF.
...
Was uncommented in 65fd37c
, mostly likely by mistake since its important.
Also made a few corrections of specular -> specular_blob_intensity (gles2).
2018-09-30 12:17:48 -04:00
Juan Linietsky
0de8309b2c
Many fixes to GLES2 renderer, fixed compilation issues in GLES3 shaders.
2018-09-29 13:49:34 -03:00
Rémi Verschelde
60312915dc
Fix build after 65fd37c1
, using Math_PI
...
Also fix style in shaders.
2018-09-23 18:26:57 +02:00
Juan Linietsky
65fd37c149
-Rewrote GLES2 lighting and shadows and optimized state changes, did many optimizations, added vertex lighting.
...
-Did some fixes to GLES3 too
2018-09-23 12:14:50 -03:00
JFonS
8f4f79c767
Fix lighting of rotated particles in 2D
...
Custom instance transform was not taken into account for normal map
calculation. Also renamed `extra_matrix2` to `extra_matrix_instance` for
more clarity.
2018-09-18 22:58:13 +02:00
luz.paz
08bde5b2de
Misc. typos
...
Found via `codespell -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"`
2018-09-12 21:39:17 -04:00
alex-poe
5cd00c3780
fix reinhard tonemapper, modified filmic tonemapper, added internal exposure bias
2018-08-27 10:08:38 +02:00
Rémi Verschelde
4226d56ca9
Style: Enable clang-format on GLSL shaders
...
As of clang-format 6.0.1, putting the `/* clang-format off */` hint
around our "invalid" `[vertex]` and `[shader]` statements isn't enough
to prevent a bogus indent of the next comments and first valid statement,
so we need to enclose that first valid statement in the unformatted chunk.
2018-08-27 07:34:14 +02:00
Juan Linietsky
62233423c7
Fix generation of env map, closes #18880
2018-08-24 13:31:31 -03:00
Rémi Verschelde
1b6d75a599
Style: Fix code formatting in GLES3 shaders
2018-08-24 13:42:18 +02:00
Nick Hahn
66eba18969
Fix handling of normals that approach 1
2018-08-12 12:45:43 +02:00
Hugo Locurcio
31c12f05c4
Tweak the default SpatialMaterial properties
...
Roughness is now set to 1 by default and albedo is now white,
even on meshes that do not have any materials defined.
This means there is no longer a visual difference between a
mesh with no materials defined and a mesh with a default
SpatialMaterial defined.
2018-08-07 17:04:30 +02:00
Juan Linietsky
4b549faaab
transmission was broken, fix was made. Also fixed treshold.
2018-07-22 14:04:11 -03:00
Juan Linietsky
ad88979841
Fix opaque pre pass not casting shadows
2018-07-22 13:18:27 -03:00
Alex Roman
2ce1118faa
Add disable ambient light flag to shaders and materials
2018-07-17 21:30:43 +02:00
alex-poe
37357c86cd
reformatted and restructured tonemap.glsl
2018-07-12 17:10:00 +02:00
alex-2b17x4
7fe75bb43b
added 'whitepoint' to ACES tonemapping
2018-07-11 15:59:14 +02:00
JFonS
4421a6661d
Move light 2D rotation to vertex shader
2018-07-05 11:12:04 +02:00
JFonS
ac18444c7e
Fix regression of 2D light height
2018-07-04 23:31:27 +02:00
Rémi Verschelde
dfc4ca9f6a
Merge pull request #19807 from JFonS/fix_light_vec_rotation
...
Fix rotation of 2D lights
2018-07-04 15:15:23 +02:00
Rémi Verschelde
92bfde531c
Merge pull request #19786 from JFonS/correct_normal_scaling
...
Add render mode to ensure correct normals when using non-uniform scaling
2018-07-04 15:09:59 +02:00
Juan Linietsky
7fc2367508
Added ability for SSAO to affect AO textures too
2018-07-02 16:50:52 -03:00
JFonS
c8cf71753c
Add render mode to ensure correct normals when using non-uniform scaling
2018-06-21 00:12:12 +02:00
JFonS
e9a3cf8feb
Fix rotation of 2D lights
2018-06-19 11:24:51 +02:00
Juan Linietsky
3051bb8a81
Merge pull request #17845 from JFonS/disable_spatial_shadows
...
Added flag on SpatialMaterial to disable shadows
2018-05-07 16:18:25 -03:00
Bastiaan Olij
6f7fefa489
Added option to viewport to keep linear color
2018-05-06 19:28:09 +10:00
Juan Linietsky
3bd0ca2a2d
Skeletal deform working
2018-05-04 11:54:21 -03:00
Juan Linietsky
b3e4bc562c
Skeleton for 2D WIP
2018-05-03 17:29:56 -03:00
Pieter-Jan Briers
25ba49fd88
Fixes canvas light shaders.
...
Fixes #16904
Restore more out functionality, fix built-ins.
Requested changes, I think?
2018-04-13 15:18:28 +02:00
JFonS
9c307d4b6c
Added flag on SpatialMaterial to disable shadows
2018-03-29 18:46:42 +02:00
Rémi Verschelde
9f479f096c
Fix typos in code and docs with codespell
...
Using v1.11.0 from https://github.com/lucasdemarchi/codespell
2018-01-18 22:01:42 +01:00
Leon Krause
cbc194dde6
Fix copy shader in GLSL ES 3.0
2018-01-15 23:46:45 +01:00
Rémi Verschelde
e1a0f2bd71
Merge pull request #15636 from mrcdk/fix_canvas_light
...
Set correct types on a couple variables inside light_compute in canvas.glsl
2018-01-13 01:42:52 +01:00
MrCdK
408f4cb146
Set correct types on a couple variables inside the canvas.glsl
2018-01-12 22:02:28 +01:00
AndreaCatania
252344f706
Fixed graphic artifact caused by anisotropic filter
2018-01-11 12:55:18 +01:00
Bastiaan Olij
ebc96195d8
Clamp blend to fix screen space reflections
2018-01-10 23:23:00 +11:00
volzhs
1c806abdaa
Fix shader compile error on Android
...
**ERROR**: EffectBlurShaderGLES3: Fragment Program Compilation Failed:
23:191: S0001: Type mismatch, cannot convert from 'int' to 'float'
At: drivers/gles3/shader_gles3.cpp:168:_display_error_with_code() - EffectBlurShaderGLES3: Fragment Program Compilation Failed:
2018-01-09 16:44:56 +09:00
Juan Linietsky
4c23f94af9
properly blend interior and exterior ambient in reflection probes, fixes #14695
2018-01-06 19:34:03 -03:00
Juan Linietsky
d72a32bc54
Use better initialization value for normalmap, fixes #14720
2018-01-06 18:09:11 -03:00
Juan Linietsky
003f2dab78
Fix dual paraboloid shadow maps, closes #14487
2018-01-05 12:13:52 -03:00
Juan Linietsky
0c86c1ad15
Fixed GIProbe blending, closes #15164
2018-01-05 10:34:31 -03:00
Juan Linietsky
2c226e4edf
Some fixes to improve precision and speed on Android. Fixes precision issues on Mali and PowerVR.
2018-01-02 18:45:00 -03:00
Juan Linietsky
b411029e31
Merge pull request #14796 from AlmightyScientist/issue-14552
...
Shader Language: Fix Vertex Lighting artifacts.
2017-12-26 12:46:48 -03:00
Juan Linietsky
2b31155baa
Fix sidedness check in material. Also remove SIDE built-in.
2017-12-26 11:09:52 -03:00
Juan Linietsky
7d0cabe9d3
Change skeleton processing to work on global coordinates, should help fix many import problems from Blender, GLTF2, etc.
2017-12-21 17:36:39 -03:00
Guilherme Silva
ffe827ab5a
Fix pixel snap not being used in 3.0
2017-12-19 15:18:07 -02:00
Enzo Nocera
6c25eabbc5
Shader Language: Fix Vertex Lighting artifacts.
...
- When using Direction Lighting along with Vertex Lighting,
putting a SpatialMaterial Roughness to 1.0 causes artifacts to appear.
(#14552 )
Fixes #14552 .
2017-12-18 09:15:28 +01:00
Juan Linietsky
f3ad14224e
-Add lightmapper
...
-Fixes to unwrapper (remove degenerates), makes Thekla not crash
-Added optional cancel button in EditorProgress
-Added function to force processing of events (needed for cancel button)
2017-12-14 09:01:27 -03:00
Rémi Verschelde
663f7e6a61
Fix usage of signed type in skeleton shader
...
The resulting primitive is drawn as GL_UNSIGNED_SHORT, so uvec4 should be used.
Fixes #12804 .
2017-12-10 13:58:36 +01:00
Rémi Verschelde
4d6f8f89ed
Merge pull request #13424 from MillionOstrich/particles-pause-fix
...
Stop particles resetting on pause.
2017-12-09 16:37:02 +01:00
Juan Linietsky
8c78ccb027
After a lot of trial and error, i think rim lighting implementation is now perfect, closes #13986
2017-12-08 11:09:03 -03:00
Juan Linietsky
8717afbfe1
Added small bit of bias depending on lenght for contact shadows, fixes #12726
2017-12-07 16:19:35 -03:00
Juan Linietsky
e8494f7ab7
Fixed rim lighting glitch, closes #13340 , closes #13986
2017-12-06 14:30:49 -03:00
Rémi Verschelde
9b9fcb1977
Disable invariant gl_Position to workaround Mesa bug 100316
...
Fixes #13450 , though it would be worth reverting if/when the Mesa bug is fixed.
2017-12-03 15:05:39 +01:00
Juan Linietsky
0243803117
Properly take into consideration that VERTEX must be written to in opaque pre pass, does some speed up to scenes using triplanar.
2017-12-01 08:45:36 -03:00
MillionOstrich
9ecde5524d
Stop particles resetting on pause.
2017-11-30 17:51:18 +00:00
Rémi Verschelde
4a1d1cbbb4
Merge pull request #13290 from Chaosus/projectionfix
...
Fix invalid transform when skip_vertex_transform used
2017-11-26 21:31:02 +01:00
Chaosus
284f8f6d91
Fixed invalid transform when skip_vertex_transform used
2017-11-26 22:02:40 +03:00
volzhs
b97e87480e
Fix shader compilation fail on Android
...
Error message from logcat
**ERROR**: SceneShaderGLES3: Fragment Program Compilation Failed:
50:471: S0032: no default precision defined for parameter 'probe'
At: drivers/gles3/shader_gles3.cpp:167:_display_error_with_code() - SceneShaderGLES3: Fragment Program Compilation Failed:
2017-11-27 01:15:39 +09:00
Juan Linietsky
9738ebcda0
-Fixed height fog (was broken)
...
-Make sure materials are named in OBJ importer, so they can be saved outside as resources.
2017-11-25 12:32:41 -03:00
Juan Linietsky
7eabbeb5af
remove half_texpixel in canvas since no longer used
2017-11-12 08:29:28 -03:00
Nathan Warden
6adaf8f47a
Fixed a bug where clamp_uv was clamping one pixel short, stretching the last pixels.
2017-11-11 07:28:48 -05:00
Ferenc Arn
6e68c86ba6
Add viewport to the other SceneData struct.
...
This was missed in #12288 .
2017-10-30 20:48:33 -04:00
Juan Linietsky
4785e66eea
Merge pull request #12288 from tagcup/expose_viewport_size
...
Expose VIEWPORT_SIZE in shader language.
2017-10-30 19:32:21 -03:00
Ferenc Arn
a0fc641f25
Expose VIEWPORT_SIZE in shader language.
...
Fixes #11710 .
2017-10-26 15:00:28 -04:00
Rémi Verschelde
abea816e54
Revert "Rename Schlick GGX to GGX."
2017-10-23 07:42:36 +02:00
Ferenc Arn
fd166d6fda
Partially undo #11807 .
...
Specular light at zero roughness needs some discussion. Until we do that, this fixes #12309 .
2017-10-22 16:18:54 -04:00
Juan Linietsky
b4f0f59d9f
Many fixes to SSAO, should be good now.
2017-10-22 13:52:48 -03:00
Rémi Verschelde
d60b774924
Merge pull request #12297 from tagcup/clearcoat_fix
...
Don't add clearcoat BRDF to specular light as-is.
2017-10-22 13:18:24 +02:00
Ferenc Arn
06fcbe0092
Don't add clearcoat BRDF to specular light as-is.
...
BRDF needs to be multiplied with N.L, the incoming light and attenuation. Also specular_blob_intensity should affect clearcoat.
2017-10-21 20:25:17 -04:00
Ferenc Arn
cb0bf1edea
Rename Schlick GGX to GGX.
...
Schlick's approximation and GGX are orthogonal concepts.
Furthermore, it's usage so far has been inconsistent: we don't even use it with anisotropic SchlickGGX, and Burley (Disney) diffuse does use it while its name doesn't indicate it.
The use of Schlick's approximation in Burley and GGX is an implementation detail and doesn't need to be reflected to the namig.
2017-10-21 19:35:54 -04:00
Ferenc Arn
6890245321
Corrections to #11807 .
...
Added missing metallic parameter, also fixed a missed a case where wrong roughness condition was used.
2017-10-21 13:40:14 -04:00
Juan Linietsky
a2a4f9a62a
Merge pull request #11807 from tagcup/roughness_metallic_limiting_cases
...
Fix the condition when specular light calculation is avoided (should …
2017-10-21 13:44:41 -03:00
Hiroshi Ogawa
59544c74fe
Fix render mode specular schlick ggx
2017-10-14 19:32:13 +09:00
Rémi Verschelde
552384e737
Merge pull request #12048 from hi-ogawa/fix-viewport-vflip
...
Fix viewport vflip
2017-10-12 13:38:29 +02:00
Hiroshi Ogawa
cb2e88ead6
Fix viewport vflip
2017-10-12 16:25:13 +09:00
Ferenc Arn
9324555998
Fix the condition when specular light calculation is avoided (should be roughness == 1).
...
Also avoid calculating diffuse light calculation when metallic == 1, and test against clearcoat's own parameter to check whether to do clearcoat.
2017-10-11 17:22:44 -04:00
Rémi Verschelde
bac5de0782
Merge pull request #11966 from BastiaanOlij/stereo_sky
...
Fix issues when rendering panoramic sky in stereoscopic
2017-10-11 22:30:44 +02:00
Rémi Verschelde
37bc372194
Merge pull request #11818 from tagcup/anisotropic_ggx
...
Fix anisotropic GGX D function, and introduce and use anistropic GGX …
2017-10-11 22:20:24 +02:00
Bastiaan Olij
179f483782
Fix issues when rendering panoramic sky in stereoscopic
2017-10-10 22:51:37 +11:00
Ferenc Arn
12596cb5bc
Fix anisotropic GGX D function, and introduce and use anistropic GGX G function.
...
Also fixed isotropic GGX G function with Schlick approximation, and added a commented out version without the approximation.
Added references.
2017-10-09 12:29:05 -04:00
Hiroshi Ogawa
8cf5f615f5
Fix type error in subsurface scattering shader code
2017-10-04 19:47:45 +09:00
Ferenc Arn
f48b162a6b
Various clean ups and cosmetic changes in scene.glsl.
...
Use self-documenting names for variables which are otherwise confusing. Also avoid recalculating certain terms.
2017-10-03 11:02:39 -04:00
Andreas Haas
1e9465096d
Merge pull request #11700 from tagcup/clearcoat_fix
...
Fix clearcoat without Schlick-GGX specular.
2017-10-02 22:51:51 +02:00
Juan Linietsky
66987d6878
missing PI division on vertex shader
2017-10-02 09:09:32 -03:00
Juan Linietsky
1b358783ce
Slight proposed fixes to PBR.
2017-10-01 21:51:11 -03:00
Juan Linietsky
c864b782c0
Using advise from Matias, left the 0-1 range for lights, divisiom by PI, and multiplied lights by PI internally.
2017-10-01 20:33:38 -03:00
Juan Linietsky
c9a925c4e0
Switched Burley/Lambert, and restored diffuse term to 0-1 range for compatibility.
2017-10-01 19:08:49 -03:00
Juan Linietsky
99a464ceb4
Merge pull request #11694 from tagcup/lambert_normalization
...
Ensure that Lambert is energy conserving.
2017-10-01 12:18:40 -03:00
Ferenc Arn
ece18153c6
Add missing N.L factor to Burley's contribution to radiance.
2017-10-01 10:20:57 -04:00
Ferenc Arn
dfaf071ae3
Fix environmental BRDF.
2017-09-30 20:28:30 -04:00
Juan Linietsky
d4e20555e8
Ability to set a custom FOV makes it possible to use sky on orthogonal view. Closes #9186
2017-09-29 18:56:52 -03:00