santouits
3c1cd2873b
WebGL1 some changes
...
glRenderBufferStorage doesn't accept the _DEPTH_COMPONENT24_OES so I changed it to GL_DEPTH_COMPONENT16
https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/renderbufferStorage
https://www.khronos.org/registry/webgl/extensions/rejected/OES_depth24/
Enabled ext_shader_texture_lod extension. I guess it does the same like the GL_ARB_shader_texture_lod extension, but in WebGL1
https://www.khronos.org/registry/webgl/extensions/EXT_shader_texture_lod/
And last WebGL1 doesn't allow indexes not constant, so I changed it into a loop reading this:
https://stackoverflow.com/questions/19529690/index-expression-must-be-constant-webgl-glsl-error
2019-01-22 13:40:28 +02:00
Rémi Verschelde
3548b6b6b2
Merge pull request #25196 from santouits/webgl-backslashes
...
webgl1 in firefox doesn't like backslashes in #define directive
2019-01-21 23:02:32 +01:00
Juan Linietsky
6fa632b821
Add function to obtain filesystem type from DirAccess.
...
Change EditorFileSystem to not use directory modification times on FAT32, fixes #20946
2019-01-21 18:06:14 -03:00
santouits
e7e9a7cc6c
webgl1 doesn't like backslashes in #define
...
According to
https://www.khronos.org/registry/OpenGL/specs/es/2.0/GLSL_ES_Specification_1.00.pdf
, backslashes aren't necessary supported as line continuation characters
in preprocessor directives
2019-01-21 21:41:39 +02: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
ad633b6c9c
Merge pull request #25117 from dragmz/patch-6
...
Replace CreateThread with QueueUserWorkItem
2019-01-21 16:18:58 +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
Marcin Zawiejski
e65bce3083
Replace CreateThread with QueueUserWorkItem
...
Fixes #24869 stuttering on Windows by reusing long running threadpool threads instead of creating a new thread on each call to Thread::start.
2019-01-19 00:31:10 +01:00
Juan Linietsky
682fdf0f74
Use 16 bit indices on phones that dont support 32, fixes #19797
2019-01-18 17:30:12 -03: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
ffcb5cd18c
Ensure texture hints are obeyed, fixes #24875
2019-01-16 00:37:00 -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
Rémi Verschelde
72f501de13
GLES2: Fix typo in project setting
...
It used a different name than the equivalent GLES3 parameter.
2019-01-15 13:26:54 +01: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
Juan Linietsky
ee3eadf345
Implement black margins in GLES2, which was missing, fixes #24556
2019-01-14 19:00:36 -03:00
Rémi Verschelde
02ffc59270
GLES2: Make Nvidia flicker workaround opt-in
...
It has a big impact on 2D and text rendering performance (cf. #24466 )
so the solution seems worse than the bug it aims to work around.
It's now opt-in via "rendering/quality/2d/gles2_use_nvidia_rect_flicker_workaround"
for those who need it and have a simple enough game for the performance
drop not to be an issue.
Fixes #24466 .
2019-01-14 19:02:07 +01:00
Juan Linietsky
b3dc02b5df
Was not properly re-setting light uniforms, fixes #24976
2019-01-14 12:04:26 -03:00
Juan Linietsky
6d8083ea65
Do not use the workaround for desktop nvidia on mobile and html5.
2019-01-14 11:24:00 -03:00
Rémi Verschelde
1185f4c4ac
GLES2: Clarify why we exclude debug code on iOS
...
Supersedes and closes #24873 .
2019-01-11 20:04:13 +01:00
Rémi Verschelde
e5f1d19352
Consistency in resource format saver/loader de-registration
...
Some used 'is_valid()' checks, others not. Validity is already checked in 'unref()',
and 'remove_resource_format_*()' has an ERR_FAIL condition on 'is_null()' already
(which shouldn't happen since we're only unregistering things that we previously
registered.
Also add missing GDCLASS statement in ResourceFormatLoaderVideoStreamGDNative,
missed in #20552 which was last amended before #19501 was merged.
2019-01-10 12:45:57 +01:00
Rémi Verschelde
e4b02513fe
Merge pull request #24301 from marcelofg55/default_device_pulseaudio
...
PulseAudio driver will now change the device if the default system device changes
2019-01-07 20:10:50 +01:00
Juan Linietsky
a3a537c2cf
Fix background color rendering on GLES2 (linear should not be used)
2019-01-07 10:52:24 -03:00
Daeil Kim
ecf520b70e
Change blend equation for canvasitems
2019-01-06 00:57:52 +09: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
Marcin Zawiejski
4e73274837
Fix negative size rectangle drawing
...
Fixes rectangle being drawn as it was a non-negative size in case it actually is. This can be observed e.g. when drawing a negative size selection rectangle (i.e. press mouse button and move cursor up and left).
2019-01-02 14:47:28 +01:00
Rémi Verschelde
c7c87a0624
Merge pull request #24687 from DavidSichma/draw-rect-rot
...
fix draw_rect rotation
2019-01-01 19:01:18 +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
Rémi Verschelde
d1f3b622f0
Fix missing/malformed license headers
2019-01-01 12:46:36 +01:00
David Sichma
9ba6849cf4
fix draw_rect rotation
2018-12-31 20:56:10 +01:00
PouleyKetchoupp
a1160ff8e7
Fixed CurveTexture with GLES3 on Android
2018-12-30 19:49:55 +01:00
Rémi Verschelde
6a07d7f83f
Merge pull request #24661 from humblers/fix-unshaded-gles2
...
Fix unshaded light mode on GLES2
2018-12-30 13:48:01 +01:00
Rémi Verschelde
6c67ca3f5b
Merge pull request #24653 from avril-gh/fixes-syntax-error-in-scene-glsl
...
fixes glsl syntax error
2018-12-30 13:07:12 +01:00
Daeil Kim
8c99b6fb2f
Change unshaded logic to match with GLES3
2018-12-30 02:02:37 +09:00
Avril
971c05dc5e
fixes glsl syntax error
2018-12-29 15:37:50 +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
Rémi Verschelde
57416bfbce
GLES2: Define 'lowp' for OpenGL 2.1
...
Precision qualifiers are only used on OpenGL ES 2.0 and 3.0,
and while OpenGL 3.3 defines them for compatibility (but without
practical effect), they're missing from OpenGL 2.1, so we define
them to prevent compilation errors.
Fixes #24521 .
2018-12-21 15:14:58 +01:00