reduz
f123981a96
Implement DirectionalLight2D
...
Also separated Light2D in PointLight2D and DirectionalLight2D.
Used PointLight2D because its more of a point, and it does not work
the same as OmniLight (as shape depends on texture).
Added a few utility methods to Rect2D I needed.
2020-11-04 10:03:01 -03:00
Marios Staikopoulos
e5d7c7d5fc
Alpha Hash and Alpha2Coverage Implementation
2020-11-02 20:11:20 -08:00
reduz
0e6664539d
Refactor pixel snapping.
...
-Rename pixel_snap to snap_2d_to_vertices
-Added snap_2d_to_transforms which is more useful
Fixes #41814
Solves proposal https://github.com/godotengine/godot-proposals/issues/1666
Supersedes #35606 , supersedes #41535 , supersedes #41534
2020-10-30 08:57:32 -03:00
reduz
8ab9b39707
Implement CanvasGroup and CanvasItem clipping
...
-Allows merging several 2D objects into a single draw operation
-Use current node to clip children nodes
-Further fixes to Vulkan barriers
-Changed font texture generation to white, fixes dark eges when blurred
-Other small misc fixes to backbuffer code.
2020-10-28 18:53:32 -03:00
Rémi Verschelde
6c173e2f7f
Merge pull request #43058 from clayjohn/VULKAN-FXAA-bug
...
[4.0]Remove extra exposure multiply in FXAA
2020-10-25 00:35:12 +02:00
clayjohn
8e3e9e3755
Remove extra exposure multiply in FXAA
2020-10-24 13:00:39 -07:00
reduz
84d734da0e
Refactored 2D shader and lighting system
...
-Removed normal/specular properties from nodes
-Create CanvasTexture, which can contain normal/specular channels
-Refactored, optimized and simplified 2D shaders
-Use atlas for light textures.
-Use a shadow atlas for shadow textures.
-Use both items aboves to make light rendering stateless (faster).
-Reorganized uniform sets for more efficiency.
2020-10-24 15:57:25 -03:00
Rémi Verschelde
d05c7da1aa
Merge pull request #42949 from DavidSichma/shaderglobals
...
Shader globals bugfixes
2020-10-22 09:53:49 +02:00
clayjohn
6299575250
Add sky_only setting to DirectionalLight3Ds
2020-10-21 23:28:08 -07:00
Yuri Roubinsky
433183147e
Fix textureSize & texelFetch shader compilation errors
2020-10-21 17:45:40 +03:00
David Sichma
5d33cd94c8
Shader globals bugfixes
...
- shader globals editor displays properties correctly
- fixed some errors how globals were transferred
2020-10-21 01:34:25 +02:00
Hugo Locurcio
195540ab90
Remove unused #define
from the tonemap shader
...
It was a leftover from an earlier version of the debanding PR
which used a simpler (but less effective) algorithm.
2020-10-20 19:59:50 +02:00
Rémi Verschelde
7d4921db1a
Merge pull request #42915 from Yetizone/negative_lights_behavior
...
tonemap.glsl: Ensure color parameter of tonemap_reinhard() is positive
2020-10-19 23:50:49 +02:00
Rémi Verschelde
cf3a4cb091
Merge pull request #42913 from Calinou/debanding-fix-brightness
...
Fix debanding slightly brightening the whole viewport
2020-10-19 23:18:24 +02:00
Yetizone
ffc4151f29
tonemap.glsl: Ensure color parameter of tonemap_reinhard() is positive
...
Color values can become negative in the case of negative lights which
leads to undesired behaviour.
2020-10-20 00:08:44 +03:00
Hugo Locurcio
15d033e25f
Fix debanding slightly brightening the whole viewport
...
Thanks to Mikkel Gjoel on Twitter for the tip :)
2020-10-19 22:53:28 +02:00
reduz
dd0b097e44
Fix invalid buffer updates in SDFGI
2020-10-19 17:39:09 -03:00
Rémi Verschelde
7480a7d178
Fixup method binding from #42910
2020-10-19 22:23:36 +02:00
Juan Linietsky
5d120f9ffb
Merge pull request #42046 from Chaosus/fix_default_texture
...
Fix setting the default texture to shader
2020-10-19 15:50:21 -03:00
Juan Linietsky
85ebf40b6c
Merge pull request #38097 from Calinou/add-viewport-debanding
...
Add a debanding property to Viewport
2020-10-19 14:15:44 -03:00
Juan Linietsky
53d5a252bb
Revert "Replace SAO implementation with MSSAO"
2020-10-18 19:27:51 -03:00
Juan Linietsky
d98261ab8f
Merge pull request #42077 from clayjohn/MSSAO
...
Replace SAO implementation with MSSAO
2020-10-18 18:34:43 -03:00
Juan Linietsky
6e5f137c01
Merge pull request #41415 from clayjohn/VULKAN-shader-overrides
...
Add FOG, RADIANCE, and IRRADIANCE shader overrides
2020-10-18 18:33:41 -03:00
Juan Linietsky
e799a2ba45
Merge pull request #42201 from clayjohn/Vulkan-new-glow
...
Optimize Glow with local memory
2020-10-18 18:32:36 -03:00
clayjohn
366ee46774
Replace SAO implementation with MSSAO
2020-10-18 13:15:51 -07:00
clayjohn
f46932feab
Add FOG, RADIANCE, and IRRADIANCE shader overrides
2020-10-18 12:06:51 -07:00
Yuri Roubinsky
d0f85b9321
Fix setting the default texture to shader
2020-10-18 21:59:37 +03:00
clayjohn
63a34b93aa
Optimize Glow with local memory
2020-10-18 11:37:12 -07:00
Juan Linietsky
4467412c9f
Merge pull request #38949 from puchik/ssr-fix-cutoff
...
Continue tracing screen space reflection after encountering sky
2020-10-18 14:45:33 -03:00
Rémi Verschelde
d9e5c355e5
Merge pull request #41418 from clayjohn/Vulkan-aerial
...
Add aerial perspective to fixed fog
2020-10-18 17:32:19 +02:00
reduz
ee06a70ea6
Refactor MethodBind to use variadic templates
...
Removed make_binders and the old style generated binders.
2020-10-18 12:28:44 +02:00
clayjohn
8c21c26fb5
Add aerial perspective to fixed fog
2020-10-17 10:53:07 -07:00
Hugo Locurcio
4357506e64
Fix "fixed" fog drawing in front of volumetric fog with a sky background
...
This closes #42820 .
Co-authored-by: Clay John <claynjohn@gmail.com>
2020-10-15 21:59:08 +02:00
Rémi Verschelde
e927f54170
Merge pull request #42804 from RandomShaper/fix_fft_window
...
Fix application of window in FFT
2020-10-15 13:21:33 +02:00
Hugo Locurcio
b44de3c6b1
Fix typo in soft shadow quality project settings hints
2020-10-15 10:31:35 +02:00
Pedro J. Estébanez
257ba4a7fb
Fix application of window in FFT
2020-10-15 01:57:17 +02:00
Yuri Roubinsky
1dbfd4c3e8
Merge pull request #42763 from Chaosus/shader_emit_autocompletion
...
Fix autocompletion for emit_particle in shader editor
2020-10-13 16:01:37 +03:00
Yuri Roubinsky
6914597026
FIx autocompletion for emit_particle in shader editor
2020-10-13 14:12:51 +03:00
Rafał Mikrut
84a1817a75
Fixes leaks with shader and material
2020-10-12 18:06:47 +02:00
Rémi Verschelde
d22791c271
doc: Sync classref with current source
2020-10-12 10:58:02 +02:00
unknown
1d3aec4230
Free a SortShader and a ParticlesCopyShader
2020-10-12 13:25:24 +05:30
reduz
26f5bd245c
Implement GPU Particle Collisions
...
-Sphere Attractor
-Box Attractor
-Vector Field
-Sphere Collider
-Box Collider
-Baked SDF Collider
-Heightmap Collider
2020-10-09 13:25:47 -03:00
Rémi Verschelde
e9ff08692c
Merge pull request #42548 from pezcode/lights-metallic
...
Add METALLIC to light() built-ins
2020-10-09 14:41:53 +02:00
clayjohn
bde2f9b46b
Return proper texture view format for decals
2020-10-03 22:56:00 -07:00
Pablo Escobar
1300fc7307
Add METALLIC to light() built-ins
2020-10-04 04:16:16 +02:00
Marcel Admiraal
7e44682c03
Fix how Line2D obtains the other object's supports
...
Measure the distance from the line against the rotated object, not the
rotated line, when obtaining the object's supports against a line.
2020-10-03 12:59:34 +01:00
John Pennycook
8d3afa985b
Make YSort stable
...
Keeps track of the order in which items are collected by
_collect_ysort_children, and uses that order to break
ties between items with similar Y positions.
2020-09-27 10:58:54 -07:00
Rémi Verschelde
9a463cb1d6
Merge pull request #42263 from Faless/js/servers_no_threads
...
Ignore thread models when compiling with NO_THREAD
2020-09-23 11:50:23 +02:00
Fabio Alessandrelli
f3c6ac1d71
Ignore thread models when compiling with NO_THREAD
...
The thread model option for physics (2D) and rendering (single-unsafe,
single-safe, multithread), was causing crashes/locks when set as
multithreaded and exported for a platform that does not support threads
(namely HTML5).
This commit ensures that when threads support is not available, that
option is ignored, and the equivalent of "single-unsafe" is always used
instead.
2020-09-23 11:24:01 +02:00
Rémi Verschelde
7b3759a94e
Merge pull request #42130 from clayjohn/RenderingDeviceHack
...
Expose local RenderingDevice creation to RenderingServer
2020-09-23 10:41:58 +02:00
Yuri Roubinsky
53740c69df
Forbids varying declaration in particles and sky shaders
2020-09-22 10:35:52 +03:00
Rémi Verschelde
3e78963bb9
Fix typos with codespell
...
Using codespell 1.17.1.
Method:
```
$ cat > ../godot-word-whitelist.txt << EOF
ang
curvelinear
dof
doubleclick
fave
findn
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
```
2020-09-18 13:44:25 +02:00
Marcel Admiraal
41209efa7f
Remove the unnecessary sync() and the restrictions it imposes on 3D Physics.
2020-09-18 10:43:31 +01:00
Rémi Verschelde
2d9b409103
Merge pull request #41528 from keegano/physics-fix-wrap-angle
...
Wrap angles to (-pi, pi) in momentum calculation.
2020-09-17 16:32:53 +02:00
bruvzg
6a14c72b12
Add window click-through support.
2020-09-17 12:36:18 +03:00
clayjohn
40159244cd
expose local RenderingDevice creation to RenderingServer
2020-09-16 21:11:39 -07:00
Haoyu Qiu
38147da819
Fixes crash when saving scene
2020-09-13 16:15:46 +08:00
Lyuma
2f888d2987
Fix ATTENUATION and implement SHADOW_ATTENUATION.
2020-09-10 15:45:56 -07:00
clayjohn
fbff7d424b
Set repeat in all 3 dimensions in 3d textures
2020-09-09 17:59:51 -07:00
reduz
a674da4eec
Implement 3D textures as import and resource format.
2020-09-09 13:50:21 -03:00
Marcel Admiraal
08bedf68ff
Clarify comparison precedence when enabling or disabling back buffer.
2020-09-07 11:00:00 +01:00
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