Commit Graph

4875 Commits

Author SHA1 Message Date
blackbird806 e2f1af8742
Remove self includes in some files 2024-02-27 17:10:54 +01:00
Rémi Verschelde cfe344f12f
Merge pull request #87872 from RandomShaper/d3d12_tex_mem_is_life
Direct3D 12: Enhance management of texture data life cycle
2024-02-27 16:36:59 +01:00
Pedro J. Estébanez d47021ac6c Direct3D 12: Enhance management of texture data life cycle 2024-02-27 15:45:19 +01:00
Rémi Verschelde 8f98ed65f7
Merge pull request #88738 from clayjohn/mesh_compression-tangents
Multiple fixes for compressed meshes
2024-02-27 10:17:43 +01:00
Rémi Verschelde b21328d465
Merge pull request #88725 from clayjohn/GLTF-binormal-sign
Properly calculate binormal when creating SurfaceTool from arrays
2024-02-27 10:17:39 +01:00
bruvzg dad4aae386
[TextEdit] Add support for optional wrapped line indentation. 2024-02-26 08:20:14 +02:00
clayjohn f267b2aa87 Properly calculate binormal when creating SurfaceTool from arrays 2024-02-23 21:19:21 -08:00
clayjohn 781cd27fe4 Avoid singularity when generated tangents and validate that tangents are good enough when using compression 2024-02-23 16:25:26 -08:00
Robert Yevdokimov 13e82094ee Remove word duplicates in comments and strings, and fix casing and punctuation 2024-02-23 17:28:28 -05:00
Rémi Verschelde 080f20124a
Merge pull request #88704 from AThousandShips/no_3d_fix_2
Fix some additional errors with 3D disabled
2024-02-23 22:19:15 +01:00
Rémi Verschelde 0d83267923
Merge pull request #88639 from dsnopek/xrserver-hand-tracker
Provide generic interface for XR hand tracking
2024-02-23 22:19:05 +01:00
A Thousand Ships 3a707b1f54
Fix some additional errors with 3D disabled
* Disabled 2D navigation tests as they do not work
* Disabled tests for primitive meshes
* Unbound some `Mesh` methods that rely on 3D resources
* Unexposed `World3D` as it depends on physics (and isn't useful)
* Unexposed some `Viewport` vrs related properties that had unexposed
  methods
2024-02-23 20:58:56 +01:00
David Snopek 2184fa9698 Provide generic interface for XR hand tracking 2024-02-23 12:20:22 -06:00
bruvzg ad017a20ea
[TextServer] Implement soft hyphen handling. 2024-02-23 12:40:13 +02:00
Rémi Verschelde b82855bcc1
Merge pull request #88581 from jsjtxietian/dummy-crash
Fail early if shader mode is invalid in dummy renderer
2024-02-23 11:29:42 +01:00
jsjtxietian a382e9539b Fail early if shader mode is invalid in dummy renderer 2024-02-23 12:25:02 +08:00
Rémi Verschelde 8bad68df1a
Merge pull request #88649 from clayjohn/RD-ss-barriers
Use barriers between all blur passes with SSAO and SSIL
2024-02-22 11:23:40 +01:00
Rémi Verschelde dd1d838e09
Merge pull request #88631 from DarioSamo/mobile_subpass_usage_fix
Remove tracking logic for input attachments as it's not necessary.
2024-02-22 11:23:28 +01:00
Rémi Verschelde d646b7fef6
Merge pull request #88560 from DarioSamo/rdd_execute_and_present
Merge execute and present commands for RenderingDeviceDriver.
2024-02-22 11:23:19 +01:00
Rémi Verschelde 0e704ff682
Merge pull request #84275 from smix8/navmap_iteration_id
Add function to get navigation map iteration id from NavigationServer
2024-02-22 11:22:52 +01:00
Aaron Franke eb019e243f
Disable registering 3D physics types when 3D is disabled 2024-02-22 03:05:17 -06:00
Rémi Verschelde f8af9bf3e4
AudioEffectPitchShift: Actually fix -Wstringop-overflow warning
Previous commit didn't help, so its changes are reverted.
2024-02-22 09:59:00 +01:00
smix8 313c1d1100 Add function to get navigation map iteration id from NavigationServer
Adds function to get navigation map iteration id from NavigationServer.
2024-02-22 09:45:49 +01:00
clayjohn 2657593462 Use barriers between all blur passes with SSAO and SSIL 2024-02-21 14:35:20 -08:00
Dario 5e59c941c9 Remove tracking logic for input attachments as it's not necessary. 2024-02-21 11:18:10 -03:00
Rémi Verschelde 652438a395
Merge pull request #87360 from BastiaanOlij/gles_glow
Implement glow/bloom on compatibility renderer
2024-02-20 23:59:48 +01:00
Rémi Verschelde 292f4c7f97
Merge pull request #80214 from BastiaanOlij/rendering_effect
Implement hooks into renderer
2024-02-20 23:59:27 +01:00
Rémi Verschelde dc2d1e3f47
Merge pull request #79452 from /ysort-update-first-item-position 2024-02-20 23:59:17 +01:00
Rémi Verschelde dbf598034e
Merge pull request #88509 from akien-mga/pitchshift-unsigned-fft-size
AudioEffectPitchShift: Prevent negative size memset (GCC warning)
2024-02-20 17:13:28 +01:00
Dario ee2d8f68ba Merge execute and present commands for RenderingDeviceDriver. 2024-02-19 13:09:03 -03:00
Rémi Verschelde aa7ac130c0
Merge pull request #88312 from Malcolmnixon/face-tracker-provider
Add XR Face Tracking support
2024-02-19 10:43:45 +01:00
Bastiaan Olij aa260e5f3d Implement glow/bloom on compatibility renderer 2024-02-19 13:29:43 +11:00
Rémi Verschelde 3ba724e715
AudioEffectPitchShift: Prevent negative size memset (GCC warning) 2024-02-19 00:30:25 +01:00
Rémi Verschelde 8cf1cfdc0f
Merge pull request #88506 from puchik/multimesh-aabb-cull-fix
Fix reversed custom `AABB` check when recalculating multimesh `AABB`s
2024-02-19 00:09:06 +01:00
Rémi Verschelde 294137c931
Merge pull request #87661 from baptr/profiler_sort
Fix editor profiler script function sort order
2024-02-19 00:07:47 +01:00
Arman Elgudzhyan 533eab89ab Fixed reversed custom AABB null check when recalculating multimesh AABBs 2024-02-18 12:07:23 -08:00
Bastiaan Olij 5a98845655 Implement hooks into renderer 2024-02-18 21:54:21 +11:00
Eidolon 08f4560e69 Add optional depth fog 2024-02-17 22:39:34 -03:00
Malcolm Nixon 7d1a1abe76 Initial XRFaceTrackingProvider and XRFaceTracker work.
Updated to XRFaceModifier3D.
2024-02-17 20:12:47 -05:00
Rémi Verschelde 1b8e12c499
Merge pull request #88409 from jsjtxietian/high-end
Make dummy rendering server appear as a high end platform to fix vulkan shader compile error when exporting
2024-02-17 00:27:30 +01:00
Rémi Verschelde 8bbf5129d2
Merge pull request #88331 from DarioSamo/rd_graph_validation
Add validation to render graph for draw and compute lists.
2024-02-17 00:23:50 +01:00
Rémi Verschelde 59643bdb86
Merge pull request #88325 from akien-mga/texture-formats
Export: Unify settings for PC texture formats, removed obsoleted ETC feature
2024-02-17 00:23:45 +01:00
Rémi Verschelde f5ffe705ed
Merge pull request #88210 from TitanNano/jovan/missing_surface_data
Assign missing surface data fields in dummy render server
2024-02-17 00:23:19 +01:00
jsjtxietian f6aabd2b72 Make dummy rendering server appear as a high end platform
to fix vulkan shader compile error when exporting
2024-02-16 23:33:50 +08:00
Arman Elgudzhyan 7ac8365e11 Support custom AABB within MultiMesh resources
- Supporting custom AABB on the MultiMesh resource itself allows us to prevent costly runtime AABB recalculations.
- Should also help improve CPU Particle performance.
2024-02-15 22:37:07 -08:00
Anatoli Babenia e25cfffc7f Add `--no-header` option to clean output
* Do not print empty line when header is disabled
* Do not print Vulcan header
* Also add "Print header" project setting (default On)
  (suggested by @kaissouDev)
* Add docs for the project setting
  (with suggestions by @Mickeon and @akien-mga)

Co-authored-by: Micky <66727710+Mickeon@users.noreply.github.com>
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-02-15 14:10:11 +03:00
Dario 0aac14a538 Add validation to render graph for draw and compute lists. 2024-02-14 13:25:04 -03:00
Rémi Verschelde e457f41f9b
Remove code relative to obsoleted ETC texture format
Co-authored-by: BlueCube3310 <53150244+BlueCube3310@users.noreply.github.com>
2024-02-14 17:16:41 +01:00
Rémi Verschelde 5e58bcd793
Merge pull request #88205 from 0x0ACB/thread_safe_texture_rid
Make `RID_Owner<Texture>` threadsafe in `TextureStorage` for GLES3
2024-02-13 23:43:40 +01:00
Rémi Verschelde b6dee8850b
Merge pull request #87384 from bruvzg/sys_base_color
Add method to get "base" system UI color and system theme change callback.
2024-02-13 23:43:21 +01:00
bruvzg ee53ae28df
Add method to get "base" system UI color (macOS/Windows) and system theme change callback. 2024-02-13 18:38:53 +02:00
bruvzg deffe6a3be
[macOS] Add support for native help menu search callbacks, integrate editor help. 2024-02-13 18:37:37 +02:00
Rémi Verschelde e0c24eb554
Merge pull request #88282 from rburing/concave_motion_2d
`GodotCollisionSolver2D::solve_concave`: Fix culling in case of motion
2024-02-13 17:24:34 +01:00
Rémi Verschelde eb77418075
Merge pull request #87006 from AThousandShips/frame_fix
Fix member names of `AudioFrame` to match extension
2024-02-13 17:23:37 +01:00
A Thousand Ships d8b29efe66
Fix member names of `AudioFrame` to match extension 2024-02-13 15:37:09 +01:00
bruvzg 8da36031e4
Implement support for application status indicators (tray icons). 2024-02-13 15:59:35 +02:00
Ricardo Buring 87446fd9b3 GodotCollisionSolver2D::solve_concave: fix culling in case of motion 2024-02-13 14:42:09 +01:00
Rémi Verschelde dfe226b933
Merge pull request #88270 from TokageItLab/avoid-near-far
Avoid unqualified-id "near" and "far" in Node3DEditor/Viewport
2024-02-13 11:25:24 +01:00
Silc Lizard (Tokage) Renew 67e38709fd Avoid unqualified-id "near" and "far" in Node3DEditor/Viewport 2024-02-13 18:53:21 +09:00
Erik Johnson eab95698cd
Fix shadows for billboarded Sprite3D's 2024-02-13 10:36:38 +01:00
Rémi Verschelde 9050ee1542
Merge pull request #87297 from adamscott/2d-pixel-art-stability
Stabilize snapping 2D transforms to pixel
2024-02-12 23:53:51 +01:00
Adam Scott 35b640107f
Stabilize snapping 2D transforms to pixel
Co-authored-by: Danni <34800072+KeyboardDanni@users.noreply.github.com>
2024-02-12 11:04:01 -05:00
Dario 73eff10c76 Finish splitting functionality of the Vulkan and D3D12 backends into RenderingDeviceDriver. 2024-02-12 10:02:18 -03:00
Rémi Verschelde 24bd30716e
Merge pull request #87959 from Scony/fix-navi-sync-errors
Add means for fixing navmap synchronization errors
2024-02-12 13:34:30 +01:00
Rémi Verschelde f12d737681
Merge pull request #87796 from RandomShaper/shader_cache_split
Namespace shader cache files by graphics API
2024-02-12 13:34:18 +01:00
Pawel Lampe 9ea8d4fa38 Add means for fixing navmap synchronization errors 2024-02-11 21:06:47 +01:00
ACB 09d2c09434 Make `RID_Owner<Texture>` threadsafe in `TextureStorage` for gles3 2024-02-11 17:23:00 +01:00
Jovan Gerodetti 48b71cf700 Assign missing surface data fields in dummy render server 2024-02-11 14:58:34 +01:00
A Thousand Ships 684752e75b
Replace error checks against `size` with `is_empty` 2024-02-09 12:50:15 +01:00
Rémi Verschelde e9e54372b7
Merge pull request #88021 from Chubercik/fix_mingw_compile
Fully initialize all members of structs `IdentifierActions`, `GeneratedCode` and `DefaultIdentifierActions`
2024-02-09 12:35:26 +01:00
A Thousand Ships 406d7e6d37
Fix missing instance type in dummy renderer 2024-02-08 12:15:26 +01:00
Rémi Verschelde 4a30fe5e7c
Merge pull request #86564 from Giwayume/feature/canvas-item-shader-custom-data
Support CUSTOM shader attributes in 2D
2024-02-08 10:53:24 +01:00
Rémi Verschelde 7223c5b54a
Fix various typos with codespell
Using 2.2.7.dev115+g0eb441d6.

Had to add `cancelled` to the ignore list, as it's a Wayland signal which
we're handling in our code, so we don't want codespell to fix that "typo".

Also includes the typo fix from #87927.

Co-authored-by: Divyanshu Shekhar <61140213+divshekhar@users.noreply.github.com>
2024-02-07 11:09:34 +01:00
Rémi Verschelde 9346094fb8
Merge pull request #88005 from jsjtxietian/audio-data-race
Fix data race regarding `prof_time` in `AudioDriver` and `AudioServer`
2024-02-07 11:04:24 +01:00
Rémi Verschelde 251d5b3669
Merge pull request #87715 from Scony/add-is-baking
Expose `is_baking` method in navigation servers and region nodes.
2024-02-07 10:58:27 +01:00
Jakub Marcowski b38ac30fe0 Fully initialize all members of structs `IdentifierActions`, `GeneratedCode` and `DefaultIdentifierActions` 2024-02-06 20:02:46 +01:00
jsjtxietian cf1ede9129 Fix data race regarding `prof_time` in `AudioDriver` and `AudioServer` 2024-02-06 16:55:27 +08:00
Pawel Lampe c2cfc0d409 Expose `is_baking` method in navigation servers and region nodes. 2024-02-05 22:04:22 +01:00
vittorioromeo 55ed34e37c Use '_v' shorthand for type traits and 'if constexpr' where appropriate 2024-02-02 15:43:21 +01:00
Rémi Verschelde fb5f34a75a
Merge pull request #87745 from dsnopek/openxr-change-reference-space
OpenXR: Allow changing play area mode during active session
2024-02-02 12:03:09 +01:00
Pedro J. Estébanez f3ef83517a Namespace shader cache files by graphics API 2024-01-31 20:19:12 +01:00
David Snopek 5935bfa860 OpenXR: Allow changing play area mode during active session 2024-01-31 12:58:22 -06:00
lawnjelly 4577dfdb67 Shadow volume culling and tighter shadow caster culling
Existing shadow caster culling takes no account of the camera.
This PR adds the highly encapsulated class RenderingLightCuller which can cut down the casters in the shadow volume to only those which can cast shadows on the camera frustum.
2024-01-30 08:38:31 +00:00
A Thousand Ships 666daf47c3
Free dummy renderer objects
These leaked during tests etc.
2024-01-29 19:28:29 +01:00
Rémi Verschelde fa48a51183
Merge pull request #87688 from AThousandShips/what_is_this
Remove unnecessary `this->` expressions
2024-01-29 13:18:09 +01:00
Rémi Verschelde 5c61803971
Merge pull request #87668 from bruvzg/add_baseline_offset
[TextServer / Font] Add support for customizable baseline offset.
2024-01-29 13:17:52 +01:00
Rémi Verschelde 8202a73c73
Merge pull request #87512 from DarioSamo/rd_graph_fixes
Fix validation errors by improving stage and slice tracking behavior of RenderingDeviceGraph.
2024-01-29 13:17:12 +01:00
Rémi Verschelde a248e8c78d
Merge pull request #87502 from mihe/soft-body-bindings
Bind physics server methods related to `SoftBody3D`
2024-01-29 13:17:09 +01:00
A Thousand Ships 15369fdb1d
Remove unnecessary `this->` expressions 2024-01-29 09:59:18 +01:00
bruvzg 85df221610
[TextServer / Font] Add support for customizable baseline offset. 2024-01-28 13:26:49 +02:00
baptr 90a5f23e79 Fix editor profiler script function sort order
The engine internally limits the number of functions reported back (to
16 by default). To this point, it's been sort the profiling info in
*ascending* order of time spent, then trimming the list. This meant
we may only see the best (fastest) functions, instead of the worst
that you probably want when profiling.

Now the servers_debugger sort more closely matches the local_debugger
one, which worked fine.
2024-01-27 17:12:27 -08:00
Mikael Hermansson 06f2f1ecbc Bind physics server methods related to `SoftBody3D` 2024-01-26 17:15:52 +01:00
Dario 39f279710c Improve stage and slice tracking behavior of RenderingDeviceGraph to fix various synchronization issues. 2024-01-26 10:12:54 -03:00
Rémi Verschelde 535a2a6f27
Merge pull request #86581 from MJacred/optimize/audio_server
Optimize `AudioServer::_driver_process()`
2024-01-26 11:43:25 +01:00
MJacred 43a709fd0d Optimize AudioServer::_driver_process()
Move expensive calculations outside inner hot loops.

Forward-ported from 3.6
2024-01-26 10:11:13 +01:00
Yuri Sizov 3f7ea71e88 Merge pull request #87495 from jsjtxietian/USE_LIGHT_SHADER_CODE
Clean up outdated `USE_LIGHT_SHADER_CODE` usage
2024-01-25 16:27:14 +01:00
Yuri Sizov 1b83e8ae81 Merge pull request #87460 from BastiaanOlij/stereo_ivec
Add ivec variants to multiview_uv for stereo rendering
2024-01-25 16:27:10 +01:00
Yuri Sizov 1018706c87 Merge pull request #87390 from clayjohn/dummy-multimesh
Add basic multimesh data needed for headless export to the Dummy rendering server
2024-01-25 16:27:06 +01:00
Yuri Sizov 672b034076 Merge pull request #87303 from bruvzg/fd_options_no_editor
[Native File Dialog] Add support for adding custom options to the dialogs (w/o editor changes).
2024-01-25 16:26:58 +01:00
Yuri Sizov b698204a1e Merge pull request #87505 from BastiaanOlij/fix_mobile_refprobe_validation
Fix framebuffer created for reflection probe in mobile renderer
2024-01-24 14:08:52 +01:00