PouleyKetchoupp
1591677eb8
Fixed antialiasing option for Polygon2D
...
Some cases were not handled properly for Polygon2D after making changes in common code to fix Line2D antialiasing. Added an option for drawing polygons to differentiate the two use cases.
Fixes #34568
2020-01-01 11:40:14 +01:00
Rémi Verschelde
a7f49ac9a1
Update copyright statements to 2020
...
Happy new year to the wonderful Godot community!
We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.
Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00
Rémi Verschelde
162bebcafa
Merge pull request #34647 from madmiraal/pulse-audio-null-pointer
...
Check for null pointer in PulseAudio server info callback.
2019-12-30 17:41:28 +01:00
Rémi Verschelde
a96c95f1ef
Merge pull request #34685 from winston-yallow/fix_omnilight_attenuation
...
Use correct omni light attenuation
2019-12-30 16:11:58 +01:00
Winston
c9fe11dec1
Use correct omni light attenuation
...
fixes godotengine/godot#34683
2019-12-29 17:22:34 +01:00
Bruno Lourenço
16429a4289
Reset GLES3 MultiMesh buffer id when reallocating.
2019-12-28 18:38:25 +00:00
Marcel Admiraal
32eccb87e0
Check for null pointer in PulseAudio server info callback.
2019-12-28 08:38:29 +01:00
Bruno Lourenço
65195f505f
Fix canvas GLES3 skeleton transform uniform updating.
2019-12-23 18:40:48 +00:00
Bruno Lourenço
f26c9d650b
Fix 2D lighting when using skeleton.
2019-12-23 00:00:18 +00:00
Rémi Verschelde
e21872f4b9
Merge pull request #34527 from MadEqua/fix-gles3-light-cutoff
...
Fix GLES3 light cutoff.
2019-12-21 23:40:15 +01:00
Bruno Lourenço
d47374385c
Fix GLES3 light cutoff.
2019-12-21 20:52:54 +00:00
Bruno Lourenço
d7f9d71be2
Fix contact shadow when light is outside of viewport.
2019-12-21 16:55:41 +00:00
clayjohn
28543667fd
Always use 16 bit renderbuffer depth on WebGL
2019-12-19 20:41:32 -08:00
Fabio Alessandrelli
feb54d0ed7
Make NetSockets quiter.
...
Use print_verbose instead of ERR_* for network errors.
2019-12-17 16:08:24 +01:00
Rémi Verschelde
c39aa2b200
Merge pull request #34367 from clayjohn/GLES2-shadow_color
...
Fix shadow color in GLES2 by making sRGB
2019-12-16 08:05:17 +01:00
clayjohn
2a694a44cb
fix shadow color in GLES2 by making sRGB
2019-12-15 10:27:31 -08:00
Rémi Verschelde
d3a07d3550
Merge pull request #33910 from Faless/net/android_mlock
...
Acquire MulticastLock on Android when using broadcast/multicast
2019-12-14 21:53:08 +01:00
Fabio Alessandrelli
9269d6be32
UDP sockets broadcast is now disabled by default.
...
Add method `set_broadcast_enabled` to allow enabling broadcast via
GDScript.
2019-12-14 17:48:16 +01:00
volzhs
904b7700fa
Remove convex_decomp in drivers/SCsub
...
follow-up f111d1aaed
2019-12-14 21:41:21 +09:00
Rémi Verschelde
f111d1aaed
Drop b2d_convexdecomp. no longer necessary.
...
We now use `thirdparty/misc/triangulator.h` for all physics-related
(collision, navigation) triangulation needs.
Follow-up to #34293 .
2019-12-13 23:29:52 +01:00
Rémi Verschelde
371de5132c
Merge pull request #34251 from bojidar-bg/32993-lightoccluder-flip
...
Flip cull mode when rendering flipped Light2D and LightOccluder2D
2019-12-12 07:33:19 +01:00
Rémi Verschelde
f676d7509e
Merge pull request #34262 from clayjohn/default_point_size
...
Add a default POINT_SIZE
2019-12-12 06:45:31 +01:00
Bojidar Marinov
eec7702711
Flip cull mode when rendering flipped Light2D and LightOccluder2D
...
Fixes #32993
2019-12-11 23:28:35 +02:00
Rémi Verschelde
c320a82213
SCons: Add 'split_libmodules' option to workaround linker issue
...
The new 'split_libmodules=yes' option is useful to work around linker
command line size limitations when linking a huge number of objects.
We're currently over 64k chars when linking libmodules.a on Windows
with MinGW, which triggers issues as seen in #30892 .
Even on Linux, we can also reach linker command line size limitations
by adding more custom modules.
We force this option to True for MinGW on Windows, which fixes #30892 .
Additional changes to lib splitting:
- Fix linking of the split module libs with interdependent symbols,
hacking our way into LINKCOM and SHLINKCOM to set the `--start-group`
and `--end-group` flags.
- Fix Python 3 compatibility in `methods.split_lib()`.
- Drop seemingly obsolete condition for 'msys' on 'posix'.
- Drop the unnecessary 'split_drivers' as the drivers lib is no longer
too big since we moved all thirdparty builds to modules.
Co-authored-by: Hein-Pieter van Braam-Stewart <hp@tmm.cx>
2019-12-11 15:40:28 +01:00
clayjohn
676f647c74
Add a default POINT_SIZE
2019-12-10 23:08:20 -08:00
Rémi Verschelde
435cced7d8
Merge pull request #34238 from clayjohn/GLES2-use-renderbuffer-post-process
...
Use renderbuffer depth for post-process buffers when appropriate
2019-12-10 17:16:40 +01:00
Fabio Alessandrelli
ab1bfb9007
NetSocket set_broadcast_enabled returns Error enum
2019-12-10 12:11:52 +01:00
clayjohn
fd31cebcbe
Use renderbuffer depth for post-process buffers when appropriate
2019-12-09 22:19:11 -08:00
clayjohn
e8d652f160
Force 32 bit depth buffer for WebGL
2019-12-09 22:14:12 -08:00
Rémi Verschelde
cd07a34598
GLES3: Properly unbind buffers after draw commands
...
Patch provided by @oeleo1.
Fixes #34120 .
2019-12-09 09:25:20 +01:00
Rémi Verschelde
fbfd56c247
GLES2: Fix uninitialized members in ShaderGLES2::Version
...
Fixes #34109 .
2019-12-05 09:15:31 +01:00
Rémi Verschelde
745a8915fc
Properly orphan polygon index buffer after binding (take 2)
...
Follow-up to #34088 , patch by @oeleo1 from
https://github.com/godotengine/godot/issues/34065#issuecomment-561530896
2019-12-04 12:16:50 +01:00
clayjohn
b2dfbd77ec
properly orphan polygon index buffer after binding
2019-12-03 07:54:25 -08:00
Rémi Verschelde
10bae7c05b
Merge pull request #33857 from nekomatata/polygon-2d-antialiasing
...
Fixed antialiased option for Polygon2D
2019-12-03 07:51:16 +01:00
Rémi Verschelde
65e6efaa3b
Merge pull request #33836 from clayjohn/blinn-fix
...
Fix Specular Blinn function
2019-12-03 07:50:37 +01:00
Rémi Verschelde
d53e3d3acc
Merge pull request #33985 from nekomatata/shadow_viewport
...
Disable shadow map sampling when shadows are not used in GLES3
2019-12-02 09:28:42 +01:00
PouleyKetchoupp
f5e81b894a
Removed duplicated conditional in GLES2
2019-11-29 06:32:55 +01:00
PouleyKetchoupp
299b85c46f
Disable shadow map sampling when shadows are not used in GLES3
...
Fixes #20742
2019-11-29 06:21:17 +01:00
PouleyKetchoupp
e6ebc43d72
Fixed antialiased option for Polygon2D / Line2D
...
Polygon2D:
The property wasn't used anymore after switching from canvas_item_add_polygon() to canvas_item_add_triangle_array() for drawing.
Line2D:
Added the same property as for Polygon2D & fixed smooth line drawing to use indices correctly.
Fixes #26823
2019-11-28 22:57:27 +01:00
Rémi Verschelde
da880520ca
Merge pull request #33963 from clayjohn/GLES3-sky-mipmaps-on-mobile
...
Fix radiance map generation on mobile
2019-11-28 09:06:38 +01:00
clayjohn
192aacd5d7
Fix radiance map generation on mobile
2019-11-27 22:18:21 -08:00
George Marques
c51fe7f7cd
Use ANGLE multisample extensions for UWP
2019-11-26 13:55:19 -03:00
clayjohn
5ab3b61520
Restructure depth_internalformat code to work on mobile
...
This changes the code path so that `glRenderBufferStorage*` always uses
values appropriate for renderbuffers and `glTexImage2D` never uses an
internalformat meant for buffers.
Fixes #33825 .
2019-11-23 18:08:19 -08:00
Rémi Verschelde
bb1d75f55e
glTexImage2D: Fix confusion between format and internal format
...
The `format` parameter is similar to `internalFormat` but takes different
values, and especially only `GL_DEPTH_COMPONENT` for depth, without size
specifier.
Cf. https://www.khronos.org/registry/OpenGL-Refpages/es3.0/html/glTexImage2D.xhtml
Fixes a regression from #33278 and another occurrence.
2019-11-23 19:38:31 +01:00
clayjohn
334d41d7cc
Fix Specular Blinn function
2019-11-22 22:03:26 -08:00
clayjohn
203fb1b348
Fix GL error by properly using float uniform
2019-11-21 07:44:09 -08:00
clayjohn
4d6737ec73
Fix bugs introduced by IBL fixes
2019-11-20 22:54:44 -08:00
Rémi Verschelde
083d088de3
Merge pull request #33583 from qarmin/fix_overflows_unitialized
...
Fix some overflows and unitialized variables
2019-11-20 21:31:12 +01:00
Rafał Mikrut
99d8626f4a
Fix some overflows and unitialized variables
2019-11-20 16:22:16 +01:00
Rémi Verschelde
3be6e76f22
Merge pull request #33668 from clayjohn/Fix_environment_mapping_issues
...
Fix issues with environment mapping
2019-11-20 08:45:53 +01:00
clayjohn
cd40154890
Fix issues with environment mapping
2019-11-19 22:30:48 -08:00
Rémi Verschelde
7a0228fbba
Merge pull request #33720 from BastiaanOlij/fix_gles2_rgb8
...
Need to use GL_RGB8 and GL_RGBA8 as the internal format for GLES2
2019-11-19 11:12:03 +01:00
Bastiaan Olij
15cd81dc69
Need to use GL_RGB8 and GL_RGBA8 as the internal format for GLES2
2019-11-19 20:57:18 +11:00
Rémi Verschelde
6536105af2
Merge pull request #33527 from clayjohn/GLES2-bufferdata_optimization
...
Improve glBufferSubData usage where safe
2019-11-19 09:36:30 +01:00
clayjohn
14b06fc207
Fix negative light flickering
2019-11-17 22:18:54 -08:00
clayjohn
1253a33423
Improve glBufferSubData usage where safe
2019-11-11 16:38:41 -08:00
Rémi Verschelde
6b1628f9fc
Merge pull request #33517 from madmiraal/fix-_MSG-macros
...
Send *_MSG macros' explanations directly to the _err_print_error().
2019-11-11 13:27:51 +01:00
Rémi Verschelde
4b8feff594
Merge pull request #33518 from BastiaanOlij/msaa_ext_modes
...
Add MSAA mode for Quest
2019-11-11 11:46:50 +01:00
Bastiaan Olij
4e2343160c
Add special external MSAA modes for GLES2 Rift S/Quest and OpenXR optimisation
2019-11-11 21:02:06 +11:00
Marcel Admiraal
d18b2e599d
Remove all uses of ERR_EXPLAIN macros.
2019-11-11 10:24:04 +01:00
PouleyKetchoupp
90b6062ebb
Handle missing file properly when checking for case mismatch
...
This was causing false alarms to be randomly reported on Windows for files that didn't exist.
2019-11-10 09:51:09 +01:00
Bastiaan Olij
add5eaca43
Make MSAA work with external texture
2019-11-08 23:27:48 +11:00
Bastiaan Olij
f7cba26a52
Revert "fix #33188 MSAA depth buffer not used for external texture"
...
This reverts commit 418b035dda
.
2019-11-08 22:47:36 +11:00
Rémi Verschelde
a3ac7a94f0
Merge pull request #33291 from NeoSpark314/fix_#33188
...
fix #33188 MSAA depth buffer not used for external texture
2019-11-08 09:53:22 +01:00
Rémi Verschelde
47389c3a16
Partial revert of #32657 , undoing line shifting by 0.5
...
As discussed in #32657 , this can't be done here as lines can be used
with a canvas scale, and this breaks them.
A suggestion is to do the pixel shifting at matrix level instead.
Fixes #33393 .
Fixes #33421 .
2019-11-07 15:43:04 +01:00
Holger Dammertz
418b035dda
fix #33188 MSAA depth buffer not used for external texture
...
When rendering to an external texture and MSAA was active (as happened
in the Oculus Mobile ARVR plugin) no MSAA was rendered as the correct
depth buffer and multisample texture target was not used.
This also fixes https://github.com/GodotVR/godot_oculus_mobile/issues/54
2019-11-04 20:14:52 +01:00
Rémi Verschelde
c1b0800784
Merge pull request #33278 from clayjohn/GLES2-depth-format
...
Fix depth format on Android in GLES2
2019-11-03 07:56:38 +01:00
clayjohn
bc32779542
Fix depth format on Android in GLES2
2019-11-02 21:58:30 -07:00
Rémi Verschelde
d89f24b6c9
Merge pull request #33259 from Chaosus/remove_gles2_switch_op
...
Removed switch operator from GLES2 shader back-end
2019-11-02 19:28:18 +01:00
Yuri Roubinsky
6b7f8558d9
Removed switch operator from GLES2 shader back-end
2019-11-02 12:43:32 +03:00
Rafał Mikrut
9ddb3265e1
Fix some crashes, overflows and using variables without values
2019-11-01 16:16:31 +01:00
clayjohn
033ae8a543
When framebuffer allocation fails for MSAA in GLES2 revert to normal without ERR_FAIL
2019-10-30 07:45:09 -07:00
Rémi Verschelde
63c5cd7eb8
Merge pull request #33104 from qarmin/fix_some_crashes
...
Fix some crashes and using null pointers
2019-10-28 08:37:59 +01:00
Rémi Verschelde
826ffc26c9
Merge pull request #33097 from clayjohn/GLES2-HTML-sampler_limit
...
Fixed using compressed textures and add work around for firefox webgl mesa sampler limit
2019-10-28 08:19:37 +01:00
Rafał Mikrut
e53e1c566a
Fix some crashes and using null pointers
2019-10-28 08:07:29 +01:00
clayjohn
7b3d098b2b
Fixed using compressed textures and add work around for firefox webgl mesa sampler limit
2019-10-27 23:53:52 -07:00
clayjohn
51db564811
use proper texture in Android MSAA
2019-10-27 16:50:15 -07:00
Rémi Verschelde
ad685960da
Merge pull request #32617 from Faless/fix/fopen_close_exec
...
Disable file descriptor sharing with subprocs.
2019-10-26 23:11:41 +02:00
Rémi Verschelde
3eb8bd08ec
Merge pull request #32657 from ptrojahn/lines
...
Fix draw_rect
2019-10-26 23:09:24 +02:00
Rémi Verschelde
3556876c08
Merge pull request #33093 from clayjohn/GLES2-HTML-shadows
...
Fix shadow mapping with RGBA textures on html
2019-10-26 22:07:46 +02:00
clayjohn
6ec7686a0c
Fix shadow mapping with RGBA textures on html
2019-10-26 10:17:22 -07:00
Rémi Verschelde
dba22e9788
Merge pull request #33059 from akien-mga/webgl2-resize-non-po2
...
WebGL 2.0: Force decompressing non power-of-2 textures with repeat/mipmap
2019-10-26 18:05:37 +02:00
Fabio Alessandrelli
d780570faf
Use WSAConnect instead of connect on Windows.
...
The misterious windows networking stack...
Using connect instead of WSAConnect causes socket error 10022 under
certain conditions.
See: https://github.com/godotengine/webrtc-native/ (issue 6)
Having to guess, code path for connect is different then WSAConnect with
NULL extra parameters.
The only reference about weird error with this code mentions something
called "Windows Filtering Platform" but windows internals are, as
always, obscure.
This might be something to try and report to Microsoft if anyone has the
time to spare with the likely outcome of being ignored.
2019-10-25 18:13:51 +02:00
Rémi Verschelde
69003457b3
WebGL 2.0: Force decompressing non power-of-2 textures with repeat/mipmap
...
While OpenGL ES 3.0 and WebGL 2.0 both support non power-of-2 (NPOT)
textures in their specification, the situation seems to be less clear
about *compressed* NPOT textures using repeat or mipmap flags.
At least Chrome on Linux doesn't seem to support this combination,
and a variety of mobile hardware have similar limitations.
As a workaround, we force decompressing such textures when running on
WebGL 2.0, at the cost of loading time and memory usage.
Fixes #33058 .
2019-10-25 13:01:10 +02:00
bruvzg
7b64340eb0
Fix compilation warnings in macOS build, enable warnings=extra werror=yes
for macOS CI.
2019-10-24 20:37:56 +03:00
clayjohn
071bf81750
only render depth with alpha prepass on prepass
2019-10-11 22:34:10 -07:00
Paul Trojahn
bdaedb601c
Fix draw_rect
...
OpenGL uses the diamond exit rule to rasterize lines. If we don't shift
the points down and to the right by 0.5, the line can sometimes miss a
pixel when it shouldn't. The final fragment of a line isn't drawn. By
drawing the lines clockwise, we can avoid a missing pixel in the rectangle.
See section 3.4.1 in the OpenGL 1.5 specification.
Fixes #32279
2019-10-11 10:26:53 +02:00
Rémi Verschelde
a39aeade5b
Merge pull request #32170 from puthre/ninepatch-fix
...
GLES2 & GLES3 Fixes ninepatch margins for high resolution textures.
2019-10-09 08:33:56 +02:00
Rémi Verschelde
02d75f99b9
Merge pull request #32616 from Faless/net/fix_close_exec
...
Disable socket descriptor sharing with subprocs.
2019-10-08 07:32:11 +02:00
Rémi Verschelde
e43155b44f
Merge pull request #32454 from jeronimo-schreyer/disable_unix_socket
...
Optional Unix Socket disable for devices that do not support it
2019-10-08 06:40:17 +02:00
Valentin Zagura
100d05cbec
GLES3 Fixes for ninepatch margins when patch size is smaller than the patch texture resolution
...
Scaled ninepatch margins in screen space to be relative of the ninepatch size when the patch size is smaller than the patch texture resolution.
2019-10-07 13:19:27 +01:00
Fabio Alessandrelli
ad9a5ee6f1
Disable file descriptor sharing with subprocs.
...
On Unix systems, file descriptors are usually shared among child
processes.
This means, that if we spawn a subprocess (or we fork) like we do in
the editor any open file descriptor will leak to the new process.
This PR sets the close-on-exec flag when opening a file, which causes
the file descriptor to not be shared with the child process.
2019-10-07 11:57:44 +02:00
Fabio Alessandrelli
9c91b2051a
Disable socket descriptor sharing with subprocs.
...
On Unix systems, sockets are like file descriptors, and file descriptors
are usually shared among child processes.
This means, that if we spawn a subprocess (or we fork) like we do in the
editor, open file descriptors will leak to the new process.
This causes issue with sockets as they might remain open and bound
(listening) when the original process closes.
2019-10-07 11:53:01 +02:00
Rémi Verschelde
234289de2b
Merge pull request #32613 from clayjohn/GLES2-canvas-bg-mode
...
Add canvas background mode to GLES2
2019-10-07 08:57:44 +02:00
clayjohn
77939c6e2e
add canvas background mode to GLES2
2019-10-06 23:26:11 -07:00
clayjohn
cea1f13176
fix current issues with post-processing
2019-10-06 12:07:31 -07:00
Rémi Verschelde
0deccd4a65
Merge pull request #32510 from clayjohn/GLES2-fix-black-editor-and-crash
...
Remove glViewport call as it wasnt needed and caused crash GLES2
2019-10-03 08:16:19 +02:00
Rémi Verschelde
ce336e7e72
Merge pull request #32505 from clayjohn/GLES2-fix-probe-crash
...
Fix reflection probe crash in GLES2 with post-processing
2019-10-03 07:55:08 +02:00
clayjohn
a152816c52
remove glViewport call as it wasnt needed and caused crash
2019-10-02 20:21:41 -07:00
clayjohn
07fd9719bf
Fix reflection probe crash in GLES2 with post-processing
2019-10-02 14:35:10 -07:00
Rémi Verschelde
642a258d54
Merge pull request #32492 from akien-mga/fix-ip-uwp
...
IP: Fix build error on UWP
2019-10-02 21:03:59 +02:00
Rémi Verschelde
3f32ac11cc
IP: Fix build error on UWP
...
Fixes this error:
```
drivers\unix\ip_unix.cpp(155): error C2593: 'operator =' is ambiguous
.\core/ustring.h(177): note: could be 'void String::operator =(const CharType *)'
.\core/ustring.h(176): note: or 'void String::operator =(const char *)'
drivers\unix\ip_unix.cpp(155): note: while trying to match the argument list '(String, int)'
```
2019-10-02 13:38:02 +02:00
Yuri Roubinsky
1472fca951
Removed unnecessary shader error log messages
2019-10-02 12:37:22 +03:00
clayjohn
afaa68628a
updated defaults and documentation for GLES2 glow
2019-10-01 07:55:04 -07:00
Kanabenki
add91724e6
Fix casting to uint64_t when returning unix system time
2019-10-01 11:44:26 +02:00
Jairo
fe068b61ad
Optional Unix Socket disable for devices that do not support it
2019-09-30 21:15:50 -03:00
clayjohn
82f63633d1
Implement DOF blur, Glow, and BCS in GLES2
2019-09-30 08:04:31 -07:00
Ruslan Mullayanov
b4c927b514
Added an exit code to the blocking mode of OS::execute
...
Updated documentation accordingly.
Fixes #31881 .
2019-09-26 08:12:07 +02:00
Rémi Verschelde
dec10dd776
Merge pull request #32051 from qarmin/some_error_explanation
...
Added some obvious errors explanations
2019-09-25 11:51:54 +02:00
qarmin
17732fe698
Added some obvious errors explanations
2019-09-25 10:28:50 +02:00
Rémi Verschelde
823c3def72
Fix copyright headers and style issues
2019-09-24 11:52:06 +02:00
Rémi Verschelde
f1146c261d
Merge pull request #31751 from clayjohn/GLES3-Viewport-crash-canvas
...
Throw error when canvas background is used without sample buffer
2019-09-23 15:35:31 +02:00
Rémi Verschelde
159470df08
Merge pull request #32275 from godotengine/skin_support
...
Added skin support and simplified APIs to override bone position + glTF 2.0 import fixes
2019-09-23 15:02:15 +02:00
Rémi Verschelde
393a0152ea
Merge pull request #32055 from qarmin/some_code_fixes
...
Changed some code found by Clang Tidy and Coverity
2019-09-23 10:00:31 +02:00
Rémi Verschelde
7174677fc8
Merge pull request #32259 from NeoSpark314/fix_stereo_cubemap_gles2
...
fix gles2 broken panorama sky on oculus quest
2019-09-22 21:18:06 +02:00
Holger Dammertz
94b0240767
fix gles2 broken panorama sky on oculus quest
...
This fixes an issue that was fixed for gles3 in #31419 but not applied
to gles2. The fix consists of using a constant scale for cube_normal of -1.0
instead of -1000000. It results in broken panorama rendering on the
oculus quest (see https://github.com/GodotVR/godot_oculus_mobile/issues/29 )
2019-09-22 18:53:38 +02:00
qarmin
50be65bf43
Changed some code found by Clang Tidy and Coverity
2019-09-22 18:45:08 +02:00
lawnjelly
f5365aa0e1
Fix GLES2 skinning where VERTEX_TEXTURE not supported
...
Although the backup USE_SKELETON_SOFTWARE skinning path is currently used when float texture is not supported, the default skinning path still fails when float texture is supported but GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS is 0, i.e. the device cannot read from texture during vertex shader. This PR adds the logic to activate the SKELETON_SOFTWARE path if either of these cases occur, preventing crashes on devices which have this combination of features.
2019-09-22 15:38:20 +01:00
Rémi Verschelde
e23cb2c715
Merge pull request #32004 from raphael10241024/fix_shader_uniform
...
Fix gles3 shader uniform vec3 error
2019-09-19 20:09:04 +02:00
Rémi Verschelde
28265fb526
Merge pull request #31202 from azagaya/light-data
...
Create shadow_vec for altering shadow computation
2019-09-19 20:03:04 +02:00
Juan Linietsky
d81ddaf33e
Added skin support and simplified APIs to override bone position.
2019-09-18 19:46:32 -03:00
Valentin Zagura
6ee84f53a9
GLES2 Fixes for ninepatch margins when patch size is smaller than the patch texture resolution..
...
Scaled ninepatch margins in screen space to be relative of the ninepatch size when the patch size is smaller than the patch texture resolution.
2019-09-17 09:51:54 +01:00
clayjohn
e65d2184b9
throw error when user tries to use Canvas background without sample buffer
2019-09-15 21:07:07 -07:00
Chaosus
1333ea2a2d
Implement shader array support for varyings
2019-09-14 18:23:25 +03:00
azagaya
b835868067
Create shadow_vec for altering shadow computation
...
In 2.1 and 3.0, light_vec could be modified for altering shadow_computations.
But it broke shadows when rotating light. shadow_vec would do the same, but without breaking
shadows in rotated lights if not used.
Add inverse light transformation to shadow vec, so it's not affected when rotating lights;
Added usage define for shadow vec.
For shadow vec working properly when rotating a light, it's needed to multiply it by light_matrix normalized. Added usage define in order to don't do that if shadow_vec not used.
2019-09-06 13:55:49 -03:00
RaphaelHunter
b8bb5e90ea
fix gles3 shader uniform vec3 error, close #30930
2019-09-06 14:06:20 +08:00
Rémi Verschelde
2beea262be
Merge pull request #31571 from NeoSpark314/tonemapping_none_option
...
Don't clamp color to [0, 1] in Linear tonemapping
2019-09-02 18:41:53 +02:00
Andrii Doroshenko (Xrayez)
cd99157e2e
Provide error messages when PNG save fails
2019-09-01 14:16:17 +03:00
Holger Dammertz
aa3ef8893b
Removed clamping of the Linear tonemapping when KEEP_3D_LINEAR
...
Changed the behaviour of the Linear tonemapping operator to not clamp to [0, 1] range
in the case when KEEP_3D_LINEAR is defined. This allows to render values > 1.0 in
floating point texture targets (via Viewport) for further processing or saving high
dynamic range data into files. This only works when no color conversion is active.
2019-08-29 18:14:19 +02:00
Rémi Verschelde
ebbf63a87c
Merge pull request #31746 from clayjohn/skip-vertex-transform-gles2
...
Fix skip_vertex_transform bug in GLES2 CPUParticles
2019-08-29 08:37:12 +02:00
clayjohn
97f66900bb
Fix skip_vertex_transform bug in GLES2 CPUParticles
2019-08-28 11:57:33 -07:00
Rémi Verschelde
816ddd7817
Merge pull request #31556 from Chaosus/gles2_inverse
...
Implemented inverse shader function to GLES2
2019-08-26 13:52:03 +02:00
Yuri Roubinski
982becfa39
Fix hint range step for integer in shaders
2019-08-25 15:11:04 +03:00
Yuri Roubinski
4dda253ee0
Implements switch to shaders
2019-08-23 14:43:09 +03:00
Yuri Roubinski
4dcee2035a
Implemented inverse shader function to GLES2
2019-08-22 08:22:49 +03:00
Rémi Verschelde
e797ae4704
FileAccessWindows: Add errno include for MinGW
...
Apparently MSVC is happy with ENOENT without it, but MinGW seems to
require it.
Follow-up to #31499 .
2019-08-21 10:52:57 +02:00
Rémi Verschelde
7b37321ae3
Merge pull request #31499 from nekomatata/fix-new-project-metadata
...
Setting project metadata doesn't fail when project_metadata.cfg doesn't exist
2019-08-21 08:54:32 +02:00
PouleyKetchoupp
b49226e085
Support for file not found in ConfigFile::Load and handle a few specific cases
...
EditorSettings::set_project_metadata: creates project_metadata.cfg if it doesn't exist
EditorPlugin::get_config: removed (not used)
Fixes #31444
2019-08-21 08:32:55 +02:00
Rémi Verschelde
f21371d7f4
Merge pull request #31419 from NeoSpark314/fix_oculusquest_panorama
...
changed the constant scale of cube_normal to -1.0 instead of -1000000…
2019-08-20 13:39:26 +02:00
Rémi Verschelde
cce148b024
Merge pull request #31473 from Chaosus/shader_bug
...
Fix ternary operator shader compiler expression
2019-08-19 10:15:22 +02:00
Yuri Roubinski
9abf5578ee
Fix ternary operator shader compiler expression
2019-08-19 08:40:54 +03:00
clayjohn
99de3906ba
check if skeleton texture is already allocated before reallocating
2019-08-18 22:02:57 -07:00
Holger Dammertz
8fb80788df
changed the constant scale of cube_normal to -1.0 instead of -1000000.0; this fixes a rendering issue on oculus quest and does not change the computation as the vector is normalized afterwards.
...
Adapted the comment above the code to reflect the change made as it already mentioned that z could be set to 1.
2019-08-17 14:01:55 +02:00
Rémi Verschelde
d3153c28f0
Replace last occurrences of 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG'
...
The last remaining ERR_EXPLAIN call is in FreeType code and makes sense as is
(conditionally defines the error message).
There are a few ERR_EXPLAINC calls for C-strings where String is not included
which can stay as is to avoid adding additional _MSGC macros just for that.
Part of #31244 .
2019-08-17 13:31:22 +02:00
Braden Bodily
71d71d55b5
Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in 'core/' and 'editor/'
...
Condensed some if and ERR statements. Added dots to end of error messages
Couldn't figure out EXPLAINC. These files gave me trouble: core/error_macros.h, core/io/file_access_buffered_fa.h (where is it?),
core/os/memory.cpp,
drivers/png/png_driver_common.cpp,
drivers/xaudio2/audio_driver_xaudio2.cpp (where is it?)
2019-08-17 12:33:15 +02:00
Rémi Verschelde
afecc0bc22
Merge pull request #31309 from raphael10241024/fix_dof
...
DOF can effect transparent objects now,
2019-08-16 23:20:22 +02:00
Rémi Verschelde
6c607c3564
Merge pull request #31266 from IAmActuallyCthulhu/pr/remove-redundant-author-comments
...
Remove redundant author doc comments
2019-08-14 13:45:54 +02:00
Yuri Roubinski
a525e3c5ce
Implemented do/while loops for shaders
2019-08-13 18:39:55 +03:00
IAmActuallyCthulhu
82b9557803
Remove redundant author doc comments
2019-08-12 04:26:38 -05:00
RaphaelHunter
5ff4b13271
DOF can effect transparent objects now, close #28240
2019-08-12 15:49:02 +08:00
Rémi Verschelde
0e823cffbc
Merge pull request #31270 from nekomatata/fix-vertex-color-init-gles3
...
Fixed vertex color initialization with default value in GLES3
2019-08-12 09:28:40 +02:00
Rémi Verschelde
ef91119502
Merge pull request #31271 from raphael10241024/gles2_shader
...
Fix GLES2 canvas shader uniform error
2019-08-12 08:32:06 +02:00
PouleyKetchoupp
e852b3a271
Fixed vertex color initialization with default value in gles3
...
Fixes #30275 , #31250
2019-08-11 17:51:47 +02:00
clayjohn
049dd309fe
check for unsigned_short support for gles2 depth buffer allocation
2019-08-10 09:56:42 -07:00
RaphaelHunter
48f28c68bc
fix gles2 canvas shader uniform error,close #31201
2019-08-10 21:52:51 +08:00
Rémi Verschelde
d2a67c9c1f
Merge pull request #30714 from Calinou/invert-default-fog-height
...
Invert and adjust the default fog height values
2019-08-08 17:20:32 +02:00
Hugo Locurcio
d1a35b5a97
Invert and adjust the default fog height values
...
This makes height fog appear at the bottom of the scene
(instead of the top), which is generally the expected result.
This also tweaks the fog height setting hint to be more flexible.
This closes #30709 .
2019-08-07 18:21:44 +02:00
Rémi Verschelde
7b514d920d
Merge pull request #31099 from Chaosus/shader_local_const
...
Implemented local shader constants
2019-08-07 15:14:35 +02:00
Rémi Verschelde
ba541bceca
Merge pull request #31077 from qarmin/coverity_bugs
...
Change some code proposed by Coverity and Cppcheck
2019-08-07 13:49:33 +02:00
Rémi Verschelde
af935af38d
Merge pull request #30468 from SaracenOne/expose_audio_capture
...
Exposes capture methods to AudioServer + documentation
2019-08-07 13:27:25 +02:00
qarmin
e0b5b21863
Add some code changes/fixes proposed by Coverity and Clang Tidy
2019-08-07 12:54:30 +02:00
Rémi Verschelde
7464074cb8
Merge pull request #30987 from clayjohn/GLES2-light-negative
...
Implement negative for OmniLights and SpotLights in GLES2
2019-08-05 19:21:13 +02:00
Yuri Roubinski
b24b3497d6
Implemented local shader constants
2019-08-05 10:35:53 +03:00
Rémi Verschelde
d9bba94d60
Merge pull request #31053 from aaronfranke/vector2i-cleanup
...
Some minor Vector2i usage cleanup
2019-08-05 08:08:57 +02:00
Yuri Roubinski
393f142495
Fix GLES2 rendering
2019-08-03 21:21:29 +03:00
Aaron Franke
1a06496f45
Some Vector2i usage cleanup
...
Replace casting Vector2 -> Vector2i -> Vector2 with a simple call to .floor(), and some minor fixes.
2019-08-03 01:11:05 -07:00
Chaosus
8b4c538ab2
Expose several GLES3 built-ins to GLES2
2019-07-31 19:00:10 +03:00
clayjohn
96c3004855
allow omnilights and spotlights to use negative in GLES2
2019-07-30 23:44:22 -07:00
Rémi Verschelde
51b2d86685
Merge pull request #30977 from clayjohn/GLES3-screen-uv
...
Properly pass SCREEN_PIXEL_SIZE to canvas light shader
2019-07-31 07:45:41 +02:00
clayjohn
518f0fb190
properly pass SCREEN_PIEXEL_SIZE to canvas light shader
2019-07-30 13:45:11 -07:00
Rémi Verschelde
73d2a99761
Merge pull request #30911 from hadrien-psydk/optimize_dir_access_unix_get_next_lnk
...
Optimize DirAccessUnix::get_next() for some file systems (with link support)
2019-07-30 00:12:30 +02:00
Rémi Verschelde
b697121d75
Merge pull request #30895 from clayjohn/gles2-shader-funcs
...
Added round function to gles2
2019-07-29 22:43:26 +02:00
clayjohn
3f25dde6b4
added round function to gles2
2019-07-29 11:17:08 -07:00
Rémi Verschelde
639127de09
Merge pull request #30898 from clayjohn/max-lights-reflections
...
Add project setting for max lights and reflections in GLES3
2019-07-29 16:01:53 +02:00
Hadrien
e02c5ef48a
Optimize DirAccessUnix::get_next() for some file systems
...
On some file systems, like ext4 on Linux, readdir() gives enough
information to determine the entry type in order to avoid doing
a stat() system call.
Use this information and call stat() only if necessary: for file
systems that do not support this feature and for links.
2019-07-29 15:02:26 +02:00
clayjohn
1a981ef268
add project setting for max lights and reflections in gles3
2019-07-28 17:54:25 -07:00
RaphaelHunter
47df933c27
update algorithm about paking float to vec4 to fix shadow shift and change rgba_shdow options
2019-07-28 11:43:01 +08:00
Rémi Verschelde
0381ff35aa
Merge pull request #30764 from clayjohn/contact-shadow
...
Fix contact shadows appearing when shading casting is off
2019-07-23 07:02:38 +02:00
clayjohn
b1839e5e85
fix contact shadows appearing when shading casting is off
2019-07-22 15:03:51 -07:00
Rémi Verschelde
b62b8ccf94
Merge pull request #30732 from Calinou/default-disable-high-quality-vct
...
Disable high-quality voxel cone tracing by default
2019-07-22 23:18:06 +02:00
Rémi Verschelde
6b19da583d
Merge pull request #30745 from clayjohn/gles2-shadow-transparency
...
Fix GLES2 shadow transparency bug
2019-07-22 13:23:36 +02:00
clayjohn
150487e728
fix gles2 shadow transparency bug
2019-07-21 23:52:19 -07:00
Hugo Locurcio
b1e382178c
Disable high-quality voxel cone tracing by default
...
This makes GIProbe significantly faster out of the box, at the cost
of worse-looking GIProbe reflections.
This closes #30727 .
2019-07-21 17:39:03 +02:00
Geequlim
ee9f46423b
Revert "Optimize DirAccessUnix::get_next() for some file systems"
2019-07-21 11:48:53 +08:00
Rémi Verschelde
d15cf7b672
Merge pull request #30576 from qarmin/lgtm_coverage
...
Changed some code reported by LGTM and Coverity
2019-07-20 12:00:13 +02:00
qarmin
6cbaf7662f
Changed some code showed in LGTM and Coverage
2019-07-20 08:09:57 +02:00
Hadrien
1898a559a9
Optimize DirAccessUnix::get_next() for some file systems
...
On some file systems, like ext4 on Linux, readdir() gives enough
information to determine the entry type in order to avoid doing
a stat() system call.
Use this information and call stat() only if necessary.
2019-07-17 20:34:37 +02:00
Rémi Verschelde
1d13567345
Merge pull request #30570 from SonerSound/gles2_inconsistent_fix
...
Fix inconsistent lighting in GLES2
2019-07-17 09:56:44 +02:00
Bojidar Marinov
65bb76ab35
Fix CurveTexture being listed as saveable to .png
...
Fixes #27880
2019-07-16 21:19:53 +03:00
Chaosus
9379cbc774
Added local array initializer
2019-07-16 07:13:37 +03:00
Saracen
c81ec6f26d
Exposes capture methods to AudioServer, variable renames for consistency,
...
added documentation.
2019-07-15 15:12:29 +01:00
Chaosus
c37379456f
Implemented local shader arrays
2019-07-15 15:57:39 +03:00
SonerSound
545bf86d39
Fix inconsistent lighting in GLES2
...
Issue was possibily being caused by duplicating a light even when that
light was not in the render_light_instances array.
2019-07-14 19:12:26 +01:00
Hugo Locurcio
707ce08cdd
Implement CanvasItem line antialiasing in GLES2
...
This is a straight copy-paste of the code from
`drivers/gles3/rasterizer_canvas_gles3.cpp`. It is subject to the
same restrictions as the GLES3 implementation: it only works
on desktop platforms as they use OpenGL instead of OpenGL ES.
2019-07-12 16:49:12 +02:00
Rémi Verschelde
34d7484039
Merge pull request #30455 from qarmin/const_reference
...
Pass by reference to const
2019-07-10 15:43:15 +02:00
szamq
d5cb280313
Fix get_data layer argument when texture is TEXTURE_TYPE_2D_ARRAY
2019-07-10 14:16:28 +02:00
qarmin
01cc7a996b
Use reference to constant in functions
2019-07-10 11:54:12 +02:00
Rémi Verschelde
af80182016
Merge pull request #30407 from qarmin/small_fixess
...
Fixes minor issues found by static analyzer
2019-07-08 08:16:50 +02:00
qarmin
9a77d748c0
Fixes minor issues found by static analyzer
2019-07-07 23:08:51 +02:00
Ibrahn Sahir
4e4697b1c4
Added release function to PoolVector::Access.
...
For clarity, assign-to-release idiom for PoolVector::Read/Write
replaced with a function call.
Existing uses replaced (or removed if already handled by scope)
2019-07-06 12:04:27 +01:00
Marcus Brummer
10f1e0f63a
Prevent GLES2 bool uniforms from having a precision type set.
...
When setting the default precision type for uniforms (before compiling
the shader) prevent boolean uniforms from having one set. Booleans can't
have a precision type and on some Android devices this caused a
compilation failure.
Fixes #30317
2019-07-05 01:00:02 +02:00
Rémi Verschelde
d6d487d7f7
Merge pull request #30232 from zwostein/fix-pulseaudio-channelmap
...
Explicitly set a channel map when initialising the Pulseaudio stream.
2019-07-04 11:06:06 +02:00
Rémi Verschelde
b0d41847ed
SCons: Use CPPDEFINES instead of CPPFLAGS for pre-processor defines
...
It's the recommended way to set those, and is more portable
(automatically prepends -D for GCC/Clang and /D for MSVC).
We still use CPPFLAGS for some pre-processor flags which are not
defines.
2019-07-03 09:59:04 +02:00
Bojidar Marinov
f7dad789e9
Fix various memory leaks and errors
2019-07-02 17:23:54 +03:00
zwostein
9fa2e07588
Explicitly set a channel map when initialising the Pulseaudio stream.
2019-07-01 22:47:55 +02:00
Rémi Verschelde
b0eeb12335
Merge pull request #29909 from clayjohn/gles2-light-scale
...
Scale vertex lit lights by environment scale
2019-07-01 16:28:17 +02:00
Rémi Verschelde
6b30f284a0
Merge pull request #29980 from Dentrax/directed-by-qarmin
...
Fix some editor crashes
2019-07-01 14:59:29 +02:00
Rémi Verschelde
b0ce9401ff
Merge pull request #30126 from qarmin/remove_unnecessary_code
...
Remove unnecessary code and add some error explanations
2019-07-01 14:32:04 +02:00
Furkan Türkal
7d8d337b2c
fix some crashes
2019-07-01 14:28:29 +03:00
qarmin
3c154eb93b
Remove unnecessary code and add some error explanations
2019-07-01 12:59:42 +02:00
Rémi Verschelde
d17eac735c
Merge pull request #29815 from NilsIrl/plus_file_1
...
Replace ` + "/" + ` with `String::file_add()`
2019-07-01 12:06:35 +02:00
Fabio Alessandrelli
c540411a7f
Fix ip_unix.cpp inclusion order for OpenBSD.
2019-06-28 18:42:21 +02:00
Fabio Alessandrelli
4517db75b5
Properly disable SIGPIPE on OSX network sockets.
...
Disable SO_NOSIGPIPE socket option when avaiable.
Use MSG_NOSIGNAL send flag on systems that support it.
2019-06-28 18:42:21 +02:00
Rémi Verschelde
eaaff9da31
Merge pull request #29941 from qarmin/redundant_code_and_others
...
Remove redundant code, possible NULL pointers and others
2019-06-27 01:05:18 +02:00
qarmin
4e5310cc60
Some code changed with Clang-Tidy
2019-06-26 15:08:25 +02:00
Rémi Verschelde
25022a1d89
Merge pull request #29974 from clayjohn/particles_restart
...
Properly set emitting when particles restart
2019-06-24 13:48:56 +02:00
Nils ANDRÉ-CHANG
d2833d4f4d
Replace + "/" +
with String::file_add()
2019-06-23 13:33:50 +01:00
clayjohn
64ecc8a5a3
properly set emitting when particles restart
2019-06-21 22:33:11 -07:00
Rémi Verschelde
1e833cadbc
Merge pull request #29935 from Faless/net/get_if_multicast_pr
...
Multicast, more network interfaces info
2019-06-21 10:21:01 +02:00
Fabio Alessandrelli
e5e3f86648
Multicast support in NetSocket/PacketPeerUDP
2019-06-21 00:14:42 +02:00
Fabio Alessandrelli
b574e476ec
Implement IP.get_local_interfaces.
...
Allow getting interfaces names and assigned names.
On UWP this is not supported, and the function will return one interface
for each local address (with interface name the local address itself).
2019-06-21 00:14:42 +02:00
Rémi Verschelde
5c66771e3e
Merge pull request #29283 from qarmin/fix_some_always_same_values
...
Remove always true/false values
2019-06-20 21:10:10 +02:00
qarmin
072e40368e
Fix always true/false values
2019-06-20 16:59:48 +02:00
Rémi Verschelde
e09cf96857
Merge pull request #29874 from ibrahn/rework-png-loadsave
...
PNG driver reworked to use libpng 1.6 simplified API
2019-06-20 11:10:02 +02:00
clayjohn
80d732082b
scale vertex lit lights by envorionment scale
2019-06-19 16:20:14 -07:00
Bastiaan Olij
4ebedb5f11
Made constants fully upper case in camera server
2019-06-19 22:24:54 +10:00
Ibrahn Sahir
5e24611241
Png driver reworked to use libpng 1.6 simplified API
...
Wrapped libpng usage in a pair of functions under PNGDriverCommon,
which convert between Godot Image and png data.
Switched to libpng 1.6 simplified API for ease of maintenance.
Implemented ImageLoaderPNG and ResourceSaverPNG in terms of
PNGDriverCommon functions.
Travis, switched to builtin libpng (thus builtin freetype and zlib also)
so we can build on Xenial.
2019-06-19 11:05:58 +01:00
Rémi Verschelde
c6507933a7
Merge pull request #29872 from akien-mga/unexpose-resourceformatloaders
...
Unexpose subclasses of ResourceFormatLoader and -Saver
2019-06-18 20:07:10 +02:00
Rémi Verschelde
d6176db271
Unexpose subclasses of ResourceFormatLoader and -Saver
...
ResourceFormatLoader and ResourceFormatSaver are meant to be overridden
to add support for different formats in ResourceLoader and ResourceSaver.
Those should be exposed as they can be overridden in plugins.
On the other hand, all predefined subclasses of those two base classes
are only meant to register support for new file and resource types, but
should not and cannot be used directly from script, so they should not
be exposed.
Also unexposed ResourceImporterOGGVorbis (and thus its base class
ResourceImporter) which are editor-only.
2019-06-18 17:56:23 +02:00
Rémi Verschelde
0cdbf7315b
Merge pull request #29751 from lawnjelly/skin-fix
...
Fixes crash with rigged meshes on some OpenGLES2 devices
2019-06-18 16:41:58 +02:00
lawnjelly
e36e9fdb1c
Fixes crash with rigged meshes on some OpenGLES2 devices
...
Non-tools OpenGLES2 devices that use the USE_SKELETON_SOFTWARE path (i.e. do not support float texture) depend on surface->data being set containing the bone IDs and weights (rasterizer_scene_gles2.cpp, line 1456, RasterizerSceneGLES2::_setup_geometry). However currently if TOOLS_ENABLED is not defined, surface->data is not stored in main memory in rasterizer_storage_gles2.cpp. This causes a crash in rasterizer_scene_gles2.cpp when a rigged object comes into view.
This fix addresses the specific case of skinned objects when USE_SKELETON_SOFTWARE is active, and stores a copy of the bone data, as is done when TOOLS_ENABLED is defined. This fixes the crash by allowing the same mechanism as on desktop, without adding the memory overhead of storing all vertex data where not required.
Fixes #28298
2019-06-18 09:42:07 +01:00
Rémi Verschelde
6ba1b4e371
Merge pull request #29764 from Calinou/boot-splash-no-filter-option
...
Add an option to disable boot splash filtering
2019-06-16 10:39:53 +02:00
Rémi Verschelde
baab976d0f
Merge pull request #10643 from BastiaanOlij/camera_server
...
CameraServer class
2019-06-16 10:22:26 +02:00
Hugo Locurcio
786a7341a7
Add an option to disable boot splash filtering
...
Disabling filtering is usually desired in projects using a pixel art style.
This closes #19415 .
2019-06-15 23:53:39 +02:00
Rémi Verschelde
68735d2a88
Fix compilation warnings in JS and Windows builds
...
Warnings raised by Emscripten 1.38.0 and MinGW64 5.0.4 / GCC 8.3.0.
JS can now build with `werror=yes warnings=extra`.
MinGW64 still has a few warnings to resolve with `warnings=extra`,
and only one with `warnings=all`.
Part of #29033 and #29801 .
2019-06-15 14:40:45 +02:00
BastiaanOlij
02ea99129e
Adding a new Camera Server implementation to Godot.
...
This is a new singleton where camera sources such as webcams or cameras on a mobile phone can register themselves with the Server.
Other parts of Godot can interact with this to obtain images from the camera as textures.
This work includes additions to the Visual Server to use this functionality to present the camera image in the background. This is specifically targetted at AR applications.
2019-06-15 21:30:32 +10:00
Fabio Alessandrelli
9773350537
Fix HTML5 build failed due to undefined symbol
2019-06-14 23:32:48 +02:00
Rémi Verschelde
ae6e562bd8
Merge pull request #29628 from qarmin/fix_invalid_write_mesh
...
Fix write outside array in mesh_add_surface
2019-06-13 10:01:20 +02:00
Rémi Verschelde
c8db517993
Merge pull request #29316 from Chaosus/shader_const
...
Added constant support to shaders
2019-06-12 14:26:45 +02:00
Rémi Verschelde
971b5160c6
Merge pull request #29306 from qarmin/small_code_fixes
...
Small fixes to unrechable code, possibly overflows, using NULL pointers
2019-06-12 12:49:21 +02:00
Rémi Verschelde
30e8b53c38
Merge pull request #29680 from akien-mga/fix-headers
...
Add missing license headers
2019-06-11 19:01:40 +02:00
Rémi Verschelde
f18121824c
Add missing license headers
...
Make `fix_headers.py` script compatible with Python 3.
2019-06-11 15:33:32 +02:00
Rémi Verschelde
6d16f2f053
Fix error macro calls not ending with semicolon
...
It's not necessary, but the vast majority of calls of error macros
do have an ending semicolon, so it's best to be consistent.
Most WARN_DEPRECATED calls did *not* have a semicolon, but there's
no reason for them to be treated differently.
2019-06-11 14:49:34 +02:00
Rémi Verschelde
0677383907
Merge pull request #29496 from clayjohn/dlopen-fix-gles2
...
Use def ANDROID_ENABLED so android features are not included in web builds
2019-06-11 11:48:38 +02:00
qarmin
99ba021404
Fix invalid crash in mesh_add_surface
2019-06-09 14:49:59 +02:00
clayjohn
9af94d650f
use def ANDROID_ENABLED so android features are not included in javascript builds
2019-06-04 23:12:20 -07:00
qarmin
8245db869f
Small fixes to unrechable code, possibly overflows, using NULL pointers
2019-06-03 21:52:50 +02:00
clayjohn
2b8b1d7c46
added MultiMeshInstance2D node for using MultiMesh in 2D
2019-06-03 12:11:54 -07:00
Hugo Locurcio
cbd31d9f0b
Fix errors when attempting to set UNIX permissions when unavailable
...
This makes exporting from Windows to Linux work again.
This closes #29416 .
2019-06-03 14:35:33 +02:00
Chaosus
c2d4abf62e
Added constant support to shaders
...
Co-authored-by: DavidSichma <sichmada@gmail.com>
2019-06-01 13:41:07 +03:00
Rémi Verschelde
c34636cbc4
Merge pull request #24943 from aqnuep/issue-18201
...
Mute errors on surface->index_array_len == 0 in the GLES3 renderer
2019-06-01 12:12:09 +02:00
Rémi Verschelde
bac7e22cb1
Merge pull request #29236 from clayjohn/gles2-mirror
...
Separate culling state management from material state in GLES2
2019-05-30 15:01:50 +02:00
Rémi Verschelde
603bb98340
Merge pull request #29188 from Calinou/improve-ssao-performance-quality
...
Improve SSAO performance and quality
2019-05-30 14:27:25 +02:00
Rémi Verschelde
c2e2bcbca9
Fix -Werror=maybe-uninitialized in GLES2 on release builds
...
Issue introduced in #28796 .
2019-05-29 16:40:06 +02:00
qarmin
66a36ba474
Fix some unincialised variables
2019-05-28 19:12:19 +02:00
clayjohn
2b59bd7695
separate culling state management from material
2019-05-27 11:45:53 -07:00
Rémi Verschelde
9f6eb3882c
Merge pull request #29182 from clayjohn/radiance_map
...
Fix radiance map settings
2019-05-27 17:33:45 +02:00
Rémi Verschelde
b9ee3f3d64
Merge pull request #29014 from mbrlabs/gles2_precision_fix
...
Use highp precision in the gles2 fragment shader if available
2019-05-27 12:18:47 +02:00
Hugo Locurcio
eb0cced3c0
Improve SSAO performance and quality
...
This decreases the number of samples significantly, leading to a
notable performance increase with only a very slight loss in
visual quality.
This also tweaks the default SSAO settings to use 3×3 blurring,
which makes noise patterns much less visible.
2019-05-26 12:01:01 +02:00
clayjohn
4c55a909ad
fix radiance map settings
2019-05-25 18:57:32 -07:00
Marcus Brummer
502dbc7c4a
Use highp precision for gles2 shader uniforms if not explicitly set.
...
The use of different default precision values (highp in vertex; mediump
in fragment) for uniform variables caused the shader program to not link properly on some android
devices/emulators.
2019-05-25 14:26:08 +02:00
Rémi Verschelde
da617b7943
Merge pull request #29132 from clayjohn/sort_depth_fix
...
Fix "no depth test" and render_priority sorting
2019-05-24 17:46:06 +02:00
Rémi Verschelde
01c41c782b
Merge pull request #28796 from clayjohn/GLES2-optimization
...
GLES2: Allow Viewports to render directly to screen
2019-05-24 17:31:44 +02:00
clayjohn
3365595254
do not compute fog when using unshaded in GLES2
2019-05-23 17:17:27 -07:00
clayjohn
2abe7deae8
fix no depth test and render_priority sorting
2019-05-23 09:21:57 -07:00
Rémi Verschelde
2b1c3878f9
Merge pull request #29031 from BastiaanOlij/alpha_shadow
...
Implement shadow to opacity
2019-05-23 13:37:54 +02:00
Rémi Verschelde
26e0cc7aa3
Merge pull request #29041 from hbina/add_const
...
add const to methods that return literals
2019-05-21 15:16:41 +02:00
Bastiaan Olij
3ea778e66e
Implement shadow to opacity
2019-05-21 20:07:46 +10:00
hbina085
f78baa5f93
added a const keyword for a methods that return constant literal...
2019-05-21 02:16:30 -04:00
clayjohn
cc2d862733
Scale environment lighting correctly in GLES3
2019-05-19 17:59:23 -07:00
Rémi Verschelde
e0574e1d98
Fix typos with codespell
...
Using codespell 1.15.0.
Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
doubleclick
leapyear
lod
merchantibility
nd
numer
ois
ony
que
seeked
synching
te
uint
unselect
webp
EOF
$ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po"
$ git diff // undo unwanted changes
```
2019-05-19 13:10:35 +02:00
clayjohn
55d11330b0
fix lighting bug introduced in clear color changes
2019-05-14 15:04:54 -07:00
Rémi Verschelde
aa3c5f59f2
Merge pull request #27898 from clayjohn/metallic_radiance
...
Added radiance when using clear color
2019-05-14 07:32:01 +02:00
clayjohn
65c211d303
Implement ability to render viewports directly to screen
2019-05-13 15:20:15 -07:00
clayjohn
5c252092e1
added radiance when using clear color and fixed brdf
2019-05-13 12:26:54 -07:00
Rémi Verschelde
86a74e2cb3
Merge pull request #27798 from clayjohn/gles2-proj-mat-bug
...
Fixes bug when setting projection matrix in shader GLES2
2019-05-13 17:59:40 +02:00
Rémi Verschelde
e0517a12c5
Merge pull request #28518 from clayjohn/GLES2-MSAA
...
Added MSAA to GLES2 backend
2019-05-13 17:46:11 +02:00
Rémi Verschelde
a0a5047cfd
Merge pull request #28723 from SouzaGuilherme/fix_shadows
...
Fix SHADOWS_DISABLED flag in GLES2
2019-05-13 17:22:57 +02:00
Daniel Rakos
e34eb5c26c
Fix texture resource reload bug
...
If a non-imported texture resource file (e.g. DDS) gets updated the editor
doesn't reload it. The cause of the problem is two-fold:
First, the code of ImageTexture assumes that textures are always imported
from an image, but that's not the case for e.g. DDS. This change thus adds
code to issue a resource reload in case an image reload is not possible
(which is the case for non-imported texture resources).
Second, the code is filled with bogus calls to Image::get_image_data_size()
to determine the mipmap offset when that should be done using
Image::get_image_mipmap_offset(). Previous code literally passed the integer
mip level value to Image::get_image_data_size() where that actually expects
a boolean. Thus this part of the change might actually solve some other
issues as well.
To be pedantic, the texture_get_data() funciton of the rasterizer drivers is
still quite a mess, as it only ever returns the whole mipchain when
GLES_OVER_GL is set (practically only on desktop builds) but this change does
not attempt to resolve that.
2019-05-08 17:22:40 +02:00
Guilherme Souza
b363125568
Fix SHADOWS_DISABLED flag in GLES2
...
Signed-off-by: Guilherme Souza <gdsdsilva@inf.ufpel.edu.br>
2019-05-07 12:42:28 -03:00
clayjohn
a3d5aec68d
added MSAA to GLES backend
2019-05-02 14:24:20 -07:00
marxin
cdf54d6c5f
Ignore a warning in _get_socket_error (-Wlogical-op).
...
drivers/unix/net_socket_posix.cpp: In member function 'NetSocketPosix::NetError NetSocketPosix::_get_socket_error()':
drivers/unix/net_socket_posix.cpp:197:22: warning: logical 'or' of equal expressions [-Wlogical-op]
197 | if (errno == EAGAIN || errno == EWOULDBLOCK)
| ^
and:
modules/mono/utils/string_utils.cpp: In function 'int {anonymous}::sfind(const String&, int)':
modules/mono/utils/string_utils.cpp:68:48: error: logical 'or' of collectively exhaustive tests is always true [-Werror=logical-op]
found = src[read_pos] == 's' || (c >= '0' || c <= '4');
~~~~~~~~~^~~~~~~~~~~
2019-05-02 11:11:52 +02:00
Rémi Verschelde
dd2cd06165
Merge pull request #25670 from aqnuep/bake_mode_affect_gi_prove
...
Disable GI probe capturing lights with bake mode disabled
2019-04-30 18:33:34 +02:00
Rémi Verschelde
a7f00f3bac
Merge pull request #28530 from akien-mga/scons-prepend-cpppath
...
SCons: Always use env.Prepend for CPPPATH
2019-04-30 18:23:38 +02:00
clayjohn
e37d723695
fixes bug when setting projection matrix
2019-04-30 08:36:38 -07:00
Rémi Verschelde
a5c619dc8d
Merge pull request #28520 from clayjohn/GLES2-alpha-draw-order
...
Fixed GLES2 transparency order
2019-04-30 17:20:05 +02:00
Rémi Verschelde
d52b70fb5e
SCons: Always use env.Prepend for CPPPATH
...
Include paths are processed from left to right, so we use Prepend to
ensure that paths to bundled thirdparty files will have precedence over
system paths (e.g. `/usr/include` should have lowest priority).
2019-04-30 13:12:06 +02:00
clayjohn
7ae3809f4b
Fixed GLES2 transparency order
2019-04-29 12:22:41 -07:00
Rémi Verschelde
a3617f6ca8
Merge pull request #28431 from SouzaGuilherme/master
...
Adds flag AMBIENT_LIGHT_DISABLED to GLES2
2019-04-29 16:55:36 +02:00
Guilherme Souza
61a844aa61
Adds flag AMBIENT_LIGHT_DISABLED to GLES2
...
Signed-off-by: Guilherme Souza <gdsdsilva@inf.ufpel.edu.br>
2019-04-25 20:25:05 -03:00
Rémi Verschelde
c2a669a9f0
SCons: Review uses of CCFLAGS, CXXFLAGS and CPPFLAGS
...
Many contributors (me included) did not fully understand what CCFLAGS,
CXXFLAGS and CPPFLAGS refer to exactly, and were thus not using them
in the way they are intended to be.
As per the SCons manual: https://www.scons.org/doc/HTML/scons-user/apa.html
- CCFLAGS: General options that are passed to the C and C++ compilers.
- CFLAGS: General options that are passed to the C compiler (C only;
not C++).
- CXXFLAGS: General options that are passed to the C++ compiler. By
default, this includes the value of $CCFLAGS, so that setting
$CCFLAGS affects both C and C++ compilation.
- CPPFLAGS: User-specified C preprocessor options. These will be
included in any command that uses the C preprocessor, including not
just compilation of C and C++ source files [...], but also [...]
Fortran [...] and [...] assembly language source file[s].
TL;DR: Compiler options go to CCFLAGS, unless they must be restricted
to either C (CFLAGS) or C++ (CXXFLAGS). Preprocessor defines go to
CPPFLAGS.
2019-04-24 16:57:58 +02:00
Daniel Rakos
de33ef2d1b
Disable GI probe capturing lights with bake mode disabled
...
The bake mode property of lights previously didn't affect GI probes.
This change makes the GI probe ignore lights that have their bake mode
set to disabled.
2019-04-23 11:36:36 +02:00
Juan Linietsky
cd4449e7ab
Add FileAccess::set_unix_permissions for Unix platforms
2019-04-07 15:45:30 -03:00
Juan Linietsky
65f3a953de
Remove SIGCHILD handle in OS_Unix, interferes with pclose()
2019-04-07 15:45:00 -03:00
Rémi Verschelde
a342131eba
Merge pull request #27673 from qarmin/small_fixes
...
Small fixes, mostly duplicated code
2019-04-22 12:00:34 +02:00
Juan Linietsky
04847ef5f9
Added ability for multiple images to be imported as an atlas
...
This adds support for groups in the import system, which point to a single file.
Add property hint for saving files in file field
2019-04-19 15:56:34 -03:00
Rémi Verschelde
dab8f8c953
Merge pull request #27967 from clayjohn/fix-mip-bug
...
Fixed bug in computing mip maps from screen texture
2019-04-15 13:05:50 +02:00
clayjohn
670c1b10b2
fixed bug in mip map sigma
2019-04-12 17:48:38 -07:00
Hein-Pieter van Braam
f75b9e6246
Merge pull request #27815 from Faless/unix/mem_access
...
Fix jump over uninitialized value in OS Unix/X11
2019-04-10 11:06:37 +02:00
Rémi Verschelde
c8994b56f9
Style: Apply new changes from clang-format 8.0
...
It seems to stay compatible with formatting done by clang-format 6.0 and 7.0,
so contributors can keep using those versions for now (they will not undo those
changes).
2019-04-09 17:09:48 +02:00
Rémi Verschelde
4b2c79c471
Merge pull request #27806 from JFonS/fix_27690
...
Fix hint_range for GLES2 shader uniforms
2019-04-09 17:09:27 +02:00
Fabio Alessandrelli
0bcf0314f7
Fix jump over uninitialized value in OS Unix/X11
2019-04-09 15:12:55 +02:00
Rémi Verschelde
d65cbddc8d
Merge pull request #27589 from Chaosus/fix_file
...
Fix File switching between reading and writing, opened with READ_WRITE on Windows
2019-04-08 12:12:19 +02:00
JFonS
059078f075
Fix hint_range for GLES2 shader uniforms
2019-04-08 11:53:57 +02:00
qarmin
856a8226a5
Small fixes, mostly dupicated code
2019-04-08 11:03:37 +02:00
Rémi Verschelde
b60754ab40
Merge pull request #26839 from toasteater/fix/keep-linear
...
Respect keep_3d_linear when transparent_bg is on.
2019-04-08 10:58:59 +02:00
Rémi Verschelde
c562a7d149
Merge pull request #27067 from shartte/remove-context-gl
...
Remove ContextGL
2019-04-07 12:38:55 +02:00
Rémi Verschelde
4942e96897
Merge pull request #27527 from BastiaanOlij/render_ext_target
...
Add option to have viewport render into supplied texture (VR)
2019-04-07 11:11:50 +02:00
Rémi Verschelde
b182e038e7
GLES3: Fix regression in particles buffer initialization
...
Bug introduced in #26343 where `(float *)` was mistakenly converted
to `(uint8_t *)`, so we were getting `2` instead of `8`.
Fixes #27705 .
2019-04-06 21:01:51 +02:00
Sebastian Hartte
3a8c6db513
Remove ContextGL since as an abstraction it's unused.
2019-04-06 17:52:52 +02:00
Rémi Verschelde
d450220bae
Use mix rate and output latency constants in audio drivers
...
Fix default mix rate in Xaudio2 and potential shadowing issue in JAndroid.
2019-04-06 12:37:25 +02:00
Rémi Verschelde
7ca9863079
Merge pull request #23837 from fire/asset_import
...
Add Open Asset Importer to Godot.
2019-04-06 00:12:46 +02:00
Bastiaan Olij
8349d4fbd9
Add option to have viewport render into supplied texture
2019-04-06 08:24:58 +11:00
Rémi Verschelde
afe45f9796
Merge pull request #26847 from IronicallySerious/capitalise-drive-letter-case
...
Capitalise drive letters
2019-04-05 16:58:04 +02:00
K. S. Ernest (iFire) Lee
e3ef7f214a
Add Open Asset Import Library to Godot.
...
FBX support and MMD (pmx) support.
Normals, Albedo, Metallic, and Roughness through Arnold 5 Materials for Maya FBX.
Maya FBX Stingray PBS support.
Importing FBX static meshes work.
Importing FBX animations is a work in progress.
Supports FBX 4 bone influence animations.
Supports FBX blend shapes.
MMDs do not have an associated animation import yet.
Sponsored by IMVU Inc.
2019-04-05 07:17:52 -07:00
Rémi Verschelde
cffbb99327
Merge pull request #27411 from KidRigger/raster_store
...
Added GLES2 RenderStorage Info calculations.
2019-04-05 15:22:22 +02:00
toasteater
7cbfce7a8c
Respect keep_3d_linear when transparent_bg is on.
...
When transparent_bg is on, or the render target is too small,
Godot would skip postprocessing and disregard keep_3d_linear.
This fixes #26817 .
2019-04-05 20:42:59 +08:00
Chaosus
8d12dfa24d
Fix File opened with READ_WRITE on Windows
...
To allows use read and write anytime and in any order
2019-04-05 15:15:40 +03:00
Rémi Verschelde
25c1363a11
Merge pull request #27597 from marxin/fix-Wnon-virtual-dtor-warnings
...
Fix -Wnon-virtual-dtor warnings.
2019-04-02 18:25:02 +02:00
marxin
e7f22ebdcd
Enable warnings=extra on clang and GCC testers.
...
And remove 2 warnings from warnings=extra.
2019-04-02 17:14:47 +02:00
marxin
f9f2413e69
Fix -Wnon-virtual-dtor warnings.
...
Example of the warning:
./core/script_language.h:198:7: warning: 'class ScriptCodeCompletionCache' has virtual functions and accessible non-virtual destructor [-Wnon-virtual-dtor]
2019-04-02 14:07:29 +02:00
Rémi Verschelde
ba1a168659
Merge pull request #27505 from clayjohn/depth_bug
...
Keep DEPTH from causing compile error in GLES2
2019-04-01 14:53:18 +02:00
clayjohn
5056b4a02c
keep DEPTH from causing compile error in GLES2
2019-03-28 22:14:41 -07:00
Daniel Rakos
849596c40c
Fixed handling of depth texture so it's resolved and bound when needed
...
- Cleaned up and improved the code determining when we need to use a depth
prepass (previously it wasn't executed in certain cases even if it was
needed)
- Added code to prepare and bind the depth texture even when no depth prepass
or MRTs (more precisely effect buffers) are used
Fixes #25870 , #25535 , and #25387 .
2019-03-26 17:48:22 +01:00
Anish Bhobe
4839b17f93
Added GLES2 RenderStorage Info calculations.
...
Proper counting code has been added to update info struct.
Extra: Added the render_info_capture calculations.
Fixes : #27273
2019-03-25 23:08:23 +05:30
Pedro J. Estébanez
9c3ddf05cb
Revert accidental commits
...
This reverts commit fb37284c02
.
This reverts commit 4db0f51b9a
.
2019-03-20 21:43:55 +01:00
Pedro J. Estébanez
fb37284c02
Create class for shared memory blocks [wip]
2019-03-20 20:44:43 +01:00
Rémi Verschelde
ac483345c4
GLES2: Convert unsupported float texture types to 8-bit types
2019-03-12 12:14:37 +01:00
Rémi Verschelde
3ebde6fac3
GLES2: Fix comments in previous commit that broke rendering (!)
...
Do NOT use "[vertex]" in a comment...
Kids, don't try to learn OpenGL on a production branch right before
a stable release.
2019-03-12 00:26:56 +01:00
Rémi Verschelde
74e224f2c7
GLES2: Add comments around EXT_shader_texture_lod check
...
To avoid reintroducing bugs as I did in #26928 and #26932 .
texture2DLodEXT and textureCubeLodEXT are only for the fragment shader with
https://www.khronos.org/registry/OpenGL/extensions/EXT/EXT_shader_texture_lod.txt
In the vertex shader, texture2DLod and textureCubeLod are built-in.
2019-03-11 23:18:21 +01:00
Rémi Verschelde
764671d2d0
Revert "GLES2: Ensure extension checks for texture2DLod"
...
This reverts commit f5f565e3e4
.
2019-03-11 23:12:49 +01:00
Rémi Verschelde
4cdb2d0502
Revert "GLES2: Fix regression on texture2DLod extension checks"
...
This reverts commit 8c2d38152f
.
2019-03-11 23:12:39 +01:00
Rémi Verschelde
8c2d38152f
GLES2: Fix regression on texture2DLod extension checks
...
These can't be done after any non-preprocessor token.
2019-03-11 21:59:20 +01:00
Rémi Verschelde
bc3c6338cf
Merge pull request #26928 from akien-mga/gles2-texture2DLod-ext-check
...
GLES2: Ensure extension checks for texture2DLod
2019-03-11 20:51:36 +01:00
Juan Linietsky
d9235be54b
Enable seamless cubemap only if extension is present.
2019-03-11 16:49:04 -03:00
Rémi Verschelde
f5f565e3e4
GLES2: Ensure extension checks for texture2DLod
...
In canvas.glsl and scene.glsl, we were using texel2DFetch from stdlib.glsl,
which uses texture2DLod. In both cases, the stdlib.glsl include came before
the define of texture2DLod.
Might fix issues for drivers that don't support GL_EXT_shader_texture_lod.
2019-03-11 19:34:31 +01:00
Juan Linietsky
0eb61c3106
Undo #25557 (was not right anyway), fixes #26258
2019-03-11 14:58:51 -03:00
clayjohn
13eee31461
increase size of radiance map in gles2
2019-03-10 22:08:08 -07:00
Twarit
501fabe914
Capitalise drive letters
...
Matches how other application like to display the drive letters
2019-03-10 00:36:54 +05:30
clayjohn
63bb6808e6
gles2 reallocate texture when transparent is set
2019-03-09 10:56:51 -08:00
samHFIT
fbaee40b1d
Added default color to mesh render
2019-03-08 18:26:58 +01:00
Juan Linietsky
6cb841edcb
Ensure ETC2 textures are ALSO compressed to Po2 when have mipmaps. Fixes #26733
2019-03-07 12:16:20 -03:00
Juan Linietsky
7141c73ae8
Use glCopyTexSubImage2D instead of glCopyTexImage2D, should be safer and faster.
...
May be a solution to #26500
2019-03-07 00:14:13 -03:00
Juan Linietsky
53bec9deeb
Fix and restore text, material and mesh previewers.
2019-03-04 15:53:18 -03:00
Rémi Verschelde
b753223ac2
Merge pull request #26567 from clayjohn/pixel_snap_artifact
...
Fixed pixel snap precision artifact
2019-03-04 16:58:08 +01:00
clayjohn
b804c491b7
fixed pixel snap precision artifact
2019-03-04 07:18:02 -08:00
Rémi Verschelde
453d239a69
Merge pull request #26532 from aqnuep/texture_array_fixes
...
Fixed TextureArray and Texture3D issues
2019-03-04 15:09:11 +01:00
Rémi Verschelde
91596f2f7a
Merge pull request #26574 from Chaosus/update_libpng
...
Update libpng (1.6.35 --> 1.6.36)
2019-03-04 13:49:11 +01:00
Chaosus
4655eb9b8b
Silences annoying "iCCP: known incorrect sRGB profile" spam
2019-03-04 15:28:21 +03:00
Chaosus
5a89d08e3f
Update libpng (1.6.35 --> 1.6.36)
2019-03-04 14:55:47 +03:00