Commit Graph

1374 Commits

Author SHA1 Message Date
Rémi Verschelde 8f25a2dc11 Cleanup some #if 0'd code 2017-12-17 15:40:24 +01:00
Hein-Pieter van Braam 34991af553 Don't glBindTexture() on viewports without effects
@reduz said there was another place that needed to be checked for a
similar issue but I have to admit I didn't understand.

This fixes #13337
2017-12-16 23:38:02 +01:00
Juan Linietsky a9ddc8f7cf
Merge pull request #14614 from vitrig/fix-immediate-geometry-acts-strangely
Fix #14564 ImmediateGeometry normals act strangely compared to SurfaceTool
2017-12-16 08:59:27 -03:00
Fabio Alessandrelli ac7444023e Move windows networking class to drivers/windows/
Also rename stream_peer_winsock.* to stream_peer_tcp_winsock.* and
StreamPeerWinsock to StreamPeerTCPWinsock.
2017-12-15 18:25:29 +01:00
Fabio Alessandrelli 92067b4714 Remove "const" from PacketPeer get_packet/get_var
They are NOT constant methods, as state by the comment message,
they fetch the last packet and then forget about it, actively
changing the state of the object.
2017-12-15 17:14:17 +01:00
Arnaud PEZEL 6f114c50a7 Fixes built-In "LIGHT" causing fragment compilation error
Add a rename for shader LIGHT built-in, Fix bug #14537
2017-12-14 14:58:13 +01:00
Juan Linietsky f3ad14224e -Add lightmapper
-Fixes to unwrapper (remove degenerates), makes Thekla not crash
-Added optional cancel button in EditorProgress
-Added function to force processing of events (needed for cancel button)
2017-12-14 09:01:27 -03:00
Rémi Verschelde b110813134
Merge pull request #14499 from akien-mga/glsl-bone-type
Fix usage of signed type in skeleton shader
2017-12-13 08:37:56 +01:00
Przemyslaw Czarnota 08c8d46593 Fix #14564 ImmediateGeometry normals act strangely compared to SurfaceTool 2017-12-13 07:45:24 +01:00
Rémi Verschelde 7908dc322a Drop unused OS_Unix::has_data and related logic
Closes #5536.
2017-12-10 17:05:24 +01:00
Rémi Verschelde 663f7e6a61 Fix usage of signed type in skeleton shader
The resulting primitive is drawn as GL_UNSIGNED_SHORT, so uvec4 should be used.
Fixes #12804.
2017-12-10 13:58:36 +01:00
Rémi Verschelde 028f959fb1 PropertyEditor: Filter out resource_local_to_scene
This lets the empty "Global" category disappear again.
Also silence a debug print.
2017-12-10 00:18:10 +01:00
Juan Linietsky 65fb961b8b -Ability to and unwrap lightmap coordinates on import
-Added unwrap functionality to Mesh
-Ability to display and debug mesh UVs
-Added multiline draw, so it's easier and faster to draw UVs
-Many fixes to SurfaceTool
-Fixes to Thekla Unwrap, but it's a piece of ass and it keeps crashing. Will have to go away
2017-12-09 14:18:14 -03:00
Rémi Verschelde ccef401700
Merge pull request #13341 from scayze/interp_v2
Added interpolation qualifiers to shaderlang
2017-12-09 18:12:14 +01:00
Rémi Verschelde 4d6f8f89ed
Merge pull request #13424 from MillionOstrich/particles-pause-fix
Stop particles resetting on pause.
2017-12-09 16:37:02 +01:00
Juan Linietsky 8c78ccb027 After a lot of trial and error, i think rim lighting implementation is now perfect, closes #13986 2017-12-08 11:09:03 -03:00
Juan Linietsky 8717afbfe1 Added small bit of bias depending on lenght for contact shadows, fixes #12726 2017-12-07 16:19:35 -03:00
Rémi Verschelde 13c2ff9320 Style: Apply new clang-format 5.0 style to all files 2017-12-07 08:02:00 +01:00
Rémi Verschelde d5ca9e2f6f Style: Apply clang-format again on all files
Fixes issues introduced by newer clang-format versions or commits
pushed directly without using the clang-format pre-commit hook.
2017-12-07 08:02:00 +01:00
Juan Linietsky e8494f7ab7 Fixed rim lighting glitch, closes #13340, closes #13986 2017-12-06 14:30:49 -03:00
Unknown fd1b94e307 Improve slang, especially in user-visible parts 2017-12-05 15:41:38 +01:00
Juan Linietsky d438ac0aed -Implemented Proxy Textures (needed to solve the problem with ViewportTexture)
-Properly use hierarchy to initialize resources local to scene (solves problem of GUI in 3D)
2017-12-04 15:56:17 -03:00
Rémi Verschelde 9b9fcb1977 Disable invariant gl_Position to workaround Mesa bug 100316
Fixes #13450, though it would be worth reverting if/when the Mesa bug is fixed.
2017-12-03 15:05:39 +01:00
Juan Linietsky d8953fe737 small fix so shadows dont need to use a separate material for world vertex coords (more perf) 2017-12-01 08:55:21 -03:00
Juan Linietsky 0243803117 Properly take into consideration that VERTEX must be written to in opaque pre pass, does some speed up to scenes using triplanar. 2017-12-01 08:45:36 -03:00
Marcelo Fernandez a3f0ffdf24 Fix wasapi going silent when number of channels are not supported 2017-11-30 19:51:27 -03:00
MillionOstrich 9ecde5524d Stop particles resetting on pause. 2017-11-30 17:51:18 +00:00
Juan Linietsky 9678231b10 Changed the dynamic library open function to allow setting the path of the library to open extra libraries. 2017-11-30 10:00:55 -03:00
Rhody Lugo a65c0939fd disable caching for targets using helper functions 2017-11-28 23:24:12 -04:00
Rhody Lugo a4a222d62d use the same cache for all branches for appveyor 2017-11-28 03:23:33 -04:00
Scayze b0fb6b1380 Added interpolation modifiers to shaderlang 2017-11-27 16:47:46 +01:00
Rémi Verschelde 90f9f123fd
Merge pull request #13317 from akien-mga/custom_user_dir
Allow customizing user:// path (folder in OS::get_data_path())
2017-11-26 22:25:02 +01:00
Rémi Verschelde 4a1d1cbbb4
Merge pull request #13290 from Chaosus/projectionfix
Fix invalid transform when skip_vertex_transform used
2017-11-26 21:31:02 +01:00
Juan Linietsky ea70afc9b4
Merge pull request #13264 from zatherz/feature/projectsettings_limits
Add range to anisotropic filter level
2017-11-26 16:04:36 -03:00
Chaosus 284f8f6d91 Fixed invalid transform when skip_vertex_transform used 2017-11-26 22:02:40 +03:00
Juan Linietsky 1c3c9e017b
Merge pull request #13277 from DoctorAlpaca/master
Fix particle preprocessing
2017-11-26 15:59:24 -03:00
Juan Linietsky 22415e5a31
Merge pull request #12572 from RandomShaper/onion-skinning
Onion skinning
2017-11-26 15:13:35 -03:00
Rémi Verschelde af9c67db0c Allow customizing user:// path (folder in OS::get_data_path())
This allows to specify any valid folder name (including with subfolders) to use
as user:// on all platforms. The folder is constrained to the platform-specific
OS::get_data_path() (typically what `XDG_DATA_HOME` resolves to).

Fixes #13236.
2017-11-26 19:02:32 +01:00
volzhs b97e87480e Fix shader compilation fail on Android
Error message from logcat

**ERROR**: SceneShaderGLES3: Fragment Program Compilation Failed:
50:471: S0032: no default precision defined for parameter 'probe'
   At: drivers/gles3/shader_gles3.cpp:167:_display_error_with_code() - SceneShaderGLES3: Fragment Program Compilation Failed:
2017-11-27 01:15:39 +09:00
Juan Linietsky 9738ebcda0 -Fixed height fog (was broken)
-Make sure materials are named in OBJ importer, so they can be saved outside as resources.
2017-11-25 12:32:41 -03:00
Eric Wiltfang 57845b53f3 Fix particle preprocessing. Fixes #12460.
Remove an incorrect check likely left over from copying from the
normal fixed_fps update case.

Also makes sure that the preprocessing_time is always fully simulated,
rather overshooting the mark than stopping early.
2017-11-25 15:41:14 +01:00
Rémi Verschelde d9faf6f2f4 Fix build on macOS and Android after bc2e8d99 2017-11-25 10:42:20 +01:00
Zatherz 1937fd5e07 Add range to anisotropic filter level (1 to 16 with integer steps) 2017-11-25 06:49:23 +01:00
Indah Sylvia ac92c147c6 Completed bc2e8d99e5 so that windows can be built 2017-11-25 11:12:07 +07:00
Juan Linietsky bc2e8d99e5 Made Vector::ptrw explicit for writing, compiler was sometimes using the wrong function,
leading to unnecesary copy on writes and reduced performance.
2017-11-25 00:09:40 -03:00
Pedro J. Estébanez 3aa79fc1a3 Add ability to opt-out buffer swapping in `VS::draw()` 2017-11-25 02:18:28 +01:00
Ruslan Mustakov d42c5646a5 Return and repair file logging
And make it configurable, too.
2017-11-21 16:43:44 +07:00
Juan Linietsky 98cb49283d Ability to change indirect light energy. 2017-11-19 21:46:00 -03:00
Rémi Verschelde ecf80fbbba
Merge pull request #12988 from akien-mga/xdg-home-paths
Add support for XDG Base Directory spec
2017-11-20 00:42:51 +01:00
Rémi Verschelde 9fc0b23210
Merge pull request #13051 from akien-mga/check-gles3-support
Check whether GL context supports the expected API
2017-11-20 00:13:28 +01:00
RoyBerube 4d5a87a422 Visual Studio project creation bug fix
A bug in the /drivers SCons script was preventing files in the /drivers and some in the /thirdparty directories from being added to the VS project.

This will only affect builds that use the 'vsproj=yes' option.
2017-11-19 13:56:48 -07:00
Rémi Verschelde 32c12a92a5 Add initial support for the XDG Base Directory spec
Spec version 0.7 from https://standards.freedesktop.org/basedir-spec/basedir-spec-0.7.html
(latest as of this commit).

Three virtual methods are added to OS for the various XDG paths we will use:
- OS::get_data_path gives XDG_DATA_HOME, or if missing:
  ~/.local/share on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows
- OS::get_config_path gives XDG_CONFIG_HOME, or if missing:
  ~/.config on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows
- OS::get_cache_path gives XDG_CACHE_HOME, or if missing:
  ~/.cache on X11, ~/Library/Caches on macOS and %APPDATA% on Windows

So for Windows there are no changes, for Linux we follow the full split spec
and for macOS stuff will move from ~/.godot to ~/Library/Application Support/Godot.

Support for system-wide installation of templates on Unix was removed for now,
as it's a bit hackish and I don't think anyone uses it.

user:// will still be OS::get_data_path() + "/godot/app_userdata/$name" by
default, but when using the application/config/use_shared_user_dir option
it will now use XDG_DATA_HOME/$name, e.g. ~/.local/share/MyGame.

For now everything still goes in EditorSettings::get_settings_dir(), but
this will be changed in a later commit to make use of the new splitting
where relevant.

Part of #3513.
2017-11-19 20:54:24 +01:00
Rémi Verschelde c574be5566 Check whether GL context supports the expected API
I couldn't test it yet myself (GPU supports GL 4.5), so we'll need to see if it behaves
as expected on systems that don't support OpenGL 3.3 or GL ES 3.0.
2017-11-19 20:47:53 +01:00
Rémi Verschelde 9f134aa5d1 Cleanup old references to GLES2 renderer
There are still some left in the Android Java code, even stuff to swap between
GLES1 and GLES2 support from early Godot days... would be good to see some cleanup
there too one day.

The "graphics/api" option for Android exports is removed, as only GLES 3.0 is supported.
It can be readded when GLES 2.0 support comes back. Fixes #13004.
2017-11-19 17:52:18 +01:00
Rémi Verschelde 73049d115e Rename OS::get_data_dir to OS::get_user_data_dir
Will be needed to avoid confusion with system data path (XDG_DATA_HOME)
and editor data dir in upcoming refactoring.
2017-11-17 20:55:09 +01:00
Rémi Verschelde 0968c8d2f6
Merge pull request #12982 from tagcup/aabb_rename
Rename Rect3 to AABB.
2017-11-17 20:04:29 +01:00
Juan Linietsky 1feeb3e1c8
Merge pull request #12924 from vnen/light-shader
Enable light shaders when light variables are used
2017-11-17 16:02:34 -03:00
Ferenc Arn d28763a4c1 Rename Rect3 to AABB.
Fixes #12973.
2017-11-17 11:01:41 -05:00
andrzej.buczynski 4c0e927ccf Fix alpha dithering in viewports with TransparentBg=false and Usage=2D, issue #11416 2017-11-17 01:40:00 +01:00
Juan Linietsky 6277e6d40a Ability to update parts of an array, and set arrays as dynamic draw 2017-11-14 17:26:35 -03:00
George Marques 78441b486a
Enable light shaders when light variables are used 2017-11-14 13:08:03 -02:00
Juan Linietsky 4c000a05f6 Do not enable light if atlas size is 0, closes #9335 2017-11-13 15:13:01 -03:00
Juan Linietsky 2e3a1caa06 Disable OpenGL warnings unless running with -v, closes #7171 2017-11-13 13:40:07 -03:00
Juan Linietsky 7eabbeb5af remove half_texpixel in canvas since no longer used 2017-11-12 08:29:28 -03:00
Nathan Warden 6adaf8f47a Fixed a bug where clamp_uv was clamping one pixel short, stretching the last pixels. 2017-11-11 07:28:48 -05:00
Rémi Verschelde ed57f0a0d4 Remove get_default_video_mode definition on OSX/iOS
It had been missed in d09160a8b6 and broke compilation
for those platforms.

Took the opportunity to run clang-format on the code base to fix some corner cases
that went through our static tests/were overlooked recently.
2017-11-09 23:36:08 +01:00
Juan Linietsky b279f641c0 Remove performance warnings, closes #11585 2017-11-06 21:53:15 -03:00
Marcelo Fernandez 16327bff8a Improved WASAPI driver logic when devices are connected or disconnected 2017-10-31 13:07:35 -03:00
Ferenc Arn 6e68c86ba6 Add viewport to the other SceneData struct.
This was missed in #12288.
2017-10-30 20:48:33 -04:00
Juan Linietsky 4785e66eea
Merge pull request #12288 from tagcup/expose_viewport_size
Expose VIEWPORT_SIZE in shader language.
2017-10-30 19:32:21 -03:00
Rémi Verschelde 87694d1884 Disable logging until the logs location is sorted out
Temporary workaround for #12277.
2017-10-29 15:50:27 +01:00
Scayze 2c00b68175 Fix shader compiler typo gl_FrotFace 2017-10-27 15:31:24 +02:00
Ferenc Arn a0fc641f25 Expose VIEWPORT_SIZE in shader language.
Fixes #11710.
2017-10-26 15:00:28 -04:00
Rémi Verschelde abea816e54 Revert "Rename Schlick GGX to GGX." 2017-10-23 07:42:36 +02:00
Ferenc Arn fd166d6fda Partially undo #11807.
Specular light at zero roughness needs some discussion. Until we do that, this fixes #12309.
2017-10-22 16:18:54 -04:00
Juan Linietsky b4f0f59d9f Many fixes to SSAO, should be good now. 2017-10-22 13:52:48 -03:00
Rémi Verschelde d60b774924 Merge pull request #12297 from tagcup/clearcoat_fix
Don't add clearcoat BRDF to specular light as-is.
2017-10-22 13:18:24 +02:00
Ferenc Arn 06fcbe0092 Don't add clearcoat BRDF to specular light as-is.
BRDF needs to be multiplied with N.L, the incoming light and attenuation. Also specular_blob_intensity should affect clearcoat.
2017-10-21 20:25:17 -04:00
Ferenc Arn cb0bf1edea Rename Schlick GGX to GGX.
Schlick's approximation and GGX are orthogonal concepts.

Furthermore, it's usage so far has been inconsistent: we don't even use it with anisotropic SchlickGGX, and Burley (Disney) diffuse does use it while its name doesn't indicate it.

The use of Schlick's approximation in Burley and GGX is an implementation detail and doesn't need to be reflected to the namig.
2017-10-21 19:35:54 -04:00
Ferenc Arn 6890245321 Corrections to #11807.
Added missing metallic parameter, also fixed a missed a case where wrong roughness condition was used.
2017-10-21 13:40:14 -04:00
Juan Linietsky a2a4f9a62a Merge pull request #11807 from tagcup/roughness_metallic_limiting_cases
Fix the condition when specular light calculation is avoided (should …
2017-10-21 13:44:41 -03:00
Juan Linietsky efe9a6ff5a Fixed unnecesary structure copying in bugfix. 2017-10-20 16:13:48 -03:00
Hiroshi Ogawa e7a370e170 Fix depth draw alpha prepass for shadow 2017-10-19 14:28:44 +09:00
Hiroshi Ogawa 7ee7dec5a2 Fix directional light specular 2017-10-17 15:35:22 +09:00
Rémi Verschelde 1abab7b964 Merge pull request #12060 from mutato/windows_folder_creation_fix
DirAccessWindows: fix wrong path given to CreateDirectoryW, fixes #12019
2017-10-15 20:22:13 +02:00
Hiroshi Ogawa 59544c74fe Fix render mode specular schlick ggx 2017-10-14 19:32:13 +09:00
Falk Moser 93ef512422 Fixed issue #12019, which prevented the creation of new folders on Windows platform 2017-10-13 00:34:05 +02:00
Rémi Verschelde 552384e737 Merge pull request #12048 from hi-ogawa/fix-viewport-vflip
Fix viewport vflip
2017-10-12 13:38:29 +02:00
Hein-Pieter van Braam abe47eaa63 Merge pull request #12009 from Elinvention/fork/execvp
Use execvp instead of execv to allow OS.execute() to search through PATH.
2017-10-12 09:54:08 +02:00
Hiroshi Ogawa cb2e88ead6 Fix viewport vflip 2017-10-12 16:25:13 +09:00
Ferenc Arn 9324555998 Fix the condition when specular light calculation is avoided (should be roughness == 1).
Also avoid calculating diffuse light calculation when metallic == 1, and test against clearcoat's own parameter to check whether to do clearcoat.
2017-10-11 17:22:44 -04:00
Rémi Verschelde bac5de0782 Merge pull request #11966 from BastiaanOlij/stereo_sky
Fix issues when rendering panoramic sky in stereoscopic
2017-10-11 22:30:44 +02:00
Rémi Verschelde 37bc372194 Merge pull request #11818 from tagcup/anisotropic_ggx
Fix anisotropic GGX D function, and introduce and use anistropic GGX …
2017-10-11 22:20:24 +02:00
Gilles Roudiere 45c878e380 Merge pull request #11958 from hi-ogawa/fix-shadow-map-front-face
Fix front face definition
2017-10-11 11:02:43 +02:00
Elia Argentieri 600efa0346 Use execvp instead of execv to allow OS.execute() to search through PATH.
Fix #12003.
2017-10-11 01:07:27 +02:00
Andreas Haas dda64a3de6 Merge pull request #11959 from hi-ogawa/fix-shadow-atlas-invalidation
Track LightInstance::shadow_atlases so that it will be freed properly
2017-10-10 20:57:09 +02:00
Bastiaan Olij 179f483782 Fix issues when rendering panoramic sky in stereoscopic 2017-10-10 22:51:37 +11:00
Ferenc Arn 12596cb5bc Fix anisotropic GGX D function, and introduce and use anistropic GGX G function.
Also fixed isotropic GGX G function with Schlick approximation, and added a commented out version without the approximation.
Added references.
2017-10-09 12:29:05 -04:00
Rémi Verschelde 9f26733b44 Merge pull request #11827 from hi-ogawa/fix-shader-type-error
Fix type error in subsurface scattering shader code
2017-10-09 12:25:46 +02:00
Rémi Verschelde e8b9cca614 Merge pull request #11810 from marcelofg55/osx_export_improv
OS X export code improvements
2017-10-09 12:20:39 +02:00
Hiroshi Ogawa 1967972f6e Track LightInstance::shadow_atlases so that it will be freed properly 2017-10-09 09:51:10 +09:00
Hiroshi Ogawa 2c966493c5 Fix front face definition 2017-10-09 09:18:32 +09:00
Hiroshi Ogawa 8cf5f615f5 Fix type error in subsurface scattering shader code 2017-10-04 19:47:45 +09:00
Juan Linietsky b12455cde8 Avoid failed viewport when size is too smal, fixes #9891 2017-10-03 17:36:14 -03:00
Marcelo Fernandez 4b695c3bdf OS::execute can now read from stderr too when executing with a pipe 2017-10-03 15:09:04 -03:00
Ferenc Arn f48b162a6b Various clean ups and cosmetic changes in scene.glsl.
Use self-documenting names for variables which are otherwise confusing. Also avoid recalculating certain terms.
2017-10-03 11:02:39 -04:00
Andreas Haas 132ba0ed97 Merge pull request #11568 from endragor/loggers
Extract logging logic
2017-10-02 23:51:26 +02:00
Andreas Haas 1e9465096d Merge pull request #11700 from tagcup/clearcoat_fix
Fix clearcoat without Schlick-GGX specular.
2017-10-02 22:51:51 +02:00
Poommetee Ketson 3f4e973a60 Merge pull request #11716 from marcelofg55/coreaudio_driver
Merged iphone and osx audio drivers into drivers/coreaudio
2017-10-02 23:37:55 +07:00
Leon Krause 36298186f4 Merge pull request #11774 from ISylvox/fix-msvc-build
Fixed MSVC build issue introduced by c864b78
2017-10-02 17:06:21 +02:00
Indah Sylvia a20ddfdb63 Fixed MSVC build issue introduced by commit c864b782c0 2017-10-02 19:10:07 +07:00
Juan Linietsky 66987d6878 missing PI division on vertex shader 2017-10-02 09:09:32 -03:00
Juan Linietsky 1b358783ce Slight proposed fixes to PBR. 2017-10-01 21:51:11 -03:00
Juan Linietsky c864b782c0 Using advise from Matias, left the 0-1 range for lights, divisiom by PI, and multiplied lights by PI internally. 2017-10-01 20:33:38 -03:00
Juan Linietsky c9a925c4e0 Switched Burley/Lambert, and restored diffuse term to 0-1 range for compatibility. 2017-10-01 19:08:49 -03:00
Juan Linietsky 99a464ceb4 Merge pull request #11694 from tagcup/lambert_normalization
Ensure that Lambert is energy conserving.
2017-10-01 12:18:40 -03:00
Ferenc Arn ece18153c6 Add missing N.L factor to Burley's contribution to radiance. 2017-10-01 10:20:57 -04:00
Ferenc Arn dfaf071ae3 Fix environmental BRDF. 2017-09-30 20:28:30 -04:00
Marcelo Fernandez 12d40fa03f Merged iphone and osx audio drivers into drivers/coreaudio 2017-09-30 02:16:42 -03:00
Bastiaan Olij cf56711a7e near and far are reserved for near and far pointers in MSVR 2017-09-30 10:43:34 +10:00
Juan Linietsky d4e20555e8 Ability to set a custom FOV makes it possible to use sky on orthogonal view. Closes #9186 2017-09-29 18:56:52 -03:00
Ferenc Arn 3e09b9b335 Fix clearcoat without Schlick-GGX specular.
Fixes #11698.
2017-09-29 10:59:05 -04:00
Ferenc Arn 33c600fedc Ensure that Lambert is energy conserving.
Also remove the diffuse_color factor in Oren-Nayar (which was already taken care of below, oops).
2017-09-29 09:47:06 -04:00
Gilles Roudiere 2c5fa0947d Merge pull request #11672 from tagcup/fix_oren_nayar
Fix Oren-Nayar diffuse.
2017-09-29 13:47:38 +02:00
Ferenc Arn 8cb67b03a9 Fix Oren-Nayar diffuse. 2017-09-28 19:26:01 -04:00
Indah Sylvia 392a94686c Fixed typo: 'texure' to 'texture' 2017-09-29 04:40:01 +07:00
Juan Linietsky 4f39ce32b9 Fixes to light shaders, should work now.. 2017-09-27 21:45:47 -03:00
Ferenc Arn ae78413bb1 Avoid pow in Burley diffuse. 2017-09-26 22:15:38 -04:00
Elliott Sales de Andrade 45a9a680a3 Use BoolVariable for third-party options. 2017-09-25 14:36:30 -04:00
Elliott Sales de Andrade ffab67b8da Use BoolVariable in target/component/advanced options. 2017-09-25 14:36:02 -04:00
Ruslan Mustakov 1a2311e350 Extract logging logic
Previously logging logic was scattered over OS class implementations
with plenty of duplication. Major changes in this commit:

 - Extracted logging logic into a separate Logger hierarchy. It allows
   easy configuration of logging mechanism depending on compile-time or
   run-time configuration.

 - Implemented RotatedFileLogger which is usually used with StdLogger,
   providing persistency of logs. It is often important to be able to
   obtain logs of the game even in production to be able to understand
   what happened prior to some problem. On mobile there previously was
   no way to obtain the logs aside from having the device connected to
   your machine.

 - flush() is not performed in release mode for every logged line. It
   is only performed for errors.
2017-09-25 16:19:21 +07:00
Juan Linietsky 81c9cfdc1b Added light affect parameter to baked AO 2017-09-23 23:10:34 -03:00
Juan Linietsky d3ea92257d -Fixed redraw always on 3D viewprot bug
-Changed manipulation inertia default values. Do not touch them again or I'll cut your fingers and eat them.
2017-09-23 17:28:28 -03:00
Juan Linietsky fbabef6da3 Fixes to rim parameter in shader 2017-09-23 08:27:48 -03:00
Juan Linietsky bf371dcb32 Added proximity and distance fade to SpatialMaterial 2017-09-21 15:20:28 -03:00
letheed 5ad9be4c24 Rename pos to position in user facing methods and variables
Rename user facing methods and variables as well as the corresponding
C++ methods according to the folloming changes:

* pos -> position
* rot -> rotation
* loc -> location

C++ variables are left as is.
2017-09-20 13:11:10 +02:00
Rémi Verschelde 53bbc046ee Merge pull request #11252 from marcelofg55/fix_noaudio_crash
Fix crash when no audio driver is available
2017-09-17 22:48:22 +02:00
Marcelo Fernandez 3528b1e571 Fix x11 exported executables not getting the +x flag 2017-09-17 14:40:58 -03:00
Rémi Verschelde 07d18a0076 Merge pull request #11276 from hpvb/fix-11270
Only do 'drive' discovery on X11
2017-09-17 18:44:25 +02:00
Hein-Pieter van Braam 65af96eab0 Only do 'drive' discovery on X11
As it turns out older versions of the Android NDK have mntent.h but not
a complete implementation. If it did work it would most likely give the
wrong results on Android anyway.

This commit enables the UNIX drive discovery only for X11

We also missed '/run/media' (default for gnome desktops) in the list of
places to look for 'drives' on Linux. Add that to the list also.

This fixes #11270
2017-09-14 23:04:30 +02:00
Wilson E. Alvarez 072e379ffe Renamed function arguments to keep them consistent between declaration and implementation 2017-09-14 13:49:15 -04:00
Marcelo Fernandez 7a4c0ff35e Fix crash when no audio driver is available 2017-09-13 20:54:55 -03:00
Rémi Verschelde cc7c892bca Merge pull request #11160 from marcelofg55/drive_funcs_x11
Implemented DirAccess get_drive and get_drive_count for Linux
2017-09-13 20:04:54 +02:00
Rémi Verschelde e73e00d369 Style: Apply clang-format to @reduz's changes
[ci skip]
2017-09-13 09:13:34 +02:00
Marcelo Fernandez e5f905a735 Implemented DirAccess get_drive and get_drive_count for Linux 2017-09-12 23:43:08 -03:00
Marcelo Fernandez 730d36f350 Fixed issues with surround sound on audio server 2017-09-12 15:13:28 -03:00
Rémi Verschelde 8b76199b4b Merge pull request #10897 from themindoverall/fix_box_select
Fix draw_rect when width or height < 0
2017-09-12 15:36:23 +02:00
Juan Linietsky 1c5376ae59 Many fixes to visual script, changed virtuals override for a proper selector. 2017-09-12 07:58:54 -03:00
Rémi Verschelde aabbd00284 Merge pull request #10908 from hpvb/fix-unused-variables
Fix unused variable warnings
2017-09-12 12:55:53 +02:00
Rémi Verschelde cf941fdc35 Merge pull request #11026 from hpvb/fix-assign-in-if
Remove assignment and declarations in if statements
2017-09-12 11:57:49 +02:00
Rémi Verschelde 2b50dc5d4f Merge pull request #11057 from hpvb/fix-various-warnings
Fix various assorted warnings
2017-09-12 11:39:47 +02:00
Rémi Verschelde 3941e01a57 Merge pull request #11041 from hpvb/fix-clang-format-error
Fix serveral recent new clang-format errors

[ci skip]
2017-09-12 11:16:36 +02:00
supagu e7c5706f71 DirAccess constructor sets current_dir to an absolute path 2017-09-10 20:03:26 +09:30
Hein-Pieter van Braam b2a38854fd Fix unused variable warnings
The forth in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-08 15:03:53 +02:00
Hein-Pieter van Braam 8230bf0a2f Remove assignment and declarations in if statements
After discussing with @reduz and @akien-mga it was decided that we do
not allow assignments or declarations in if statements. This PR removes
the instances of this I could find by automated means.
2017-09-08 14:59:15 +02:00
Hein-Pieter van Braam 67a706fc1b Fix various assorted warnings
Fix various warnings that don't have enough instances to merit
individual commits. Also fixes a potential bug in audio_server.cpp.
2017-09-08 14:57:48 +02:00
Juan Linietsky 5ca3af3371 Ability to use a sky for reflection together with a background color. 2017-09-07 20:45:37 -03:00
Juan Linietsky c023a132d0 Fixed orthogonal projection in all effects and post processes 2017-09-07 20:16:33 -03:00
Hein-Pieter van Braam 5e18967d77 Fix serveral recent new clang-format errors 2017-09-08 00:20:16 +02:00
Juan Linietsky eedb39091a Several fixes to directional shadows, closes #10926
Added option to change directional light range mode, between optimized and stable. For Orthogonal, you might need to use optimized.
2017-09-07 18:00:47 -03:00
Juan Linietsky b19b7aebf7 Merge pull request #11027 from hpvb/fix-11022
Fix EOF in wav file importer
2017-09-07 07:53:56 -03:00
Juan Linietsky 8047127bc6 Force redraw when HDR auto exposure is enable in all frames, fixes #10784 2017-09-06 23:02:06 -03:00
Juan Linietsky dd854768da -Fix folow surface in subsurface scattering, closes #10696
-Fixed filter kernels of subsurface scattering so quality settings make more sense
2017-09-06 21:45:02 -03:00
Hein-Pieter van Braam cbedb54408 Fix EOF in wav file importer
In #10973 I reset the state of the stream in get_pos() assuming that the
ftell failing would cause proper error checking. This is not how this
class was designed, however. This commit fixes the get_8() method to
not return unitialized data on eof, and removes the wrong error resets
added in #10973.

This fixes #11022
2017-09-07 00:26:17 +02:00
Juan Linietsky ddadc782ba Fix frame selection in 2D particles, closes #10668 2017-09-06 08:31:11 -03:00
supagu f4994e750d Further symlink fixes 2017-09-06 18:09:27 +09:30
Juan Linietsky e192c1a7d3 Fix directional vertex shaded light which was using normal instead of light color, closes #10608 2017-09-05 17:31:09 -03:00
Juan Linietsky 7eb8760477 Added support for for, break and continue. Closes #10560, closes #10661 2017-09-05 15:25:34 -03:00
Rémi Verschelde 54e81c7955 Merge pull request #10990 from MednauN/unshaded-fix
Fix unshaded materials render
2017-09-05 15:51:35 +02:00
Evgeny Zuev 094237eca0 Fix unshaded materials render 2017-09-05 12:19:15 +07:00
Juan Linietsky 2802dced84 Automatically redraw when shaders using TIME are visible, fixes #10554 2017-09-05 00:30:39 -03:00
Juan Linietsky e611ff5f01 Fix opaque pre pass, closes #10472 2017-09-04 20:27:45 -03:00
Rémi Verschelde 44adf75cd5 Merge pull request #10986 from hpvb/fix-unix-file-open
Fix UNIX file open
2017-09-05 01:18:53 +02:00
Hein-Pieter van Braam 5fed954a1b Fix UNIX file open
In #10973 I refactored FileAccessUnix::_open() but I accidentally made
it impossible to create new files.

This fixes that and fixes #10984
2017-09-05 01:14:14 +02:00
Rémi Verschelde 27feafbe12 Merge pull request #10973 from hpvb/fix-file-access-unix
Make UNIX file access more correct
2017-09-05 00:33:20 +02:00
Rémi Verschelde 77d5013f94 Merge pull request #10974 from henkz1/gles-10963
Don't compare float to int
2017-09-05 00:12:43 +02:00
Rémi Verschelde e0801111c4 Merge pull request #10883 from supagu/symlink2
Another take at fixing symlinks
2017-09-04 23:27:32 +02:00
Hein-Pieter van Braam a7c2ff5c94 Make UNIX file access more correct
Check for errors in the POSIX recommended ways.
2017-09-04 22:23:29 +02:00
Henrik Andersson e0a19a77e5 Don't compare float to int 2017-09-04 22:21:55 +02:00
Juan Linietsky 281fb4e4fb Added transmission shader parameter. 2017-09-03 10:30:37 -03:00
Fabian Mathews dccdef1327 Another take at fixing symlinks 2017-09-03 13:46:05 +09:30
Chris Serino 3d6ccda188 Fix draw_rect when width or height < 0. Fixes #10849 2017-09-02 11:58:04 -05:00
Rémi Verschelde 8e75e7311b Merge pull request #10858 from letheed/add-shadow_filter-variant
add shadow_filter variant PCF7
2017-09-02 12:13:01 +02:00
Hein-Pieter van Braam 9c63ab99f0 Fix use of unitialized variables
The second in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-02 01:59:26 +02:00
Rémi Verschelde dac150108a Merge pull request #10846 from hpvb/fix-sign-compare
Fix signed and unsigned comparisons
2017-09-01 21:52:55 +02:00
Rémi Verschelde 3694c58d3c Merge pull request #10775 from marcelofg55/buffersize_fixes
Corrections to audio buffer size calculations
2017-09-01 21:41:24 +02:00
Juan Linietsky 6fa6149517 Fix some argument ordering, closes #10010 2017-09-01 15:01:17 -03:00
Juan Linietsky 8f30c52a37 Removed ontop property, added a material rendering priority system. Fixes #9935, closes #10135 2017-09-01 13:01:08 -03:00
Marcelo Fernandez f231eadc9e Corrections to audio buffer size calculations 2017-09-01 11:12:13 -03:00
Poommetee Ketson ed606ded52 Fix files header 2017-09-01 21:07:55 +07:00
letheed 3a188015be add shadow_filter variant PCF7 2017-09-01 15:01:24 +02:00
Hein-Pieter van Braam f9467ec1ea Fix signed and unsigned comparisons
The first in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-01 08:13:12 +02:00
Juan Linietsky 51066fcde7 Merge pull request #10305 from H4kor/gles3
Fixes a bug in multimesh_instance_get_color
2017-08-31 08:44:22 -03:00
Rémi Verschelde 82208c1e8b Merge pull request #10417 from bojidar-bg/x-fix-tilemap-transpose
Implement texture UV transpose in the gles3 renderer
2017-08-31 13:17:39 +02:00
Rémi Verschelde f1e3dec442 Merge pull request #10624 from letheed/master
Fix shadow filter pcf5 implemented as pcf7
2017-08-31 11:01:57 +02:00
Juan Linietsky a1d7c496b9 Improved default directional shadow params, added bias split scale, closes #9828 2017-08-30 08:08:44 -03:00
Juan Linietsky 06d7e36898 Changed bools to uint32_t as this may be a compiler bug.. 2017-08-29 15:09:59 -03:00
Juan Linietsky e8b05ca996 -Fixed screen edge SSAO filter, fixes #9678
-Raised the SSAO limits, making the effect a lot more useful
-Still pending to enable tresholding to avoid some hollow places
2017-08-29 11:46:02 -03:00
Juan Linietsky 089cf8176e removed DISCARD built in variable, replaced by actual discard GLSL instruction, fixes #9677 2017-08-29 10:15:49 -03:00
Bojidar Marinov 92a42668f2
Implement texture UV transpose in the gles3 renderer
Now tilemap rotations work again \o/
2017-08-29 14:51:35 +03:00
Rémi Verschelde 9a8a0e20e5 Merge pull request #10552 from RandomShaper/improve-posix
Improve Mac/UNIX conformance/reliability
2017-08-29 00:07:07 +02:00
Rémi Verschelde ddbd133097 Merge pull request #10683 from marcelofg55/rtaudio_buffer_fix
Fix RtAudio driver buffer_size incorrect calculation
2017-08-28 23:03:04 +02:00
Rémi Verschelde 3ce6972d2c Merge pull request #10692 from marcelofg55/wasapi_driver
Added new WASAPI driver for Windows
2017-08-28 22:53:53 +02:00
Rémi Verschelde 6ef7783abb Merge pull request #10662 from hoelzl/python3-v3
Make build scripts Python 3 compatible
2017-08-28 00:05:15 +02:00
Juan Linietsky d23f323cde -Moved script run to editor, removed from project
-fixed to code completion
-fix shader crash bug reported by tagcup
2017-08-27 19:04:19 -03:00
Matthias Hoelzl b6e1e47e3a Make build scripts Python3 compatible
- The Windows, UWP, Android (on Windows) and Linux builds are
  tested with Scons 3.0 alpha using Python 3.
- OSX and iOS should hopefully work but are not tested since
  I don't have a Mac.
- Builds using SCons 2.5 and Python 2 should not be impacted.
2017-08-27 23:05:39 +02:00
Rémi Verschelde 7ad14e7a3e Dead code tells no tales 2017-08-27 22:13:45 +02:00
Marcelo Fernandez 8e814774b1 Added new WASAPI driver for Windows 2017-08-27 15:26:15 -03:00
Marcelo Fernandez 7e6b015769 Fix RtAudio driver buffer_size incorrect calculation 2017-08-27 10:00:35 -03:00
Rémi Verschelde bd282ff43f Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
Wilson E. Alvarez 7a07895920 Added/Fixed null pointer checks 2017-08-26 16:58:47 -04:00
Juan Linietsky 1894157c9f -Massive clean up to gizmos
-Make sure handles are always visible (on top)
-Fixed instanced scene selection (should work properly now)
-Added interpolated camera
-Customizable gizmo colors in editor settings
2017-08-26 00:47:28 -03:00
Juan Linietsky 90445aae67 Fixed opaque unshaded materials, they go through the regular opaque render list, closes #9917 2017-08-25 09:56:10 -03:00
letheed a5d765db4f fix shadow filter pcf5 implemented as pcf7 2017-08-25 02:34:28 +02:00
Hein-Pieter van Braam cacced7e50 Convert Object::cast_to() to the static version
Currently we rely on some undefined behavior when Object->cast_to() gets
called with a Null pointer. This used to work fine with GCC < 6 but
newer versions of GCC remove all codepaths in which the this pointer is
Null. However, the non-static cast_to() was supposed to be null safe.

This patch makes cast_to() Null safe and removes the now redundant Null
checks where they existed.

It is explained in this article: https://www.viva64.com/en/b/0226/
2017-08-24 23:08:24 +02:00
Pedro J. Estébanez d806ad4a3d Implement custom thread numbering for POSIX
For every UNIX-derived (Android, Linux, macOS, iOS) flavor, a global counter is atomically incremented on thread start. That id is kept as thread-local storage.

Therefore, thread ids are sequential numbers, trivially comparable. This improves the previous state of things, in which `pthread_t` were casted to `Thread::ID` and unportabily compared. Also big, ugly thread ids appeared.
2017-08-24 07:02:55 +02:00
Pedro J. Estébanez a560a62118 Make OS::delay_usec() more reliable on UNIX
Implemented with `nanosleep()`. `usleep()` is deprecated.
Also loops to ensure that __at least__ the requested time is waited, accounting for spurious interruptions.

May help in situations like reattempting to connect to the debugger.
2017-08-24 07:02:55 +02:00
Gilles Roudiere 591a892c2e fix ssao issue with intel hd**** hardwares 2017-08-23 00:10:37 +02:00
Juan Linietsky 294e912a84 Fade last cascade in directional shadow, closes #9779 2017-08-22 12:17:20 -03:00
Juan Linietsky e54c4028ef Invalid materials or shaders will now interrupt the next chain in materials, closes #9570 2017-08-22 11:23:40 -03:00
Rémi Verschelde 411f0755a8 Fix Reindhart tonemapping, invalid type in signature
Fixes #10533.
2017-08-22 08:06:54 +02:00
Juan Linietsky 00a26f512c Several fixes to subsurface scattering. Closes #9530 2017-08-21 21:38:01 -03:00
Rémi Verschelde df590fc2d3 Merge pull request #10340 from Rubonnek/remove-unnecessary-assignments
Removed unnecessary assignments
2017-08-22 00:58:12 +02:00
Rémi Verschelde e9c43cecbf Merge pull request #10433 from djrm/pr_svg_support
SVG support
2017-08-21 23:49:07 +02:00
Juan Linietsky 247c2f7be3 Revert "Reworked change_dir to support symlinks" 2017-08-21 18:06:01 -03:00
Wilson E. Alvarez 738d2ab969 Removed unnecessary assignments 2017-08-21 15:15:55 -04:00
Juan Linietsky 0bdbe370bf Implemented missing opaque prepass render mode, fixes #9452 2017-08-20 21:26:15 -03:00
Daniel J. Ramirez da8fecf25e Added support for SVG 2017-08-20 13:53:02 -05:00
Juan Linietsky 831e21e89b Properly initialize color hinted vec4 uniforms to 0,0,0,1 fixes #9354 2017-08-20 12:35:43 -03:00
Juan Linietsky 7e5890d23d -Fix all shadow and culling related issues, fixes #9330 2017-08-19 20:07:21 -03:00
Juan Linietsky 8fc6bb8f77 Added polygon antialiasing, but it does not work on nvidia. Will have to try something else.. 2017-08-19 13:14:38 -03:00
Rémi Verschelde 1a92906b68 Merge pull request #10406 from marcelofg55/closest_power_of_2
Add closest_power_of_2 func and implement mix_rate/latency on OS X
2017-08-18 08:12:56 +02:00
Marcelo Fernandez eab850524e Add closest_power_of_2 func and implement mix_rate/latency on OS X 2017-08-17 19:51:13 -03:00
Juan Linietsky 3a4ff3402d Oops, fixed wrong color masking problem. Closes #10149 2017-08-17 18:33:59 -03:00
Rémi Verschelde 22d21ebef0 Merge pull request #8144 from supagu/symlink
Reworked change_dir to support symlinks
2017-08-17 11:50:21 +02:00
Bojidar Marinov 995fca44b2
Fix particles emitting when emitting is set to false in scene
Caused by #10297 calling particles_restart() on the same frame as the one set_emitting(false) is called. The rasterizer would wait a frame, and then set emitting back to true.
2017-08-16 23:38:36 +03:00
TwistedTwigleg 00f6c85928 Synchronize parameter names in definition and declaration
Fixes #10244.
2017-08-16 17:22:23 +02:00
Rémi Verschelde f2764dd15d Merge pull request #10343 from Faless/html5_fixes_2
Use precision for samples only when #version 300 es
2017-08-16 17:09:57 +02:00
Fabio Alessandrelli 2d48f4ecf1 Use precision for samples only when #version 300 es
Fix #10332
2017-08-16 15:04:21 +02:00
Wilson E. Alvarez 21d281c4a9 Use const reference where favorable 2017-08-14 13:28:06 -04:00
Niko Abeler 5d2b059d46 fixed multimesh_instance_get_color 2017-08-12 16:17:53 +02:00
Fabio Alessandrelli 9b9a723c77 Some fixes for shaders and WebGL2
Add padding to UBO data to be multiple of 16 bytes
Add precision definition for samplers
Replace texture2D (deprecated) with texture in shaders
2017-08-11 23:26:24 +02:00
Fabio Alessandrelli f863c0ca14 Explicitily unsed AI_NUMERICHOST flag to fix HTML5 2017-08-11 19:39:36 +02:00
Juan Linietsky df573f5c3a -Restored Sprite3D to working function, fixes #2061, fixes #9738
-Restored an alpha scissor property in Material
2017-08-08 17:23:44 -03:00
Juan Linietsky 144226af51 sorry, leftover bug fixed 2017-08-08 08:31:34 -03:00
Juan Linietsky 78177483b5 -Made visual server time affected by global time scale, closes #5583
-Restored time rollover in visual server
2017-08-08 08:25:35 -03:00
Juan Linietsky 539fbad919 Restored black bars and custom images instead of black bars, closes #1571 2017-08-07 18:09:13 -03:00
Thomas Herzog 5f48c3cc07 Merge pull request #10055 from henkz1/immediate
Fix ImmediateGeometry
2017-08-07 23:09:01 +02:00
Rémi Verschelde 3121b3a4f4 Merge pull request #10141 from ISylvox/lower_case_godot_api
Makes all Godot API's Methods lower_case
2017-08-07 14:59:39 +02:00
bruvzg 839cb018b2 Re-revert #378b1e6 for s3tc 2017-08-07 14:59:14 +03:00
Indah Sylvia 5ae78fdf6a Makes all Godot API's methods Lower Case 2017-08-07 18:24:35 +07:00
bruvzg 20c90186be Revert #378b1e6 for s3tc 2017-08-07 12:35:54 +03:00
Rémi Verschelde 2bb8ab7b89 Merge pull request #10045 from marcelofg55/audioserver_finish
Fix double finalisation of audio drivers
2017-08-07 11:11:03 +02:00
Juan Linietsky 378b1e6cf0 RGTC and S3TC are now always enabled on desktop, given the spect dictates they should be. Fixes #9267, Fixes #9939 2017-08-06 22:22:42 -03:00
Juan Linietsky 2ea64d2dc1 Use vertex distance instead of z, fixes #9108 2017-08-06 21:57:40 -03:00
Henrik Andersson ca497df2d3 Fix rendering of ImmediateGeometry with UVs
When using set_uv or any attrib except vertex, the geometry broke.
2017-08-03 05:06:06 +02:00
Henrik Andersson fdc421836f Make it possible to render ImmediateGeometry
Geometry for ImmediateGeometry was never added inside _fill_render_list.
2017-08-03 04:04:11 +02:00
Marcelo Fernandez 1ca107a057 Fix double finalisation of audio drivers 2017-08-02 11:45:19 -03:00
Indah Sylvia 690ceeb17a remove meaningless print line from editor console 2017-08-02 13:27:01 +07:00
Juan Linietsky b276d92c8a Few small GI Probe fixes 2017-07-29 00:04:29 -03:00
bruvzg 1a03cd537f Add missing max. number of samples (MSAA) check 2017-07-27 17:56:43 +03:00
Karroffel 135c2112ad added an optional parameter to OS symbol lookup
When looking up a symbol from a library, previously an error was
shown when the symbol did not exist. That caused confusion when the
lookup was completely optional.
This adds a new parameter to that method so that those errors can
be handled manually if needed.
2017-07-27 11:13:21 +02:00
Poommetee Ketson 0154098531 Fix various property not found errors 2017-07-26 20:03:13 +07:00
Juan Linietsky f5277e347d Fixes to glow and auto exposure, closes #9797, closes #9106 2017-07-26 00:40:32 -03:00
Juan Linietsky e15a0c5243 Merge pull request #9712 from BastiaanOlij/fix_checking_framebuffer
add missing framebuffer check
2017-07-24 18:37:14 -03:00
Evgeny Zuev 4ed6e4a70e Fix switching SRGB extension happen before binding of texture
Previously, texture parameter `_TEXTURE_SRGB_DECODE_EXT` was changed
before the call of `glBindTexture`, which caused modification of previously
bound texture instead of desired one. Now it's changed after `glBindTexture`.
2017-07-24 18:25:55 +07:00
Rémi Verschelde 38c471bef6 Merge pull request #9765 from Noshyaar/pr-clang
Clang-formatting *.cpp and *.h (some files excluded)
2017-07-23 13:16:48 +02:00
Juan Linietsky 772485cdb3 Several changes to better run in mobile. 2017-07-22 14:08:17 -03:00
Poommetee Ketson c7c65ca6ba Clang-formatting *.cpp and *.h (some files excluded) 2017-07-22 18:14:08 +07:00
Juan Linietsky 25678b1876 -Renamed GlobalConfig to ProjectSettings, makes more sense.
-Added system for feature overrides, it's pretty cool :)
2017-07-19 17:06:03 -03:00
BastiaanOlij 8513bbdb8b add missing framebuffer check 2017-07-20 00:04:19 +10:00
Juan Linietsky bbada82f80 -Reorganized all properties of project settings (Sorry, Again).
(Lot's of bloat accumulated, so it was time for clean up.)
-Made EditorSettings and ProjectSettings search more useful (search in sections too)
2017-07-17 22:18:58 -03:00
David Carlier df87ad14d0 get_executable_path slight change to make it work under OpenBSD 2017-07-16 10:53:51 +01:00
Juan Linietsky 3da3a36034 Many fixes to improve GI Probe quality 2017-07-15 23:24:37 -03:00
Juan Linietsky 5dd7c3b6ab Fix to make voxel cone tracing work properly again 2017-07-15 20:02:56 -03:00
Juan Linietsky 741145febd -Fix for multiple reflection probes causing issues.
-Fix for positional sound corruption to avoid making people deaf.
2017-07-15 18:42:06 -03:00
Juan Linietsky 2e73be99d8 Lots of work on Audio & Physics engine:
-Added new 3D stream player node
-Added ability for Area to capture sound from streams
-Added small features in physics to be able to properly guess distance to areas for sound
-Fixed 3D CollisionObject so shapes are added the same as in 2D, directly from children
-Fixed KinematicBody API to make it the same as 2D.
2017-07-15 08:32:34 -03:00
Rémi Verschelde d23fc16b2d Merge pull request #9564 from Noshyaar/pr-threshold
Refactor 'treshold' to 'threshold'
2017-07-08 23:51:53 +02:00
Juan Linietsky e577c5b070 Some adjustments to toon material to make it more flexible
Ability to also disable specular
2017-07-08 14:01:56 -03:00
Juan Linietsky f4c8c552f9 Added triplanar mapping, toon mode, and more specular modes for materials. Added multipass support for materials. 2017-07-08 12:36:15 -03:00
Poommetee Ketson 2fd204c35e Refactor 'treshold' to 'threshold' 2017-07-08 22:24:56 +07:00
Juan Linietsky 84de71872f -Added triplanar mapping modes
-Some fixes to shader lang
2017-07-08 08:07:49 -03:00
Juan Linietsky 1a857c5149 Fixed bug regarding to strange black shapes appearing in ice from material tester demo 2017-07-05 22:36:13 -03:00
Juan Linietsky 12a8fedfe6 Some changes to dual paraboloid envmap generation, fixes somme bleeding 2017-07-05 19:39:45 -03:00
Juan Linietsky 7263137dba Implemented environment arrays for skybox reflection and roughness, quality increase is enormous. 2017-07-04 23:53:08 -03:00
Juan Linietsky 2a3e00c8c7 -Many fixes to VisualScript, fixed property names, etc.
-Added ability to set/get a field in GetSet, as well as assignment ops
-Added a Select node
-Fixed update bugs related to variable list and exported properties, closes #9458
2017-06-30 21:35:05 -03:00
Robert Hernandez ffe8f8ca21 Fixed NinePatches not working on HTML5 2017-06-28 19:17:59 -04:00
Juan Linietsky 3ce046ee0c -Fixed SCREEN_TEXTURE and other related 2D shader parameters.
-Fixded BackBuffercopy object
2017-06-26 22:58:46 -03:00
Juan Linietsky 83ae9a5e28 Ability to restart particle system with a function call 2017-06-25 08:01:50 -03:00
Poommetee Ketson e3998528e0 BuildSystem: generated files have .gen.extension 2017-06-25 07:55:01 +07:00
Juan Linietsky 0cac32910a -Restored support for Canvas BG mode on Environment
-Improved ease of use of WorldEnvironment (no longer extends Spatial)
-2D editor viewport can now work in HDR!
2017-06-24 08:58:27 -03:00
Juan Linietsky 8ef1c41a4e Small fixes required to get platformer to work.
Added back CanvasItemMaterial
2017-06-23 14:31:59 -03:00
Juan Linietsky f27d2a3355 -Moved NinePatch to shader, saves a ton of draw calls rendering UI
-Implemented missing stretch modes, now tile and tile fit work
2017-06-21 23:37:25 -03:00
Juan Linietsky 95560e02c5 2D GPU Particles working.. 2017-06-21 16:26:26 -03:00
Juan Linietsky 0288be1e76 Texture rect_region drawing now clamps UV to avoid bleeding. This avoids scenarios like single-texture tilemap tiles leaking pixels to the next tile when filter is enabled on it. 2017-06-18 22:55:02 -03:00
Juan Linietsky 5c6cac4e53 Add normalmap support for drawing in all low level primitives. Only added support in Sprite so far. 2017-06-17 23:27:42 -03:00
Juan Linietsky 2da3f48e5a -Fixed shader lang to not be able to get scalar from matrix (ie mat.x), to make it more GLSL compatible
-Fixed referencing of world_transform in fragment shader not working
-Fixed unsycn bug related to getting shader param list from the server
-Fixed getting all textures from shader properly, fixes #8353
2017-06-17 11:03:48 -03:00
Juan Linietsky 9757fc354c Fix transparent background rendering, closes #8703
Properly implemented UPDATE_WHEN_VISIBLE mode for viewports
2017-06-17 08:59:43 -03:00
Juan Linietsky e11fae0bbf Particles properly update the shadow maps, closes #8815 2017-06-17 07:32:49 -03:00
Juan Linietsky b19225bfce -Fix freezes caused by etccomp2, closes #9183
-Normalmaps are now detected and imported as RGTC, both in S3TC and ETC2, this improves their quality.
2017-06-16 21:49:37 -03:00
Juan Linietsky 80929d36be TIME constant reverted to a single float, fixes #9123 2017-06-16 08:30:21 -03:00
Juan Linietsky 5d02b948a9 Cleaned up Screen Space Reflections, closes #8119 2017-06-16 08:30:21 -03:00
Juan Linietsky 29cfc365aa Fixes to SSR, WIP. 2017-06-16 08:30:21 -03:00
Marc Gilleron 4dbe0967d5 Fixed memory leaks
- PoolVector leak
- mesh_remove_surface leak
2017-06-16 02:39:16 +02:00
Juan Linietsky da14225ad8 fix bug related to unshaded materials not working on MSVC. Not cleanest solution, might think about how to improve later. 2017-06-15 10:36:00 -03:00
Juan Linietsky 47b34bf79b Remove error spam on Intel, closes #8665 2017-06-15 09:02:34 -03:00
Juan Linietsky f8bd488457 Merge pull request #9109 from RandomShaper/optimize-2d-lighting
Add AT_LIGHT_PASS builtin to canvas shaders
2017-06-14 21:16:09 -03:00
Pedro J. Estébanez 93ffd9023f Add AT_LIGHT_PASS builtin to canvas shaders
This one allows for complex shaders paired with a simple lighting shader to skip code that would otherwise be pointlessly (and wastefully) run during the light pass.

Depending on your game (number of items and lights), this can yield some performance gain.
2017-06-15 02:03:15 +02:00
Juan Linietsky 2b62872547 Fix _draw_polygon colors and uvs 2017-06-14 18:43:57 -03:00
Juan Linietsky 462d8ceb46 Fixed several bugs with directional light, and changed defaults to be more sensible. 2017-06-14 17:06:36 -03:00
Juan Linietsky a8a1f2e2a8 -Fixed occluder rendering, closes #8560
-Ability to smooth out 2D shadow filters
2017-06-13 01:23:04 -03:00
Juan Linietsky 95c248e24f Remove default shadow bias of 0.1 for spot and omni light, fixes #8654 2017-06-13 00:07:05 -03:00
Juan Linietsky ea6cb22329 Merge pull request #8835 from ippan/particles_shader_index
add index to particles glsl
2017-06-12 23:33:41 -03:00
Juan Linietsky fc04e0b1f2 Fix bug breaking shader when skeleton+tangents were used, closes #8673 2017-06-12 19:54:35 -03:00
Juan Linietsky 831860695c Fix empty shader related crash, closes #8314 2017-06-12 19:23:37 -03:00
Juan Linietsky 41c3ca358e Fixed _draw_polygon, should help fix other bugs.. 2017-06-12 18:56:16 -03:00
Juan Linietsky 61c82f4356 Restored everything related to information polling, and added information box for viewport. 2017-06-11 18:13:04 -03:00
Juan Linietsky 4d50c7ad8c Restored multiple viewport function, as well as view modes. 2017-06-11 15:52:03 -03:00
Pedro J. Estébanez 4d90750729 Add missing initializer for RasterizerStorageGLES3::Shader::ubo_size 2017-06-09 21:17:47 +02:00
alexholly 935f730170 renamed all Rect3.pos to Rect3.position 2017-06-09 15:54:02 +02:00
Juan Linietsky 612ab8fcdb -Restored multithread capability to VisualServer
-Restored resource previews!
2017-06-09 00:24:18 -03:00
Juan Linietsky 5bf810b5db -Added proper access to depth texture from shader
-Split Mesh into Mesh (abstrat class) and ArrayMesh, to allow to proper mesh primitives, as well as streamable meshes in the future.
2017-06-07 18:20:04 -03:00
Juan Linietsky 840ac8c018 Fog is complete! 2017-06-07 08:38:21 -03:00
Juan Linietsky 0fb99306ff -working SCREEN_TEXTURE, SCREEN_UV shader variables
-Added refraction support for default material
-Enabled BCS adjustments, as well as color correction.
2017-06-05 22:34:32 -03:00
Rémi Verschelde f8d7670e82 Merge pull request #9038 from AlexHolly/rect2-rename-pos
renamed all Rect2.pos to Rect2.position
2017-06-05 15:52:05 +02:00
Juan Linietsky 5aa66d03d8 Added depth texture support (using parallax) to default material. 2017-06-04 20:35:45 -03:00
Juan Linietsky 8126a0cb12 subsurface scattering is fixed and working again 2017-06-03 21:14:05 -03:00
alexholly a3c90b0293 renamed all Rect2.pos to Rect2.position 2017-06-04 02:09:17 +02:00
Juan Linietsky 8a1097a224 many fixes to image loader, voxel cone tracing, etc. 2017-06-02 22:08:41 -03:00
Juan Linietsky e79d7149ea GI probes working back again 2017-06-01 22:38:07 -03:00
Juan Linietsky c03131fc9f Rework shading modes and change location of light shader 2017-06-01 18:56:02 -03:00
Juan Linietsky bd26fa7bf2 stuff got modified :( 2017-05-31 20:29:56 -03:00
Juan Linietsky a134f58fb3 rewritten PBR implementation to make it friendlier with Blender 2017-05-31 20:29:56 -03:00
Juan Linietsky 5567e898d1 Several fixes related to PBR and Environment 2017-05-30 08:56:19 -03:00
Juan Linietsky f89641907f -Added EXR supprot for HDR (no BC6 compression yet though)
-Improvements to texture importer
-Proper detection of S3TC compression modes, and added all modes to Image
-Fixes to non-power of 2 compressed textures, which should all be supported by GLES3
2017-05-26 22:31:32 -03:00
Juan Linietsky bf6380ee70 Removed skybox support, added panorama support. Skybox support may come back eventually, but hope not. 2017-05-25 14:00:43 -03:00
BastiaanOlij 3768a3b2c5 More fixes for iOS Godot 3.0
- nicely exit if initialisation fails
- fix a few issues around new event handling
- use 16bit single channel framebuffer as 32bit is not supported on iOS
2017-05-23 22:38:36 +10:00
BastiaanOlij c51ce72702 Added texture_get_texid 2017-05-20 10:09:36 +10:00
PanPan d9e3bbe17d add index to particles glsl 2017-05-19 23:43:25 +08:00
Rémi Verschelde f85cad4fec Merge pull request #8793 from ippan/shader_varying
fix varying in 3.0 shader
2017-05-18 19:00:21 +02:00
Juan Linietsky 98a3296702 Removal of Image from Variant, converted to a Resource. 2017-05-17 07:37:45 -03:00
PanPan 9079ef46e7 fix varying in 3.0 shader 2017-05-17 16:41:49 +08:00
Andreas Haas c3e43c6d5f Revert "Particles potential crash fix" 2017-05-15 20:11:42 +02:00
honix 9d7d24682d Particles potential crash fix 2017-05-15 20:49:20 +03:00
Fabio Alessandrelli a1c41be569 Fix local ip addresses (interfaces) detection.
Ignore non-IP addresses for both windows and unix
2017-05-08 22:27:06 +02:00
Fabio Alessandrelli 020f6a7f20 Socket helpers now fall back to ipv4 on systems where ipv6 is disabled. 2017-05-08 21:53:23 +02:00
Fabio Alessandrelli 5c6715a291 Fix UDP wait() not returning after first received packet 2017-05-05 17:41:11 +02:00
Rémi Verschelde f527a69462 Merge pull request #8589 from tagcup/dxt1_fix
Use correct mode for DXT1 textures.
2017-05-02 23:31:42 +02:00
Rémi Verschelde 4dd291cecb Merge pull request #8586 from vnen/uwp-3
Fix compilation for UWP
2017-05-01 22:48:01 +02:00
Ferenc Arn 2f84731177 Use correct mode for DXT1 textures.
libsquish, which is used to generate all S3TC textures, works only with RGBA textures.

Fixes #8550.
2017-04-29 20:01:12 -05:00