Commit Graph

2618 Commits

Author SHA1 Message Date
nikitalita e1a39d66b0
Fix DirAccessWindows::make_dir() choking on ".."
`CreateDirectoryW()` chokes on absolute paths that contain `..`
example: "C:\\workspace\\..\\games\\assets"
Simplifying the path before creating the dir fixes this.

(cherry picked from commit 0d3d5ac769)
2022-11-30 15:06:28 +01:00
dzil123 aa0b91ca52 [3.x] Fix shader compiler asan out of bounds 2022-11-17 19:24:15 -08:00
Hugo Locurcio 6d0d9037cd
Fix debanding strength being affected by environment adjustments 2022-09-26 14:46:09 +02:00
Rémi Verschelde f9b91d8d24 Style: Ensure consistent formatting with clang-format 15 2022-09-21 13:23:17 +02:00
lawnjelly a300505066 Prevent drawing MultiMesh with zero instance count
Issuing a driver drawcall for MultiMesh with zero instances crashes some drivers.
2022-09-15 13:20:12 +01:00
Rémi Verschelde 4682144eb8 Merge pull request #65408 from lawnjelly/dir_light_uninit
Fix GLES directional shadow uninitialized data
2022-09-06 12:31:20 +02:00
lawnjelly 9b294b298e Fix GLES directional shadow uninitialized data
Valgrind shows directional_shadow.fbo accessed when uninitialized in directional_shadow_create.
2022-09-06 09:21:56 +01:00
lawnjelly 23fedc0d1a Batching - fix uninitialized color read
Valgrind was showing a read from uninitialized memory. r_fill_state.curr_batch->color is unset (for performance reasons), so can contain random data.

This actually doesn't matter in practice, since logically this uninitialized state can only occur when change_batch is set, and the only side effect is that change_batch is set. Hence why no bugs occur in practice.

This PR prevents this read from uninitialized data. It is likely free in terms of performance after optimization, and keeps the Valgrind logs clearer, so why not.
2022-09-06 07:01:18 +01:00
Rémi Verschelde a86da2eb8b
Merge pull request #64608 from RandomShaper/safe_audio_threading_3.x 2022-08-25 10:12:44 +02:00
Rémi Verschelde 6358e41772
Merge pull request #64838 from akien-mga/3.x-cherrypicks
Cherry-picks for the 3.x branch (future 3.6) - 2nd batch
2022-08-25 00:51:19 +02:00
Jordan Schidlowsky 1ed1a3067b workaround for angle project issue 7245, safari, iOS 2022-08-24 09:23:05 -06:00
bitsawer c8810395a2 Fix Windows list dir handle leak
(cherry picked from commit 40325006b6)
2022-08-24 17:16:18 +02:00
Pedro J. Estébanez c92ceca5ce Make audio thread control flags safe 2022-08-19 11:55:23 +02:00
Rémi Verschelde 6eee83579a
Merge pull request #64101 from timothyqiu/subsecond 2022-08-08 16:31:49 +02:00
Rémi Verschelde 05f83b3f35
Merge pull request #64096 from RandomShaper/fix_uberflicker_3.x 2022-08-08 16:12:30 +02:00
Rémi Verschelde 36fc99158d
Merge pull request #63971 from paddy-exe/spatial-shader-built-ins 2022-08-08 15:50:25 +02:00
Haoyu Qiu 1be078ebcb Fix Time.get_unix_time_from_system() not including msecs 2022-08-08 20:31:51 +08:00
Pedro J. Estébanez edb140839e Fix GI probes not working in the ubershader 2022-08-08 10:55:59 +02:00
Fabio Alessandrelli 90c6056b70 [Net] IP uses print_verbose when getaddrinfo fails.
Avoid spamming errors when network is disconnected.
Returned address will be invalid, so it can be checked by the user via
`ret.is_valid_ip_address`.

(cherry picked from commit 59eea34851)
2022-08-08 09:46:26 +02:00
Pedro J. Estébanez ea6ed9658d Fix emission not working in the ubershader 2022-08-07 23:11:44 +02:00
Pedro J. Estébanez a2ed82d3b2 Fix shadow flickering with async shader compilation
This mostly reverts the approach in #62628, which now the problem is better scoped, looks overengineered and instead focuses on the few cases where there's something to take care of.
2022-08-07 22:53:33 +02:00
Rémi Verschelde 14c9325b5d
Merge pull request #62408 from Razoric480/raz/fix-no-cache
[3.x] Fix nested resources being cached if no-cache argument used
2022-08-05 23:43:54 +02:00
Rémi Verschelde 144f3ec94e
Merge pull request #51676 from Calinou/shader-add-hint-transparent-texture-3.x
Add `hint_transparent` to use a transparent black placeholder texture (3.x)
2022-08-05 22:34:05 +02:00
Patrick Exner be3d331f26 Backport spatial shader built-ins
Backport of this PR: https://github.com/godotengine/godot/pull/63597
This adds these as new Built-Ins to Spatial Shaders
* Object's Position in World Space
* Camera Position in World Space
* Camera Direction in World Space
* Object's Position in View Space
2022-08-05 21:19:15 +02:00
Rémi Verschelde ccbe083949
Merge pull request #63071 from lawnjelly/skinning2d_bounds 2022-08-05 19:34:48 +02:00
Hugo Locurcio ab9a95f266
Add `hint_transparent` to use a transparent black placeholder texture 2022-08-02 23:32:07 +02:00
Rémi Verschelde 818f1eed31 Code quality: Fix header guards consistency
Adds `header_guards.sh` bash script, used in CI to validate future
changes. Can be run locally to fix invalid header guards.
2022-07-25 14:53:37 +02:00
Hugo Locurcio b03ceaba2f
Document support limitations for OmniLight cubemap shadows in GLES2 2022-07-18 22:18:56 +02:00
lawnjelly 18bb668a2e Fix skeleton 2D stale bounding rect
Adds special logic for handling skeleton bounding rect updates. Previously these were never being updated because the canvas item is never set to "rect_dirty".
2022-07-18 19:47:23 +01:00
Francois Belair 2ceb93bbef Fix custom res caching sub-res even if no-cache
Fixes #59686, fixes #59752
2022-07-13 11:18:26 -04:00
Markus 4abe07c811 Apply S3TC Android/iOS fix to GLES3 2022-07-11 12:12:17 +02:00
Pedro J. Estébanez 65a83785fd Avoid GL undefined behavior in ubershaders 2022-07-02 19:54:02 +02:00
Rémi Verschelde 772d071863 SCons: Properly track codegen script dependency for generated GLES headers 2022-07-02 15:52:42 +02:00
ne0fhyk 24e3b3b88d Add full support for Android scoped storage.
This was done by refactoring directory and file access handling for the Android platform so that any general filesystem access type go through the Android layer.
This allows us to validate whether the access is unrestricted, or whether it falls under scoped storage and thus act appropriately.
2022-06-26 16:53:02 -07:00
Pedro J. Estébanez a46da9311e Fix shadows not casted by async hidden materials 2022-06-26 21:21:07 +02:00
lawnjelly 9482998a03 Synchronous shaders in editor
The old style synchronous shaders allow the project manager and editor to load faster.
2022-06-22 14:14:32 +01:00
Pedro J. Estébanez 0868122aad Fix change to singed shader conditional flags
This change was missing from commit d3d8ccea60.
2022-06-20 17:02:40 +02:00
Pedro J. Estébanez d3d8ccea60 Use signed integers for async shader conditionals 2022-06-19 20:16:27 +02:00
Rémi Verschelde 118302d01c GLES3: Fix async shader compilation after #62021
Fixes #62047.
2022-06-15 13:40:58 +02:00
Pedro J. Estébanez 1d01acb486 Fix issues with unsigned types in GL ES 3 shader class 2022-06-14 11:43:58 +02:00
Pedro J. Estébanez f46d7583ff Add INFO_SHADER_COMPILES_IN_FRAME to GL ES 3 render info 2022-06-13 18:53:15 +02:00
bruvzg 11a7997a67 [Windows, 3.x] Add support for handling network share paths. 2022-06-13 09:24:35 +03:00
lawnjelly f8df04ed50 More low priority redraw request cases
Some more cases of textures etc causing continuous updates in vital updates only mode are fixed.
2022-06-12 06:44:59 +01:00
clayjohn f92141be13 Disable Alpha throughout Glow and FXAA code in order to avoid issues with transparent viewports 2022-05-26 11:15:35 -07:00
clayjohn 9927515254 Disable alpha in post process when using opaque framebuffer 2022-05-24 14:11:09 -07:00
clayjohn 027ec28126 Disable writing to alpha with opaque framebuffer 2022-05-24 10:30:49 -07:00
clayjohn 3374bae953 Fixed Bug where DoF incorrectly wrote to alpha channel amd bug with tonemap shaders 2022-05-18 13:19:42 -07:00
Hugo Locurcio 3762b40de7
Merge pull request #54585 from Kinwailo/fix_viewport_transparent_bg
Fix viewport with transparent bg changed to solid black if enable fxaa or debanding.
2022-05-16 08:28:36 +02:00
Kinwailo b1a50ad805 fix post procressing with transparent bg and keep alpha channel of the tonemap shader output 2022-05-12 16:32:31 +08:00
Rémi Verschelde 3649382b37
Merge pull request #60829 from clayjohn/GLES2-html5-blendshapes
[GLES2] Unpack blend shape arrays when necessary
2022-05-06 22:08:31 +02:00