Commit Graph

4993 Commits

Author SHA1 Message Date
Stuart Carnie 82f2fa1180 Metal: Reduce warnings and prevent incompatible library code when baking
- Remove compiler warnings whilst baking Metal source to binary
  libraries, so true errors are easier to spot. Speeds up compilation,
  with reduced STDOUT.
- Prevent invalid Metal libraries when baking to older target OSs,
  which earlier MSL language support. In these cases, SPIRV-Cross
  generates emulated atomic code via buffers (rather than images), that
  isn't supported by Godot's Metal driver. These shaders are marked with
  a new INVALID flag that triggers a recompilation on the device, by
  signaling that the cache is invalid.
2026-04-15 18:47:15 +10:00
Thaddeus Crews 4a9684b0ff Merge pull request #117537 from allenwp/remove-10-bit-vulkan-swapchain-formats
Remove unnecessary Vulkan swap chain formats.
2026-04-10 10:32:31 -05:00
Skyth 83d2b84a51 Refactor raytracing pipelines. 2026-04-10 14:21:02 +03:00
Thaddeus Crews 755fa449c4 Merge pull request #118318 from clayjohn/compatibility-sky-shader-error
Fix compile errors in sky shader in the compatibility renderer
2026-04-08 17:00:44 -05:00
Thaddeus Crews 967b56efec Merge pull request #118317 from clayjohn/sky-shader-fallback
Ensure that sky shader automatic mode consistently uses the fallback
2026-04-08 17:00:43 -05:00
clayjohn 63c49cc668 Ensure that sky shader automatic mode consistently uses the fallback
This is necessary so that the proper backing textures can be allocated for the sky shader
2026-04-08 10:49:18 -07:00
clayjohn 7282051271 Fix compile errors when using HALF_RES_COLOR, QUARTER_RES_COLOR, or TIME in a sky shader in the compatibility renderer 2026-04-08 10:34:58 -07:00
Thaddeus Crews b6f86739b6 Merge pull request #109911 from TCROC/fix-particles-moving-timescale-0
Fix particles moving when timescale is 0
2026-04-08 09:25:25 -05:00
Pāvels Nadtočajevs eeafab862d Increase max RID count for some owners, decrease RID usage by RichTextLabel. 2026-04-07 17:07:23 +03:00
Thaddeus Crews 223c9417bd Merge pull request #115632 from akien-mga/gles3-split-platform-egl
GLES3: Split EGL includes in `platform_egl.h`
2026-04-07 06:44:49 -05:00
Thaddeus Crews df7e539878 Merge pull request #118165 from shiena/feature/update-apple-camera
Fix camera docs and port missing features to camera_apple
2026-04-07 06:44:48 -05:00
Thaddeus Crews cd32d9949f Merge pull request #118083 from allenwp/hdr-macos-vulkan
Add HDR output support to Vulkan on macOS.
2026-04-07 06:44:43 -05:00
Rémi Verschelde 7567211e8b GLES3: Split EGL includes in platform_egl.h
EGL brings in platform-specific headers such as the dreaded `windows.h`,
and `platform_gl.h` is used throughout `drivers/gles3` for basic OpenGL
types such as `GLuint`. We don't want `windows.h` pollution there.

Note for Android: EGL seems used explicitly only via `rasterizer_gles3.cpp`
to enable GL debug printing, and some custom stuff in `config.cpp`.
2026-04-07 12:07:22 +02:00
Thaddeus Crews fdc9f35119 Merge pull request #117148 from blueskythlikesclouds/rt-api-adjustments
Raytracing API adjustments.
2026-04-06 13:02:27 -05:00
Thaddeus Crews 03723198e0 Merge pull request #118163 from AltayEvrenOzsan/fix/texture-blit-math-constants
Added math constants to texture-blit
2026-04-06 13:02:22 -05:00
Thaddeus Crews 201a68f700 Merge pull request #117771 from Calinou/lightmapgi-fix-compatibility-probe-update-speed
Fix LightmapGI probe update speed setting not applying in Compatibility
2026-04-06 13:02:10 -05:00
Allen Pestaluky 0810756a9f Add HDR output support to Vulkan on macOS.
Co-authored-by: Josh Jones <kilauea.jones@gmail.com>
Co-authored-by: Stuart Carnie <stuart.carnie@gmail.com>
2026-04-06 11:11:18 -04:00
Altay Evren Özsan d18e225ba5 Added math constants to texture-blit
Fixes #118144

Fixed an issue where texture-blit shader was failing to compile when using some math constants because the code was incorrectly passing name strings into the shader
2026-04-05 22:45:50 +03:00
Thaddeus Crews e37b5c4035 Merge pull request #118076 from allenwp/output-max-linear-value-events
[Apple, Wayland] HDR Output: Emit window events when HDR state changes
2026-04-03 11:52:22 -05:00
KOGA Mitsuhiro 0284ce33b5 Improve camera_apple robustness and lifecycle handling
- App pause/resume: Stop camera capture on background transition and
  restore on foreground, preventing resource leaks
- Row stride: Handle pixel buffer row stride != width to prevent
  data corruption on devices with padded buffers
- Device lock: Track lock state and properly unlock on deactivation
- Input/output validation: Check canAddInput/canAddOutput before
  adding to capture session, with proper cleanup on failure
2026-04-04 01:43:25 +09:00
Skyth e16a299a86 Raytracing API adjustments. 2026-04-03 18:06:34 +03:00
Thaddeus Crews 7351e6909b Merge pull request #116962 from blueskythlikesclouds/blas-create-api-change
Refactor `blas_create` to accept multiple geometries.
2026-04-02 12:33:23 -05:00
Thaddeus Crews 872cfabf3d Merge pull request #79731 from Calinou/viewport-add-nearest-3d-scaling
Add a nearest-neighbor scaling option to Viewport's Scaling 3D Mode property
2026-04-02 12:33:13 -05:00
Allen Pestaluky f9145cbc72 Add HDR events for Wayland and Apple display servers
Co-authored-by: ArchercatNEO <tururu.pompella@gmail.com>
2026-04-02 12:50:38 -04:00
Thaddeus Crews 137fa73ed4 Merge pull request #118054 from demolke/label
Retrieve drive information only when needed
2026-04-01 18:10:32 -05:00
Thaddeus Crews eda3dc13b9 Merge pull request #109142 from QbieShay/qbe/particle-process-windown
Extra particle tools for seeking
2026-04-01 18:10:08 -05:00
demolke e79ab92ed1 Retrieve drive information only when needed
Also fix the call to GetVolumeInformationW which requires trailing slash

https://learn.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-getvolumeinformationw
2026-04-01 01:12:29 +02:00
Thaddeus Crews cec809c09e Merge pull request #115437 from bruvzg/macos_sigh
Define `sighandler_t` only if `_GNU_SOURCE` is not defined.
2026-03-30 13:35:43 -05:00
Thaddeus Crews 213e805487 Merge pull request #116198 from bruvzg/win_names
[Windows] Disallow file/folder names ending with period and space.
2026-03-30 13:35:37 -05:00
Thaddeus Crews 656a268688 Merge pull request #117010 from bruvzg/voll_name_win
[Windows] Show drive names in file dialog.
2026-03-30 13:35:34 -05:00
Rémi Verschelde 2af785641a Merge pull request #117819 from bruvzg/metal_264
Fix Metal driver build with Xcode 26.4.
2026-03-28 11:15:45 +01:00
StarryWorm 4ae336740d Add missing resource_*.h includes
Add missing `resource_importer.h` includes
Add missing `resource_loader.h` includes
Add missing `resource_saver.h` includes
2026-03-27 07:03:39 -04:00
Qbieshay 158d8784c3 Add parameter to request_process_time to have particle process without
emission.

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2026-03-27 11:57:08 +01:00
Rémi Verschelde 89379c4fcf Merge pull request #117740 from Josvanegmond/patch-1
[Accessibility] Fix `update_set_name` setting a space character as the node label when name and `name_extra_info` is empty
2026-03-26 16:01:34 +01:00
Rémi Verschelde e030230a99 Merge pull request #117445 from bruvzg/angle_no_dyn
[macOS/Windows] Remove dynamically linked ANGLE support, add flag to enable/disable ANGLE.
2026-03-26 16:01:25 +01:00
Rémi Verschelde 231b5dc0d4 Merge pull request #117142 from blueskythlikesclouds/compatibility-canvas-background-exposure-fix
Fix exposure not working with canvas background on Compatibility.
2026-03-26 16:01:20 +01:00
Rémi Verschelde e3d3689a0c iOS: Fix missing thread_safe.h include after refactors 2026-03-25 12:05:58 +01:00
Pāvels Nadtočajevs c9c58020d8 Fix Metal driver build with Xcode 26.4. 2026-03-25 12:56:24 +02:00
Hugo Locurcio 5df0c8b271 Add a nearest-neighbor scaling option to Viewport's Scaling 3D Mode property
This is useful for 3D games with a pixel art appearance, or when
using a resolution scale of `0.5` to improve performance without
compromising crispness too much when not using FSR 1.0.

The property hints now allow decreasing the scale further to accomodate
for pixel art use cases, as well as increased precision in the value
(useful for a scale of `0.3333`).

Co-authored-by: Daniel Savage <dansvg@gmail.com>
Co-authored-by: Kaleb Reid <78945904+Kaleb-Reid@users.noreply.github.com>
2026-03-25 00:05:54 +01:00
Jos van Egmond 3ade83cd1b Fix (accessibility): strip spaces and only set label if full name is not empty.
When no name and extra info is set, it would still add a space. is_empty() would never be true. The space character would be set as label and screen readers are prompted to read it with various output. Fixed by stripping spaces.
2026-03-24 00:43:34 +01:00
Hugo Locurcio ee8aa5176b Fix LightmapGI probe update speed setting not applying in Compatibility
This now applies the setting on project launch like in Forward+/Mobile.
Runtime changes with `RenderingServer.lightmap_set_probe_capture_update_speed()`
were already functional.
2026-03-23 23:58:34 +01:00
Rémi Verschelde cd8ee7d229 Merge pull request #116620 from QbieShay/qbe/rework-align-rotation
Improve options for orienting particles in space
2026-03-23 22:34:16 +01:00
Rémi Verschelde 7958080d65 Merge pull request #116220 from dsnopek/foveated-rendering-vulkan-subsampled-image
OpenXR: Allow using Vulkan subsampled images with foveated rendering
2026-03-23 22:34:11 +01:00
Rémi Verschelde c3169e09e1 Merge pull request #117744 from stuartcarnie/issue_117693_metal_crash
Metal: Fix crash accessing `NULL` PixelFormats
2026-03-23 12:58:29 +01:00
Pāvels Nadtočajevs 5fc9f6b3d9 [macOS/Windows] Remove dynamically linked ANGLE support, add flag to enable/disable ANGLE.
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2026-03-23 13:01:25 +02:00
Stuart Carnie 541742e43a Metal: Fix crash accessing NULL PixelFormats
Closes #117693
2026-03-23 10:56:04 +11:00
kleonc 73c860cde2 Fix GLES3 batching skipping rendering all items 2026-03-22 13:59:33 +01:00
Thaddeus Crews fb4a304dee Merge pull request #111965 from Ivorforce/memnew-typed
Make `memnew(RefCounted)` return `Ref`, to improve ownership safety
2026-03-19 15:39:15 -05:00
Thaddeus Crews 013fc6f92a Merge pull request #114102 from AR-DEV-1/13823-imp
Add tilde symbol (~) to the FileDialog
2026-03-19 10:20:04 -05:00
Qbieshay 113ace0cd3 Add options for billboarding on GPUParticles3D
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2026-03-19 16:10:20 +01:00