Commit graph

1742 commits

Author SHA1 Message Date
Rémi Verschelde
53d83c4575
Merge pull request #41781 from AnilBK/fix-typo
Fixed Some typos.
2020-09-07 08:31:51 +02:00
reduz
d0bddf53c5 Implement manual particle emission and particle sub emitters. 2020-09-06 10:29:27 -03:00
Yuri Roubinsky
b1351fe781 Fix crash regression in the shader function validation
introduced in #41780
2020-09-05 13:49:50 +03:00
Yuri Roubinsky
ab9978697e Improve messages in shader function validation 2020-09-05 13:19:38 +03:00
Anilforextra
5705e0d309 Fixed Some typos. 2020-09-05 14:31:56 +05:45
Rémi Verschelde
696849f73a
Merge pull request #41761 from madmiraal/fix-assignment-operators
Ensure assignment operators return by reference to avoid unnecessary copies.
2020-09-04 13:00:17 +02:00
Rémi Verschelde
6a03aed5a4
Merge pull request #40958 from clayjohn/VULKAN-shadow-noise
Improve the quick hash function for all GPUs
2020-09-04 10:53:01 +02:00
Marcel Admiraal
ce263c4ff6 Ensure assignment operators return by reference to avoid unnecessary copies. 2020-09-04 09:18:19 +01:00
bruvzg
80b8eff6aa
[Complex Test Layouts] Change String to use UTF-32 encoding on all platforms. 2020-09-03 19:56:24 +03:00
Rémi Verschelde
2a8531cc56
Merge pull request #41456 from nekomatata/x11-fix-popups
Popup fixes for X11 display server
2020-09-03 00:09:19 +02:00
Yuri Roubinsky
2a00c868de Fix particles shader to use built-ins 2020-09-02 22:54:41 +03:00
Juan Linietsky
f5f27bacdb Re-Implement GPU particles on master.
-No new features yet
-Unlike godot 3.x, sorting happens using GPU
2020-09-02 21:37:11 +02:00
Rémi Verschelde
23ce1dbfd5
Merge pull request #41668 from clayjohn/GLOW-HQ
Add high quality glow mode
2020-09-01 21:04:07 +02:00
JFonS
8ab510a130 Fix typo in SDF jumpflood shader 2020-09-01 14:40:59 +02:00
clayjohn
8da3c739bf Add high quality glow mode 2020-08-31 23:16:41 -07:00
Rémi Verschelde
30d31101c2
Merge pull request #41605 from clayjohn/VULKAN-glow
Fix recent glow regressions
2020-08-31 12:58:15 +02:00
clayjohn
d069cc9cf2 Fix recent glow regressions 2020-08-29 11:27:43 -07:00
TwistedTwigleg
0205eef96b Fixed 2D physics regression that causes RigidBody2D nodes to spin uncontrollably when colliding 2020-08-28 14:16:12 -04:00
Yetizone
118a7bc53f rasterizer_rd.cpp: Correct small typo 2020-08-27 12:44:18 +03:00
Keegan Owsley
e148338d42 Wrap angles to (-pi, pi) in momentum calculation.
Fixes a bug that causes KinematicBody2Ds to produce too much angular
momentum when rotating beyond 180 degrees.
2020-08-26 08:25:28 -07:00
PouleyKetchoupp
2b49cb0b73 Re-apply "Fixes for windows in X11 tiling WMs"
From PR #38727 which was reverted in #41373 because of regressions in Ubuntu
with Gnome.

Co-authored-by: Lorenzo Cerqua <lorenzocerqua@tutanota.com>
2020-08-22 18:42:42 +02:00
Juan Linietsky
4e52c75a98
Merge pull request #41345 from clayjohn/VULKAN-sky-fog
Add fog to sky shaders
2020-08-20 09:50:52 -03:00
clayjohn
9d341acf2d Add fog to sky shaders 2020-08-19 22:58:14 -07:00
Juan Linietsky
9c5c1635b2
Revert "Fixes for windows in X11 tiling WMs" 2020-08-19 12:37:59 -03:00
Hugo Locurcio
8891579068
Add a debanding property to Viewport
It can be enabled in the Project Settings
(`rendering/quality/screen_filters/use_debanding`). It's disabled
by default as it has a small performance impact and can make
PNG screenshots much larger (due to how dithering works).
It will also slightly brighten the scene's dark areas.

As a result, it should be enabled only when banding is noticeable enough.

This closes #17006.
2020-08-14 23:12:33 +02:00
Juan Linietsky
6a5ecfdef1 Restored fog (non volumetric).
Uses a simpler and more intuitive implementation based on density.
Its less flexible than before, but its easier to get nice results.
2020-08-13 22:09:22 -03:00
Juan Linietsky
079ca220e1 Added volumetric fog effect. 2020-08-13 11:28:45 -03:00
clayjohn
cf07a58a5f Improve the quick hash function for all GPUs 2020-08-01 17:48:40 -07:00
Markus Sauermann
8335f00949 Wake up RigidBody 2D after applying torque 2020-08-01 14:36:24 +02:00
Brian Semrau
63dfe79fbe Fixed next_pass materials not being drawn 2020-07-28 10:51:41 -04:00
Aaron Franke
56e2c6c704
Make all String float conversion methods be 64-bit 2020-07-27 18:38:53 -04:00
Rémi Verschelde
c845e20add Revert "Allow Area2D and 3D mouse events without a collision layer"
This reverts commit 7eebb06b55.
2020-07-27 22:45:01 +02:00
Rémi Verschelde
b19b896e06
Merge pull request #40487 from nekomatata/virtual-keyboard-enter-fixes
Fix Return key events in LineEdit & TextEdit on Android
2020-07-26 20:25:53 +02:00
PouleyKetchoupp
8c05dadcff Fix Return key events in LineEdit & TextEdit on Android
Depending on the device implementation, editor actions could be
received with different action ids or not at all for multi-line.

Added a parameter to virtual keyboards to properly handle single-line
and multi-line cases in all situations.

Single-line:
Input type set to text without multiline to make sure actions are sent.
IME options are set to DONE action to force action id consistency.

Multi-line:
Input type set to text and multiline to make sure enter triggers new lines.
Actions are disabled by the multiline flag, so '\n' characters are
handled in text changed callbacks.
2020-07-26 20:06:07 +02:00
Rémi Verschelde
3842e8c465
Merge pull request #38727 from Riteo/tiling-wm-issues-tests
Fixes for windows in X11 tiling WMs
2020-07-26 17:41:28 +02:00
Juan Linietsky
acf32e87d5 Fixes RenderingServer crashes reported by #39951
Supersedes #40026
2020-07-23 07:58:23 -03:00
Lorenzo Cerqua
d670a49612 DisplayServer: separate window showing into another function
When creating a window, Godot would first register it to the WM(show it) and then set its flags.
This works fine on a floating WM, but on tiling WMs as soon as a window gets registered
the WM immediately acts on the window by scaling it up and treating it as a generic window,
being registered without any special flags.

This commit separates the showing of the window into another function and calls it after the most important flags are set,
making windows with special flags(eg. all popups) work again on tiling WMs.

Fixes #37930
2020-07-23 07:58:10 +02:00
Juan Linietsky
ee7c98da7c Refactor light clustering
Move from high end to shared, so all renderers use clustering.
2020-07-22 20:39:51 -03:00
Rémi Verschelde
a5fb445121
Merge pull request #40450 from asmaloney/spelling
Fix spelling & grammar in comments, docs, and messages
2020-07-21 22:14:04 +02:00
Andy Maloney
4dda62f591 Fix spelling & grammar in comments, docs, and messages 2020-07-21 15:17:23 -04:00
Andy Maloney
8b949918b1 Fix spelling of a var, a struct, and message output 2020-07-17 12:02:06 -04:00
Rémi Verschelde
c8523038cc
Merge pull request #40268 from DanielZTing/master
Fix cancel/OK button order on macOS
2020-07-15 09:21:04 +02:00
Yuri Roubinsky
1a5cafebc9
Merge pull request #40389 from Chaosus/fix_shader
Fix some incorrect conversions which lead to crash in shaders
2020-07-15 08:49:59 +03:00
Yuri Roubinsky
01950553f2 Fix some incorrect conversions which lead to crash in shaders 2020-07-14 21:04:12 +03:00
Juan Linietsky
13e0385702 Properly pass safe margin on initialization.
Fixes jitter.
2020-07-14 10:19:58 -03:00
Rémi Verschelde
9678a41b19
Merge pull request #40272 from clayjohn/VULKAN-time-slicing
Add incremental update mode to sky
2020-07-11 10:00:39 +02:00
clayjohn
a54f93c169 Add incremental update mode to sky 2020-07-11 00:10:15 -07:00
Rémi Verschelde
d0cea291d2
Merge pull request #40193 from KoBeWi/dem_pikks
Allow Area2D and 3D mouse events without collision layer
2020-07-11 00:26:56 +02:00
Rémi Verschelde
21e1ff4bb0
Merge pull request #40266 from Chaosus/fma_fix
Enables 'fma' for GLES2
2020-07-11 00:18:50 +02:00
Daniel Ting
9605fc54c7 Fix cancel/OK button order on macOS
The macOS platform convention regarding button order is cancel on left,
OK on right.
2020-07-10 15:10:11 -05:00
Yuri Roubinsky
3eeb272b2e Enables 'fma' for GLES2 2020-07-10 22:21:22 +03:00
Rémi Verschelde
dcd11faad3
Merge pull request #40253 from madmiraal/add-override-keywords
Add override keywords.
2020-07-10 21:04:23 +02:00
Yuri Roubinsky
ecb5f7ea23 Added 'fma' function to shader language 2020-07-10 19:58:03 +03:00
Marcel Admiraal
26fcf2b04c Add override keywords. 2020-07-10 13:56:54 +01:00
Tomasz Chabora
7eebb06b55 Allow Area2D and 3D mouse events without a collision layer
Co-authored-by: madmiraal <madmiraal@users.noreply.github.com>
2020-07-10 13:23:20 +02:00
Marcel Admiraal
7eb0fcdb1a Remove elements from monitored_bodies and monitored_areas as they are
processed before calling the callback, instead of after they have all
been processed, because the callbacks may readd them.
2020-07-04 10:17:57 +01:00
bruvzg
df968d577a
[macOS] Implement seamless display scaling. 2020-07-04 10:36:33 +03:00
Cevantime
23f7d2c29d fix laxist collision detection on one way shapes 2020-07-03 11:24:15 +02:00
Rémi Verschelde
67e4082b1e
Merge pull request #37350 from aaronfranke/force-impulse
Refactor physics force and impulse code to use (force, position) order
2020-07-02 18:39:16 +02:00
Rémi Verschelde
3fb5faaceb
Merge pull request #40018 from Faless/js/more_improvements_4.0
HTML5 fixes, refactor, audio fallback, fixed FPS.
2020-07-02 07:22:43 +02:00
Fabio Alessandrelli
a9b7dd25df Add default 50ms output_latency web override.
Hopefully a good tradeoff between latency and performance on most
browsers.
2020-07-01 17:16:13 +02:00
Rémi Verschelde
9000e59650
Merge pull request #40016 from akien-mga/environment-code-cleanup
Environment: Refactor code for readability + more
2020-07-01 16:28:48 +02:00
Rémi Verschelde
a8a2769bb6
Merge pull request #38713 from aaronfranke/string-64bit
Make all String integer conversion methods be 64-bit
2020-07-01 16:01:05 +02:00
Rémi Verschelde
372136fe75 Environment: Refactor code for readability + more
- Makes all boolean setters/getters consistent.
- Fixes bug where `glow_hdr_bleed_scale` was not used.
- Split CameraEffects to their own source file.
- Reorder all Environment method and properties declarations,
  definitions and bindings to be consistent with each other
  and with the order of property bindings.
- Bind missing enum values added with SDFGI.
- Remove unused SDFGI enhance_ssr boolean.
- Sync doc changes after SDFGI merge and other misc changes.
2020-07-01 14:44:45 +02:00
Yuri Roubinsky
c554d9e556 Added const qualifier support for function arguments in shaders 2020-07-01 12:55:00 +03:00
Rémi Verschelde
27605769c4
Merge pull request #35633 from Xrayez/physics-shape-property
Expose shape property for shape query parameters classes
2020-06-30 13:57:23 +02:00
Rémi Verschelde
5a33c77f0a
Merge pull request #39953 from neikeq/fix-missing-defval-regr-from-39827
Fix missing DEFVAL in RenderingDevice.storage_buffer_create
2020-06-30 09:40:43 +02:00
Rémi Verschelde
8e8699e36b
Merge pull request #39894 from madmiraal/fix-39768
Trigger broadphase update when changing collision layer/mask.
2020-06-29 21:34:45 +02:00
Ignacio Etcheverry
7c3ff85c71 Fix missing DEFVAL in RenderingDevice.storage_buffer_create 2020-06-29 17:13:09 +02:00
Juan Linietsky
b1aa24ea3c Slight occlusion improvements. 2020-06-28 09:11:21 -03:00
Marcel Admiraal
79d3d3d17b Trigger broadphase update when changing collision layer/mask, and
check for collision layer/mask changes in 2D hash grid broadphase update.
2020-06-27 18:34:16 +01:00
Rémi Verschelde
ff0583770a
Merge pull request #39869 from Chaosus/shader_fix_return
Prevents usage of return in main shader functions
2020-06-27 17:03:42 +02:00
Yuri Roubinsky
2ce77e4b57 Prevents usage of return in main shader functions 2020-06-27 17:36:45 +03:00
qarmin
997d367b51 Fixes recently introduced shader leaks 2020-06-27 15:08:20 +02:00
Juan Linietsky
201d606b3d Addition of SDFGI for open world global illumination
Move GI to a deferred pass
2020-06-26 11:06:48 -03:00
Andrii Doroshenko (Xrayez)
da3fbc0296 Expose shape property for shape query parameters classes
Co-authored-by: PouleyKetchoupp <pouleyketchoup@gmail.com>
2020-06-26 16:54:05 +03:00
Yuri Roubinsky
b6ca9536f2 Fix few places in shaders where const passing still incorrect 2020-06-25 10:40:19 +03:00
Marcel Admiraal
8ffe905c45 Check for motion in cast_motion() before doing Bullet convexSweepTest().
Also ensure that default closest_safe and closest_unsafe values are
defined in cast_motion() and before cast_motion() is called.
2020-06-21 16:20:26 +01:00
Yuri Roubinsky
636a9d9f50 Implemented global const array to shaders 2020-06-19 16:04:54 +03:00
Rémi Verschelde
93d79023ad
Merge pull request #39541 from Ev1lbl0w/feature/disable-rendering
Expose disable_render_loop property to GDScript
2020-06-16 20:48:41 +02:00
Ev1lbl0w
03879a564a
Expose disable_render_loop property to GDScript 2020-06-16 15:43:44 +01:00
Rémi Verschelde
d3c10e8dd6
Merge pull request #39457 from bruvzg/kbd_layouts
Add keyboard layout enumeration / set / get functions.
2020-06-15 11:10:34 +02:00
Marcel Admiraal
62142c5416 Ensure pair callback data is set to null when it's null. 2020-06-13 14:43:25 +01:00
bruvzg
92352b1c23
Add keyboard layout enumeration / set / get functions (macOS, Windows, Linux/X11), remove latin variant function. 2020-06-13 11:02:00 +03:00
Marcel Admiraal
a442526744 Test collision mask before creating constraint pair in Godot physics broadphase 2D and 3D. 2020-06-08 17:46:21 +01:00
jfons
af3f9a854e Minor fix on GLSL shader parser 2020-06-06 19:53:16 +02:00
Marcel Admiraal
b5e31b70dc Correct misspellings of damped spring. 2020-06-04 18:07:24 +01:00
Yuri Roubinsky
1a7e101324 Fix shader's length() function parsing in expressions 2020-06-03 19:39:48 +03:00
Aaron Franke
e5ae89775a
Remove 32-bit String hex_to_int method 2020-06-03 00:03:34 -04:00
Aaron Franke
ba27deef06
Refactor physics force and impulse code 2020-06-02 23:18:59 -04:00
lawnjelly
61b3eb3b28 Light2D shadow mask construction fix
When using the default setting (layer 1 set only) nothing is stored in the tscn file for a Light2D, hence it relies on the value in the constructor.

The problem is the constructed value is 1 in Light2D, and -1 in RasterizerCanvas::Light. -1 results in all bits being set so all occluders are shown, rather than just those in layer 1.

This PR changes Rasterizer::Canvas constructor to set to 1. An alternative is to have -1 as the value for layer 1 throughout.

(cherry picked from commit bf54fa5a62)
2020-06-02 10:37:01 +02:00
Andrii Doroshenko (Xrayez)
69d5de632e Split Geometry singleton into Geometry2D and Geometry3D
Extra `_2d` suffixes are removed from 2D methods accoringly.
2020-05-27 14:28:34 +03:00
Arman
48a59e6c4a Continue tracing screen space reflection after encountering sky
Instead of breaking the whole trace when encountering the sky/camera far clip, continue tracing and check if "hits" are sky/far clip or not. Prevents some objects not being reflected due to gaps.
2020-05-22 00:12:42 -07:00
Rémi Verschelde
0b8cb945cf doc: Sync classref with current source 2020-05-20 15:29:37 +02:00
Rémi Verschelde
aec07538f4
Merge pull request #38309 from SkyLucilfer/AndroidLineEdit
Fix Android LineEdit editing bugs
2020-05-20 11:45:59 +02:00
Rémi Verschelde
ca3192d18a Style: Fix unnecessary semicolons that confused clang-format 2020-05-19 11:24:58 +02:00
Rémi Verschelde
37efaad8fb
Merge pull request #38816 from Faless/js/fix_audio_driver_4.0
AudioDriverJavaScript buffer size calculation.
2020-05-18 13:43:24 +02:00
Fabio Alessandrelli
90c7102b51 Move mix_rate, ouput_latency to AudioDriverManager
Each driver used to define the (same) project settings values
`audio/mix_rate` and `audio/output_latency`, but the setting names are
not driver specific.
Overriding is still possible via platform tags.
2020-05-18 13:02:06 +02:00
Rémi Verschelde
c74d65cec8 GLSL: Change shader type specifier from [vertex] to #[vertex]
The added `#` prevents clang-format from misinterpreting the meaning
of this statement and thus messing up the formatting of the next
lines up until the first `layout` statement.

Similarly, a semicolon is now enforced on `versions` defines to
prevent clang-format from messing up formatting and putting them
all on a single line. Note: In its current state the code will
ignore chained statements on a single line separated by a semicolon.

Also removed some extraneous lines missed in previous style changes
or added by mistake with said changes (e.g. after uniform definitions
that clang-format messes up somewhat too, but we live with it).
2020-05-18 10:58:14 +02:00
SkyJJ
cc473b948f Fix Android LineEdit editing bugs 2020-05-16 17:55:27 +02:00