Commit Graph

248 Commits

Author SHA1 Message Date
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
Ferenc Arn 3e09b9b335 Fix clearcoat without Schlick-GGX specular.
Fixes #11698.
2017-09-29 10:59:05 -04:00
Ferenc Arn 33c600fedc Ensure that Lambert is energy conserving.
Also remove the diffuse_color factor in Oren-Nayar (which was already taken care of below, oops).
2017-09-29 09:47:06 -04:00
Gilles Roudiere 2c5fa0947d Merge pull request #11672 from tagcup/fix_oren_nayar
Fix Oren-Nayar diffuse.
2017-09-29 13:47:38 +02:00
Ferenc Arn 8cb67b03a9 Fix Oren-Nayar diffuse. 2017-09-28 19:26:01 -04:00
Indah Sylvia 392a94686c Fixed typo: 'texure' to 'texture' 2017-09-29 04:40:01 +07:00
Juan Linietsky 4f39ce32b9 Fixes to light shaders, should work now.. 2017-09-27 21:45:47 -03:00
Ferenc Arn ae78413bb1 Avoid pow in Burley diffuse. 2017-09-26 22:15:38 -04:00
Juan Linietsky 81c9cfdc1b Added light affect parameter to baked AO 2017-09-23 23:10:34 -03:00
Juan Linietsky fbabef6da3 Fixes to rim parameter in shader 2017-09-23 08:27:48 -03:00
Juan Linietsky bf371dcb32 Added proximity and distance fade to SpatialMaterial 2017-09-21 15:20:28 -03:00
Juan Linietsky 1c5376ae59 Many fixes to visual script, changed virtuals override for a proper selector. 2017-09-12 07:58:54 -03:00
Juan Linietsky c023a132d0 Fixed orthogonal projection in all effects and post processes 2017-09-07 20:16:33 -03:00
Juan Linietsky eedb39091a Several fixes to directional shadows, closes #10926
Added option to change directional light range mode, between optimized and stable. For Orthogonal, you might need to use optimized.
2017-09-07 18:00:47 -03:00
Juan Linietsky dd854768da -Fix folow surface in subsurface scattering, closes #10696
-Fixed filter kernels of subsurface scattering so quality settings make more sense
2017-09-06 21:45:02 -03:00
Juan Linietsky ddadc782ba Fix frame selection in 2D particles, closes #10668 2017-09-06 08:31:11 -03:00
Juan Linietsky e192c1a7d3 Fix directional vertex shaded light which was using normal instead of light color, closes #10608 2017-09-05 17:31:09 -03:00
Juan Linietsky e611ff5f01 Fix opaque pre pass, closes #10472 2017-09-04 20:27:45 -03:00
Henrik Andersson e0a19a77e5 Don't compare float to int 2017-09-04 22:21:55 +02:00
Juan Linietsky 281fb4e4fb Added transmission shader parameter. 2017-09-03 10:30:37 -03:00
letheed 3a188015be add shadow_filter variant PCF7 2017-09-01 15:01:24 +02:00
Rémi Verschelde 82208c1e8b Merge pull request #10417 from bojidar-bg/x-fix-tilemap-transpose
Implement texture UV transpose in the gles3 renderer
2017-08-31 13:17:39 +02:00
Rémi Verschelde f1e3dec442 Merge pull request #10624 from letheed/master
Fix shadow filter pcf5 implemented as pcf7
2017-08-31 11:01:57 +02:00