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