963c20565b
Remove OAHashMap, in favour of AHashMap.
...
The two types had (mostly) the same decisions, but `AHashMap` is a faster implementation, and is more consistent with `HashMap`.
2025-05-31 15:50:10 +02:00
8b2dda868b
Correctly place viewport and use viewport relative rect for the final blit in Compatibility renderer
2025-05-28 22:11:20 -07:00
de37627404
Merge pull request #102552 from DarioSamo/shader-baker
...
Add shader baker to project exporter.
2025-05-28 17:09:38 -05:00
90c75d02dd
Merge pull request #106732 from stuartcarnie/rd_reduce_allocations
...
Renderer: Eliminate `String` allocations for all labels in the renderer
2025-05-28 09:47:43 -05:00
7d93119353
Renderer: Eliminates String allocations for all labels in the renderer
...
Uses `Span<char>` to avoid additional allocations in the graph.
2025-05-28 06:01:35 +10:00
5a30a7e7cd
Add shader baker to project exporter.
...
Metal Support contributed by Migeran (https://migeran.com ) and Stuart Carnie.
Co-authored-by: Stuart Carnie <stuart.carnie@gmail.com >
Co-authored-by: Gergely Kis <gergely.kis@migeran.com >
2025-05-27 12:45:27 -03:00
1194609662
Merge pull request #106827 from akien-mga/d3d12-fix-DCOMP_ENABLED-inconsistency
...
D3D12: Fix inconsistent value for `DCOMP_ENABLED` in platform code
2025-05-27 09:39:28 -05:00
4cb8a0c77e
Add resize_initialized and resize_uninitialized to Vector. These functions serve as replacements for resize, to make sure the caller understands whether elements need to be initialized 'by hand' after the call.
2025-05-26 18:35:41 +02:00
514e80bcc1
D3D12: Fix inconsistent value for DCOMP_ENABLED in platform code
2025-05-26 15:16:19 +02:00
d609cf62a0
Implement get_filesystem_type on macOS and Linux.
2025-05-23 23:05:06 +03:00
eb4f3a82a3
Ignore destination alpha when blitting to window in compatibility renderer
2025-05-22 22:21:32 -04:00
452dc667fb
Merge pull request #106592 from beicause/shader-fix-editor-mat-default
...
Shader: Fix the default behavior when mat uniforms are null
2025-05-22 12:15:08 -05:00
8085fd3102
Merge pull request #93142 from clayjohn/z_clip_scale
...
Add new shader built ins: `Z_CLIP_SCALE` and `PERSPECTIVE_SCALE`
2025-05-22 12:15:06 -05:00
f129e542da
Merge pull request #106708 from bruvzg/nohang_exitcode
...
Fix `execute_with_pipe` / `create_process` exit code.
2025-05-22 12:15:06 -05:00
d19b34c5be
Merge pull request #106694 from stuartcarnie/metal_fix_clear_crash
...
Metal: Fix crash when clearing render buffers
2025-05-22 12:15:05 -05:00
dd5c5ed631
Merge pull request #106267 from clayjohn/android-msaa-bug
...
Use a fragment shader copy instead of a blit copy in the final blit to screen in the Compatibility backend
2025-05-22 12:14:57 -05:00
1501f447bf
Fix execute_with_pipe / create_process exit code.
2025-05-22 08:56:37 +03:00
32043fc682
Metal: Fix crash when clearing render buffers
2025-05-22 07:25:48 +10:00
9a1def8da1
Add new StandardMaterial properties to allow users to control FPS-style objects (hands, weapons, tools close to the camera)
...
Add new shader built in Z_CLIP_SCALE to easily adjust clipping distance to avoid clipping walls etc.
Add fov_override to StandardMaterial3D to easily have a custom FOV for FPS objects
Add IN_SHADOW_PASS built-in to shaders for tweaking materials without impacting shadow maps
2025-05-21 10:16:05 -03:00
4621d3e1f4
Shader: Fix the default behavior when mat uniforms are null
2025-05-21 13:28:39 +08:00
a0e3ade99f
Use a fragment shader copy instead of a blit copy in the final blit to screen in the Compatibility renderer to avoid black screen when "Force MSAA 4x is used" on Android devices
2025-05-20 16:34:43 -07:00
4201db6f01
Metal: Ensure stencil-only rendering is supported
...
Closes #106652
2025-05-21 08:45:30 +10:00
25a3c27c41
Merge pull request #105628 from rsanchezsaez/apple/ios-visionos-4.5
...
Native visionOS platform support
2025-05-20 23:09:07 +02:00
19e6bc68aa
Explicitly handle Image AlphaMode enum instead of treating as bool
...
Co-authored-by: K. S. Ernest (iFire) Lee <ernest.lee@chibifire.com >
2025-05-20 05:04:23 -07:00
47971c0a27
Introduce 'visionos' platform derived from 'apple_embedded'
2025-05-19 15:47:01 -07:00
457299449d
Introduce 'drivers/apple_embedded' abstract platform for code reuse
2025-05-19 15:37:13 -07:00
2d42b889d1
Merge pull request #104124 from Ivorforce/alloc-static-calloc
...
Add `Memory::alloc_static_zeroed` to allocate memory that's filled with zeroes.
2025-05-19 08:01:33 -05:00
83ba0687f7
Merge pull request #106407 from DarioSamo/present-validation-error
...
Rework semaphores for presentation to be created per swap chain image to fix validation error.
2025-05-15 10:22:18 -05:00
902d2b45bb
Merge pull request #106400 from RandomShaper/win_compat
...
Improve platform compatibility of Windows and Direct3D 12
2025-05-15 10:22:16 -05:00
e625565853
Merge pull request #106396 from chocola-mint/canvas-item-add-triangle-array-count
...
Implement the `count` parameter in `RenderingServer.canvas_item_add_triangle_array`
2025-05-15 10:22:16 -05:00
ad22f65489
Rework semaphores for presentation to be created per swap chain image to fix validation error.
2025-05-14 15:27:51 -03:00
7759296594
Direct3D 12: Let platforms report support for direct composition
2025-05-14 17:48:19 +02:00
3d645bdd13
Merge pull request #106392 from bruvzg/wine_sh_secure
...
[Wine] Use `_SH_DENY*` flags instead of unsupported `_SH_SECURE`.
2025-05-14 09:44:15 -05:00
43010e8839
Merge pull request #106357 from YYF233333/remove_search_array
...
Move bisect functionality to `Span` and deduplicate code
2025-05-14 09:44:14 -05:00
fb39aa4fd3
Merge pull request #105833 from marcosc90/perf-web-shader-source
...
[Web] Optimize `GL.getSource` for known-length shader sources
2025-05-14 09:44:08 -05:00
d0693d6867
Merge pull request #89988 from LunaCapra/specular-occlusion
...
Add support for bent normal maps for specular occlusion and indirect lighting
2025-05-14 09:44:06 -05:00
101dc9868f
Implement the count parameter in RenderingServer.canvas_item_add_triangle_array()
2025-05-14 22:52:30 +09:00
563136f859
[Wine] Use _SH_DENY* flags instead of unsupported _SH_SECURE.
2025-05-14 13:50:28 +03:00
3bf400ffae
Move bisect to Span and deduplicate code.
...
Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com >
2025-05-14 18:19:09 +08:00
3207066e19
Add Memory::alloc_static_zeroed to allocate memory that's filled with zeroes.
...
This is generally faster than `malloc` followed by `memset` / loop-set to 0.
2025-05-13 01:57:05 +02:00
9828c365c3
Add support for bent normals for indirect lighting and specular occlusion
2025-05-12 12:52:04 +02:00
f658161619
macOS: Embedded window can be dismissed by clicking close
...
- Installed a SIGINT handler to terminate the application gracefully.
- Handle varying display scaling
2025-05-12 07:09:42 +10:00
19bb18716e
Merge pull request #102399 from clayjohn/cull-mask-overhaul
...
Overhaul the cull mask internals for Lights, Decals, and Particle Colliders
2025-05-09 11:29:28 -05:00
821170f054
Merge pull request #106145 from lander-vr/ambient-light-specular-occlusion
...
Add specular occlusion from ambient light
2025-05-09 11:29:14 -05:00
305216f558
Overhaul the cull mask internals for Lights, Decals, and Particle Colliders
...
Properly pair and unpair instances based on cull mask to avoid any unnecessary processing and to ensure that changing the cull_mask and layer_mask actually updates culling behavior
2025-05-08 21:39:12 -07:00
56730d0cb2
Add specular occlusion from ambient light
...
Co-authored-by: guerro323 <kaltobattle@gmail.com >
2025-05-08 23:52:01 +02:00
288822e330
Merge pull request #105570 from kroketio/texture-extension-mipmaps
...
RenderingDevice: Pass mipmap count to `texture_create_from_extension()`
2025-05-08 07:19:16 -05:00
909f9ca9d4
Compatibility: Disable environment ambient light when affected by light probes
2025-05-07 18:08:54 +02:00
6ae50cad17
RenderingDevice: introduce parameter 'mipmaps' for texture_create_from_extension()
2025-05-07 15:15:55 +03:00
a895a8682f
Merge pull request #102783 from stuartcarnie/fix_gles3_lightmapper
...
GLES3: Fix errors baking light map with compatibility renderer
2025-05-06 08:38:09 -05:00