Juan Linietsky
2f32a75d2e
Skeletons can now choose between using local or world coords for processing, fixes #26468
2019-03-03 12:24:00 -03:00
Juan Linietsky
3f681b0681
Clean up blend shape support in GLES2 and GLES3.
2019-03-01 16:01:44 -03:00
Juan Linietsky
5efd693384
Massive improvement to GLES2 performance, rewrote most ShaderGLES2 class.
...
This fixes #26337
2019-02-27 23:49:34 -03:00
marxin
7f289304af
Fix #26100 by casting to integer.
2019-02-26 19:29:08 +01:00
Juan Linietsky
a32b26dfa2
Several fixes to make GLES2 on HTML5 work much better.
...
Changed math class error reporting to be a bit less paranoid.
2019-02-25 21:47:29 -03:00
Hein-Pieter van Braam
a83e77fded
Explicitly use floating point numbers in the our shaders
...
We need to be explicit about using floating point numbers in our shaders
for compatibility with mobile GLES drivers.
2019-02-24 23:35:10 +00:00
Juan Linietsky
16e67388a2
Properly update materials when adding surface, fixes #23790
2019-02-22 16:27:00 -03:00
Juan Linietsky
aef5b36bfa
Ensure that no depth test is used (specially in prepass) for objects that dont test or draw depth, fixes #25201
2019-02-22 14:48:10 -03:00
Juan Linietsky
95e34967d8
Fix precision issue with skeletons, closes #26057 , closes #26062
2019-02-22 13:27:19 -03:00
Rémi Verschelde
a01dca79e2
Merge pull request #26125 from JFonS/revert_light_vec_shadows
...
Revert back to ignoring LIGHT_VEC for 2D shadows
2019-02-21 18:49:14 +01:00
Juan Linietsky
8fd2eb6234
Many fixes regarding depth buffer clearing, closes #25994 , closes #25975
2019-02-21 12:31:41 -03:00
JFonS
32e7641667
Revert back to ignoring LIGHT_VEC for 2D shadows
2019-02-21 12:16:10 +01:00
marxin
8d51618949
Add -Wshadow=local to warnings and fix reported issues.
...
Fixes #25316 .
2019-02-20 19:44:12 +01:00
Juan Linietsky
be9b938398
Fix skeleton not being updated in shader, closes #25911
2019-02-16 19:39:35 -03:00
Juan Linietsky
d6a88bbc30
Remove all references to stencil, fixes problems on iOS.
2019-02-13 07:58:52 -03:00
Juan Linietsky
4f72ff4f1c
On mobile, check for float and half float frameuffers supported, fixes #25324 , fixes #25325 .
2019-02-13 07:14:36 -03:00
Rémi Verschelde
5fc86026ca
Fix typos with codespell
...
Using codespell 1.14.0.
Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
doubleclick
lod
nd
numer
que
te
unselect
EOF
$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2019-02-13 09:23:29 +01:00
Juan Linietsky
4af8009b9d
Fix fog in GLES2 by using epic hack, closes #25410
2019-02-12 14:35:16 -03:00
Rémi Verschelde
13c50e8aa5
Merge pull request #25481 from hpvb/fix-ubsan-asan-reports
...
Fix many asan and ubsan reported issues
2019-02-12 12:21:01 +01:00
Rémi Verschelde
279bfb3503
Merge pull request #25557 from kaadmy/master
...
Allow usage of depth texture when contact shadows are disabled
2019-02-12 11:38:44 +01:00
JFonS
076a342a4e
Make LIGHT_VEC affect 2D shadows again
2019-02-10 21:14:32 +01:00
KaadmY
d116705538
Allow usage of depth texture when contact shadows are disabled
2019-02-01 12:46:43 -08:00
Hein-Pieter van Braam
d308eb091a
Fix many asan and ubsan reported issues
...
This allows most demos to run without any ubsan or asan errors. There
are still some things in thirdpart/ and some things in AudioServer that
needs a look but this fixes a lot of issues. This should help debug less
obvious issues, hopefully.
This fixes #25217 and fixes #25218
2019-01-30 06:43:56 +01:00
Rémi Verschelde
b77b536582
Cleanup and identify ShaderCompilerGLES[23] differences
2019-01-28 19:28:00 +01:00
Konrad Nowakowski
a0bdd9605a
Fix polygon drawing on WebGL1
2019-01-27 23:09:18 +00:00
Juan Linietsky
0c60d4c682
Properly get proxy texture size for canvas light, fixes #17067
2019-01-27 16:57:05 -03:00
Juan Linietsky
953cd03ea6
Use transparent framebuffer only when set to transparent, closes #21827
2019-01-27 15:47:17 -03:00
Juan Linietsky
18c3ed245a
Further fixes to avoid memory corruption, closes #25336
2019-01-26 10:47:04 -03:00
Juan Linietsky
973b68f396
Properly dispose of custom shaders, closes #19300
2019-01-25 19:28:27 -03:00
Juan Linietsky
6d4d55cd42
Do not use depth prepass if effects are disabled, fixes #25267
2019-01-25 15:58:07 -03:00
Bastiaan Olij
fe72e69c79
Revert "Fix GLES3 error 502 on iOS"
2019-01-26 01:51:41 +11:00
Juan Linietsky
677d4400de
Ensure contact shadows are only used when lights use them.
2019-01-25 11:41:25 -03:00
Bastiaan Olij
da7f9e1ed1
Fix GLES3 error 502 on iOS
2019-01-26 00:52:54 +11:00
Juan Linietsky
42764ed252
Revert "Fix errors on iOS"
2019-01-24 17:15:52 -03:00
Rémi Verschelde
148e62102b
Merge pull request #25257 from karroffel/tex3d-get-data-fix
...
implemented texture_get_data() for TextureLayered
2019-01-24 16:19:21 +01:00
thomas.herzog
dddfe9a2df
implemented texture_get_data() for TextureLayered
2019-01-23 16:12:29 +01:00
Bastiaan Olij
cab45f2f26
Fix errors on iOS
2019-01-23 13:38:19 +11:00
Juan Linietsky
46af4b0a4b
Changes to GLES2 renderer to not use cube shadows if not available, fixes #25132
2019-01-22 10:05:23 -03:00
Rémi Verschelde
d4ab9d1d6e
Merge pull request #25115 from marxin/fix-19633-proper
...
Fix #19633 by proper store to &ubo_data.shadow_matrix[1234].
2019-01-21 17:40:56 +01:00
Rémi Verschelde
769341e180
Cleanup after @reduz :)
...
Fixes #25172 .
2019-01-21 11:12:55 +01:00
marxin
d9eb6a5b20
Fix #19633 by proper store to &ubo_data.shadow_matrix[1234].
...
It is not valid in C++ to store into shadow_matrix1[16] with shadow_matrix1[16 * j]
(for j > 0). Even though there's a valid space in a struct after shadow_matrix1.
Knowing that GCC performs aggressive optimizations that eventually lead
to a wrong code. Code has been changed into union where one can either
use shadow_matrix[4 * 16], or individual shadow_matrix1, shadow_matrix2, etc. GCC pragma
is not needed any longer.
2019-01-19 10:25:01 +01:00
Rémi Verschelde
50c8019dcd
Fix excluding GCC pragmas from Clang
...
Why the heck does Clang define __GNUC__...
2019-01-19 08:17:32 +01:00
Rémi Verschelde
a9fcd574f4
Only define GCC pragmas for GCC
2019-01-19 08:00:17 +01:00
Juan Linietsky
e3ef52a270
Merge pull request #25101 from hpvb/fix-19633
...
Work around a GCC optimizer bug at -O3
2019-01-18 12:32:30 -03:00
Hein-Pieter van Braam
6793908a3f
Work around a GCC optimizer bug at -O3
...
This bug has been reported upstream, once it gets fixed we'll add some
version guards to only disable this for specific GCC versions.
This fixes #19633
2019-01-18 16:31:37 +01:00
Rémi Verschelde
6384dd8f2c
Merge pull request #25070 from RedMser/shader_errors_linefix
...
Fix shader compile error line numbers starting at 0
2019-01-18 11:15:44 +01:00
Emanuele Fornara
e1be09d8fd
Fix enum scope
2019-01-17 20:29:01 +01:00
RedMser
a285a1cfdf
Fix shader compile error line numbers starting at 0.
2019-01-17 19:25:08 +01:00
Juan Linietsky
7478f468b2
Fixes to 2D lights, closes #24750
2019-01-17 10:40:36 -03:00
Juan Linietsky
ca03d7e0d7
Ensure canvas copy texscreen will not crash if render target is configured without copy buffers. Closes #24749 .
2019-01-15 15:14:43 -03:00
Juan Linietsky
9ed34d4423
Use GLES2 approach to vertex shading in GLES3, which has been more developed. Fixes #21852
2019-01-14 20:41:12 -03:00
Daniel Rakos
1dd98baaa6
Mute errors on surface->index_array_len == 0 in the GLES3 renderer
...
This error is generated whenever rendering collision debug meshes.
There's no reason why this should be treated as an error as index-less
meshes are supported and used across the engine.
2019-01-13 11:46:40 +01:00
Rémi Verschelde
d8f0087dc8
Merge pull request #24568 from Shinryuuji/fix-wrong-texture-array-target
...
Fix wrong default target for sampler2DArray
2019-01-04 16:14:29 +01:00
Rémi Verschelde
1504c96112
Merge pull request #24539 from BastiaanOlij/override_gl_position
...
Override GL_position
2019-01-04 15:40:05 +01:00
Rémi Verschelde
99c4faf837
Merge pull request #24575 from nekomatata/android-curve-texture
...
Fixed CurveTexture with GLES3 on Android
2019-01-04 15:31:08 +01:00
Rémi Verschelde
b16c309f82
Update copyright statements to 2019
...
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
PouleyKetchoupp
a1160ff8e7
Fixed CurveTexture with GLES3 on Android
2018-12-30 19:49:55 +01:00
Bastiaan Olij
9f266cf7e5
Override GL_position
2018-12-29 23:56:50 +11:00
Bastiaan Olij
9055386de9
Fix texture type not being initialised
2018-12-29 23:44:28 +11:00
Juan Linietsky
a366d45856
-Implented 2D Mesh support for GLES2
...
-Implemented 2D Skeleton deform for GLES2
-Implement Multimesh support for GLES2, closes #20524 , closes #21839
2018-12-27 20:41:04 -03:00
Shinryuuji
7bfddbec3a
Fix wrong default target for sampler2DArray
2018-12-23 15:25:46 +01:00
PouleyKetchoupp
ab7759dbd1
Fixed fragment shader compilation error on android (S0001: Cannot compare 'float' with 'int')
2018-12-21 20:31:10 +01:00
Bastiaan Olij
f3dd3c0830
Adding option to re-orient our sky
2018-12-15 19:41:34 +11:00
QbieShay
7c55228f5c
fixed uv missing in vertex shader of canvas.
2018-12-13 07:48:30 +01:00
Rémi Verschelde
c8a5400654
Merge pull request #24241 from Rubonnek/move-to-initializer-list
...
Moved member variables to initializer list
2018-12-12 09:25:34 +01:00
Wilson E. Alvarez
08f22f1cf0
Moved member variables to initializer list
2018-12-11 18:33:01 -05:00
Rémi Verschelde
37e198c320
Merge pull request #23483 from clayjohn/fragment_camera_view
...
Make VIEW vector available in fragment shader
2018-12-11 20:44:41 +01:00
clayjohn
2042d6214e
make VIEW vector available in fragment
2018-12-11 09:44:38 -08:00
Rémi Verschelde
022ae53191
Merge pull request #23126 from QbieShay/nine_uv
...
UV for ninepatch now maps to the proper ninepatch mapped UV.
2018-12-11 16:05:20 +01:00
Bastiaan Olij
0b4b477674
Remapped ACTIVE to shader_active, now works
2018-12-01 21:10:04 +11:00
Rémi Verschelde
b47d4e1ba5
Merge pull request #24017 from eska014/rt-squish
...
Enable squish decompression in runtime builds
2018-11-28 12:40:43 +01:00
Leon Krause
93bed8cf57
Check for WebGL RGTC extension
2018-11-28 11:12:26 +01:00
Rémi Verschelde
dd06f6ee70
Fix style issues and signature mismatch
2018-11-28 10:21:07 +01:00
Juan Linietsky
af8d941c55
Added luminance capping to avoid glitches on small dots. closes #17996
2018-11-28 01:22:20 -03:00
Juan Linietsky
e6bc152de8
NORMALMAP was not working (no normal being used detected), fixes #9263
2018-11-27 18:05:20 -03:00
Rémi Verschelde
c5ebf38490
Prevent GLAPIENTRY redefine in rasterizer, now included in glad.h
...
We otherwise had conflicting defines since 1a41daf3
.
2018-11-23 21:19:59 +01:00
Juan Linietsky
a397d3a46a
Avoid voxel cone trace from going full 180 degrees, fixes #20716
2018-11-23 08:42:35 -03:00
QbieShay
09faac9e01
Added PROCESSED_UV for accessing ninepatch processed uv in the shader
2018-11-22 19:06:43 +01:00
Juan Linietsky
631cf676c3
Removed noperspective (not in GLSL ES 3.0), do not write smooth if not specified. Fixes #20435
2018-11-21 23:07:09 -03:00
Juan Linietsky
f150c5b4a0
Clean up code to make intention clear, fixes #20361
2018-11-21 22:32:05 -03:00
Juan Linietsky
78624ad22c
Ensure double sided normalmaps work, fixes #23760
2018-11-21 08:48:33 -03:00
Rémi Verschelde
296834955f
Remove debug print in RasterizerStorageGLES3
2018-11-20 07:58:26 +01:00
Juan Linietsky
78eae047c6
Fixed how floats are printed to the GLSL shader, closes #19803
2018-11-19 23:41:18 -03:00
Juan Linietsky
a78b42c058
Don't post process on tiny render targets, fixes #19628
2018-11-19 22:05:55 -03:00
Juan Linietsky
d5ad1ca1ae
Fix crash on canvas with BG_MODE_KEEP, closes #19590
2018-11-19 21:41:18 -03:00
Juan Linietsky
d304228003
Do not draw particles if they are not processing at all, fixes #19507
2018-11-19 20:34:29 -03:00
Juan Linietsky
634aa4fc24
Ensure bone AABBs are properly transformed to affect mesh AABB, fixes #19281
2018-11-19 10:43:29 -03:00
Juan Linietsky
455f297671
Properly reset canvas state after drawing, fixes #18860
2018-11-18 16:34:20 -03:00
Rémi Verschelde
60ee61c7ff
Merge pull request #23742 from JFonS/fix_23698
...
Use hint_color when getting shader default params
2018-11-18 12:05:02 +01:00
Wilson E. Alvarez
f8e0051420
Removed unnecessary assignments
2018-11-17 20:40:55 -05:00
Juan Linietsky
8aa38c9ad8
Fix shader bug likely introduced recently.
2018-11-16 14:30:34 -03:00
Juan Linietsky
e77afb8507
Ensure environment radiance is not used on refprobe interiors, fixes #17868
2018-11-16 11:46:21 -03:00
Juan Linietsky
bb9127a78b
Removed unnecesary normal multiplication (only culling was really needed), fixes #17776
2018-11-16 10:52:31 -03:00
Juan Linietsky
40e4f5bef4
Proxies were being mishandled, leading to the now fixed #17651
2018-11-16 09:33:33 -03:00
JFonS
fb92c7b0fa
Use hint_color when getting shader default params
2018-11-16 12:20:23 +01:00
Juan Linietsky
4d88721e62
Do not error on empty shader, just treat it as invalid by default. Fixes #15998 .
2018-11-14 10:58:16 -03:00
Juan Linietsky
55f5f4757e
Merge pull request #23248 from dlasalle/fog
...
Add parameters for fog end depth and use alpha as density.
2018-11-14 10:24:55 -03:00
Juan Linietsky
43b9ed64c8
Merge pull request #23702 from JFonS/fix_2d_particles_scale
...
Make 2D particles work OOTB (again)
2018-11-14 10:16:50 -03:00
Juan Linietsky
984063cf0b
Cleaned up and fixed the base_changed function in rasterizers, also fixes #15617
2018-11-14 09:32:39 -03:00
Dominique LaSalle
6eae6247e4
Add parameter for fog max depth and use alpha as density.
2018-11-13 17:19:11 -08:00