Thaddeus Crews
32c83a228d
Style: Add WARNING:
as new comment admonition
2024-09-25 09:44:42 -05:00
Thaddeus Crews
9f9ee0c813
SCons: Add unobtrusive type hints in SCons files
2024-09-25 09:34:35 -05:00
Rémi Verschelde
73bf121ceb
Merge pull request #93786 from alvinhochun/viewport-pixel-snap-fix
...
Apply "snap 2D transforms to pixel" to viewport
2024-09-25 12:39:10 +02:00
Rémi Verschelde
70fede82c5
Merge pull request #93324 from tracefree/reinhard-fix
...
Fix incorrect Reinhard tonemap operator
2024-09-25 12:39:06 +02:00
Rie
5efa6ba489
Fix incorrect Reinhard tonemap operator
2024-09-25 12:34:23 +02:00
Paweł
b88585abfc
Add linux camera support
2024-09-25 12:08:06 +02:00
Hugo Locurcio
0eb06da057
Jitter shadow map dithering pattern across frames when TAA is enabled
...
This improves shadow quality by reducing the visibility of the noisy
pattern caused by dithering.
This jittering also applies when FSR2 is enabled, as it provides its own
form of temporal antialiasing.
Co-authored-by: Clay John <claynjohn@gmail.com>
2024-09-24 15:52:07 -07:00
Ricardo Buring
7c4c4b9987
Move Godot Physics 2D into a module; add dummy 2D physics server
...
If the module is enabled (default), 2D physics works as it did before.
If the module is disabled and no other 2D physics server is registered
(via a module or GDExtension), then we fall back to a dummy
implementation which effectively disables 2D physics functionality (and
a warning is printed).
The dummy 2D physics server can also be selected explicitly, in which
case no warning is printed.
2024-09-23 17:33:45 +02:00
Alvin Wong
1bd66af54c
Apply snap 2D transforms to pixel to viewport
...
We shall not leave the viewport transform to be rounded by the code for
rounding canvas items. Since the viewport transform is inverse to the
camera transform, we get incorrect rounding at the halfway point that
misaligns the viewport and the canvas item which the camera is
following.
Instead, reintroduce viewport rounding, but do it in a way that matches
the rounding of canvas items. Also take into account the half-pixel
offset of the centre point when viewport dimension is not divisible by
two. For `CanvasLayer`s that follows viewport, take into account the
scale when rounding. Overall this should work better compared to the
rounding in Godot 4.2 (and earlier).
2024-09-23 20:34:11 +08:00
Rémi Verschelde
dd71bc2d3b
Merge pull request #95252 from rburing/3d_physics_module
...
Move Godot Physics 3D into a module; add dummy 3D physics server
2024-09-23 12:27:55 +02:00
Jiang Yiheng
864d4fb32a
Fix hash calculation for NTSliceKey
...
A bug was introduced from 057367bf
by adding FSR 2.2.1 support.
Which increases hash collision and hurts performance.
2024-09-22 21:08:18 +08:00
Ricardo Buring
0333648cea
Move Godot Physics 3D into a module; add dummy 3D physics server
...
If the module is enabled (default), 3D physics works as it did before.
If the module is disabled and no other 3D physics server is registered
(via a module or GDExtension), then we fall back to a dummy
implementation which effectively disables 3D physics functionality (and
a warning is printed).
The dummy 3D physics server can also be selected explicitly, in which
case no warning is printed.
2024-09-21 21:19:45 +02:00
Rémi Verschelde
5f5c690481
Merge pull request #97260 from clayjohn/pixel_snap
...
Calculate pixel snap in canvas space instead of world space
2024-09-21 11:50:52 +02:00
clayjohn
e75900e1ad
Calculate pixel snap in canvas space instead of world space
...
This ensures that you are actually snapping to pixels in the viewport and not an arbitrary amount
2024-09-20 17:43:33 -07:00
David Snopek
1a6f8512bc
Add external texture support (GLES3)
...
Co-authored-by: Fredia Huya-Kouadio <fhuyakou@gmail.com>
Co-authored-by: Mauricio Narvaez <nvz@meta.com>
2024-09-20 10:48:32 -05:00
Rémi Verschelde
34dd5e0c37
Merge pull request #97217 from stuartcarnie/97185_subpixel_rendering
...
Metal: Fix subpixel blending; fix inconsistent blend state
2024-09-20 16:07:03 +02:00
Thaddeus Crews
b37fc1014a
Style: Apply new clang-format
changes
2024-09-20 08:09:48 -05:00
Stuart Carnie
e826ab9ba9
[2D,Metal]: Fix subpixel blending; fix inconsistent blend state in Metal
2024-09-20 15:16:31 +10:00
Rémi Verschelde
b1b4c5da4b
Merge pull request #96928 from dsnopek/rename-and-expose-texture-create-external
...
Expose a function to create textures from a native handle in the compatibility renderer
2024-09-19 17:13:27 +02:00
David Snopek
7d56b09f23
Expose a function to create textures from a native handle in the compatibility renderer
2024-09-19 09:05:32 -05:00
Rémi Verschelde
3abff94a24
Merge pull request #97130 from Rindbee/check-space-in-remove_soft_body_from_query
...
Add forgotten `get_space()` check in `GodotArea3D::remove_soft_body_from_query()`
2024-09-18 11:15:47 +02:00
Rémi Verschelde
b10338132e
Merge pull request #97006 from Gaktan/project_dialog_vulkan_crash
...
Fix Vulkan Instance initialized twice in ProjectDialog
2024-09-18 11:15:35 +02:00
风青山
2f515d6a27
Add forgotten get_space()
check in GodotArea3D::remove_soft_body_from_query()
...
My fault, I added a `get_space()` check for the other `GodotArea3D::remove_*_from_query()`
but forgot about `soft_body`.
2024-09-18 07:59:50 +08:00
Rémi Verschelde
27dacd59e0
Merge pull request #97109 from pattlebass/pitch-shift-fix
...
AudioEffectPitchShift: Fix distortion when pitch is 1.0
2024-09-17 21:02:25 +02:00
Gaktan
a45dd84724
Fix Vulkan Instance initialized twice in ProjectDialog
2024-09-17 20:35:10 +02:00
Fabian S.
8ebabf68f8
AudioEffectPitchShift: Fix distortion when pitch is 1.0
2024-09-17 15:16:08 +03:00
Stuart Carnie
5b5dc00c52
2D: Remove redundant assignment
2024-09-17 06:32:49 +10:00
Rémi Verschelde
67c9708eb8
Merge pull request #95915 from BlueCube3310/betsy-bc1
...
Betsy: Add caching and BC1 compression support
2024-09-16 13:34:26 +02:00
Rémi Verschelde
8c6210a3eb
Merge pull request #92290 from clayjohn/LOD-fixes
...
Use distance to AABB surface to calculate Mesh LOD instead of using supports
2024-09-16 13:34:04 +02:00
Stuart Carnie
c113e5b143
2D: Fix use-after-free in batch rendering
...
Closes #96960
Fixes regression of #95574 using fix from #95666
2024-09-14 07:50:39 +10:00
Chaosus
4a16a0d60c
Fix broken sky shader
2024-09-13 08:53:26 +03:00
Rémi Verschelde
573badf150
Merge pull request #96875 from stuartcarnie/sgc/small_optimisations
...
[Editor, Servers] Minor optimizations
2024-09-12 09:25:53 +02:00
Rémi Verschelde
8d9a446397
Merge pull request #95473 from Chaosus/shader_fix_switch_bugs
...
Fix shader incorrectly expects `int` on `uint` and vice-versa in cases
2024-09-12 09:17:43 +02:00
BlueCube3310
606eedb0c9
Betsy: Add caching and BC1 compression support
2024-09-11 23:48:29 +02:00
David Snopek
c2af6bcb59
GDExtension: Mark virtual function as is_required
in extension_api.json
...
Co-authored-by: Jovan Gerodetti <jovan.gerodetti@titannano.de>
2024-09-11 16:48:14 -05:00
clayjohn
7ff106f828
Use distance to AABB surface to calculate Mesh LOD instead of using supports
2024-09-11 14:17:09 -07:00
Stuart Carnie
5cfacc8767
[Editor,Servers]: Minor optimizations
2024-09-12 06:22:04 +10:00
Stuart Carnie
a657ea42f1
2D: Add batching to RendererCanvasRenderRD
2024-09-12 05:26:06 +10:00
Rémi Verschelde
db977eaf13
Merge pull request #96858 from Chaosus/shader_fix_conditional_op
...
Fix shader crash when using unary minus in expression
2024-09-11 18:28:50 +02:00
TypeChecked
a8fc5e30a2
Fix typo in XRInterface comment
2024-09-11 18:18:26 +02:00
Chaosus
7d9ced5311
Fix shader crash when using unary minus in expression
2024-09-11 16:46:09 +03:00
Chaosus
b2611c198e
Fix shader incorrectly expects int
on uint
and vice-versa in cases
2024-09-11 09:22:27 +03:00
clayjohn
29df589632
Implement instance uniforms in Compatibility renderer
2024-09-10 12:20:47 -07:00
Rémi Verschelde
5303688c01
Merge pull request #96092 from smix8/region_point_query
...
Add navigation region point and segment queries
2024-09-10 09:51:27 +02:00
Rémi Verschelde
bc4c60c933
Merge pull request #94893 from rune-scape/no-const-cast-mesh-storage
...
Avoid `const_cast` in `mesh_storage.h`
2024-09-10 09:51:22 +02:00
smix8
287fdb16d5
Add navigation region point and segment queries
...
Adds point and segment queries for regions, e.g. closet point, point normal, or segment intersection.
2024-09-10 01:38:46 +02:00
Rémi Verschelde
27552a2f26
Merge pull request #96758 from RandomShaper/fix_the_shift_must_go_on
...
RenderingDevice: Fix uncapped mipmap sizes causing div-by-zero
2024-09-09 17:52:03 +02:00
Rémi Verschelde
493f3edce7
Merge pull request #96572 from adamscott/fix-samples-leak
...
Fix leak when using audio samples instead of streams
2024-09-09 17:51:42 +02:00
Pedro J. Estébanez
7f1989bac1
RenderingDevice: Fix uncapped mipmap sizes causing div-by-zero
2024-09-09 17:10:47 +02:00
Yuri Rubinsky
af92fdb0ac
Add basic support to evaluate operator value in shader language
2024-09-09 15:12:11 +03:00
Rémi Verschelde
73a0f6e90f
Merge pull request #83536 from wareya/new_cubic
...
Optimize cubic hermite algorithm in AudioStreamPlaybackResampled
2024-09-08 23:21:02 +02:00
Rémi Verschelde
aa07333abe
Merge pull request #96114 from BlueCube3310/sh-lightmap-packing
...
LightmapGI: Pack L1 SH coefficients for directional lightmaps
2024-09-06 22:38:29 +02:00
BlueCube3310
a89f4fa5a9
LightmapGI: Pack L1 SH coefficients for directional lightmaps
2024-09-05 22:46:58 +02:00
kleonc
c170f1afd2
Don't recalculate final render transforms for Y-sorted canvas items
2024-09-05 17:45:38 +02:00
kleonc
029045bcb6
Account for physics interpolation and transform snapping when Y-sorting
2024-09-05 17:45:37 +02:00
Adam Scott
d3ddce6b88
Fix leak when using audio samples instead of streams
2024-09-04 12:56:03 -04:00
Rémi Verschelde
82d7531a2e
Merge pull request #95990 from Breush/76166-sky-auto-radiance
...
Sky: Adapt radiance size if `AUTOMATIC_MODE` resolves to `REALTIME`
2024-09-04 17:12:02 +02:00
Alexis Breust
44e526d3d5
Sky: No more auto-selecting REALTIME mode if radiance is not 256
2024-09-04 10:54:08 +02:00
Rémi Verschelde
13a90e938f
Merge pull request #70096 from rune-scape/stringname-dict
...
StringName Dictionary keys
2024-09-03 17:38:06 +02:00
Rémi Verschelde
d15de6f264
Merge pull request #96292 from AThousandShips/null_check_ref_fix
...
Cleanup of raw `nullptr` checks with `Ref`
2024-09-03 16:13:55 +02:00
Rémi Verschelde
49ed6c558c
Merge pull request #86809 from clayjohn/TAA-disocclusion
...
Tune TAA disocclusion scale to avoid rejecting all samples during motion.
2024-09-03 16:13:26 +02:00
Rémi Verschelde
8120e0324a
Merge pull request #96512 from bruvzg/gds_base_stt
...
[TextServer] Fix structured text parser for GDScript comments.
2024-09-03 11:44:12 +02:00
Rémi Verschelde
d1c27f239d
Merge pull request #96486 from ComycSans/black_sky
...
Fix `SkyRD::Sky::free()` freeing shared material
2024-09-03 11:44:05 +02:00
Rémi Verschelde
63a8548693
Merge pull request #96426 from clayjohn/RD-reflection-probe-roughness
...
Use non-linear mapping for ReflectionProbe mip levels to match sky
2024-09-03 11:43:52 +02:00
Rémi Verschelde
6de2d31a61
Merge pull request #96351 from stuartcarnie/sgc/metal_light_betsy
...
Metal: Enable for betsy and lightmapper modules in compatibility mode
2024-09-03 11:43:42 +02:00
Rémi Verschelde
a2b64ed544
Merge pull request #95961 from RadiantUwU/fix-mesh-recursion
...
Fix shadow mesh recursion.
2024-09-03 11:43:16 +02:00
Rémi Verschelde
032235b6fc
Merge pull request #95503 from clayjohn/instance_none_crash
...
Avoid indexing instances without a base in scene cull phase
2024-09-03 11:43:08 +02:00
Rémi Verschelde
667778cf4d
Merge pull request #93448 from clayjohn/transmittance-fixes
...
Various fixes for transmittance effect
2024-09-03 11:42:57 +02:00
bruvzg
1829bc3663
[TextServer] Fix structured text parser for GDScript comments.
2024-09-03 09:54:09 +03:00
ComycSans
09e59fbec5
Fix SkyRD::Sky::free() freeing material
2024-09-02 18:59:31 +02:00
Rémi Verschelde
f546bf6aea
Merge pull request #96431 from viksl/fix-alpha-reflections-cull-order
...
Fix alpha material's reverse cull order.
2024-09-02 12:13:57 +02:00
Rémi Verschelde
f50ead48b0
Merge pull request #96128 from BlueCube3310/vram-profiler-texture-mem
...
Fix incorrect parameters for layered textures in VRAM texture memory profiler
2024-09-02 12:13:11 +02:00
Rémi Verschelde
28b2ed50b7
Merge pull request #96056 from Lielay9/expose_canvas_item_attach_skeleton
...
Expose `RenderingServer.canvas_item_attach_skeleton`
2024-09-02 12:13:08 +02:00
viksl
929c69bad8
Fixes alpha materials being rendered with a reverse cull which is visible in reflections from reflection probes.
2024-09-01 12:10:04 +02:00
BlueCube3310
e74bc3079a
Fix incorrect parameters for layered textures in Video RAM texture memory profiler
2024-09-01 11:49:30 +02:00
clayjohn
64f5443b14
Use non-linear mapping for ReflectionProbe mip levels to match sky
2024-09-01 01:40:42 -07:00
Radiant
70860aafd8
Fix shadow mesh recursion.
2024-08-31 22:31:43 +03:00
A Thousand Ships
194bdde947
Cleanup of raw nullptr
checks with Ref
...
Using `is_valid/null` over checks with `nullptr` or `ERR_FAIL_NULL` etc.
2024-08-31 15:01:09 +02:00
Stuart Carnie
a7a245de92
Metal: enable for betsy and lightmapper modules
...
To support this, the rendering_context_driver_metal.h header was updated
to recognise when it is included in non-Objective-C source files.
2024-08-31 08:29:07 +10:00
Rémi Verschelde
77bc419071
Merge pull request #96174 from DeeJayLSP/wav-docs
...
WAV stream/importer: Improve compression/loop names and descriptions
2024-08-30 23:37:50 +02:00
DeeJayLSP
5a50b3a6c5
WAV stream/importer: Improve compression/loop names and descriptions
2024-08-30 16:31:57 -03:00
rune-scape
154049ce17
StringName Dictionary keys
...
also added 'is_string()' method to Variant
and refactored many String type comparisons to use it instead
2024-08-29 13:39:27 -07:00
Rémi Verschelde
cb96fc95c3
Merge pull request #92316 from alula/msvc-clang
...
Add support for compiling with VS clang-cl toolset
2024-08-29 10:36:17 +02:00
Rémi Verschelde
96cbcc30e2
Merge pull request #90945 from Scony/extract-navigation-defaults
...
Extract navigation-related defaults to separate header
2024-08-29 10:36:14 +02:00
rune-scape
f04a9bb630
Avoid const_cast in mesh_storage.h
2024-08-28 14:46:03 -07:00
Alula
346cbc7f1f
Add support for compiling with VS clang-cl toolset
2024-08-28 13:30:44 -05:00
Rémi Verschelde
24f97f3f08
Merge pull request #94808 from RandomShaper/aud_srv_cod_sty
...
AudioServer: Fix code style issues
2024-08-28 00:12:25 +02:00
Rémi Verschelde
e98aaf1caa
Merge pull request #94477 from RedMser/typos-batch-1
...
Fix various typos
2024-08-28 00:12:12 +02:00
Rémi Verschelde
10a92287c6
Merge pull request #94352 from Chaosus/shader_ternary_fix
...
Fix multiple ternary expressions to be used without parenthesis
2024-08-28 00:12:07 +02:00
Rémi Verschelde
330fca1ffd
Merge pull request #93985 from alvinhochun/windows-gpu-pref
...
Respect integrated GPU preference in Windows Settings
2024-08-28 00:11:45 +02:00
Pawel Lampe
c3f1bfd5cb
Extract navigation-related defaults to separate header
2024-08-27 20:12:10 +02:00
Rémi Verschelde
9dfc41568a
Merge pull request #95984 from timothyqiu/what-identifier
...
Add `String.is_valid_unicode_identifier()`
2024-08-27 16:55:06 +02:00
Chaosus
f538376c3b
Add CLIP_SPACE_FAR
built-in to spatial shader
2024-08-27 08:48:46 +03:00
Haoyu Qiu
8bf4ecc026
Add String.is_valid_unicode_identifier()
...
- Adds `is_valid_unicode_identifier()`
- Adds `is_valid_ascii_identifier()`
- Deprecates `is_valid_identifier()`
- Renames `validate_identifier()` to `validate_ascii_identifier()`
2024-08-27 11:34:08 +08:00
Rémi Verschelde
1d3bdfcd06
Merge pull request #95862 from adamscott/fix-pitch-scale-before-play
...
Honor `pitch_scale` value before playing audio sample
2024-08-25 22:24:17 +02:00
Rémi Verschelde
68d188d521
Merge pull request #95888 from clayjohn/Lightmap-SH-coefficients
...
Use correct lightmap coefficients to ensure that the directional lightmap mode looks correct
2024-08-25 20:18:18 +02:00
Rémi Verschelde
cbe1d6f7af
Merge pull request #95274 from Chaosus/shader_forbind_const_func_decl
...
Forbid function declaration with a const qualifier in shaders
2024-08-25 20:18:10 +02:00
Hei
94e434b34e
Expose the function 'RenderingServer.canvas_item_attach_skeleton'
2024-08-25 04:13:04 +03:00
Matias N. Goldberg
59d0422dcd
Disable extra memory tracking by default
...
PR #90993 added several debugging utilities.
Among them, advanced memory tracking through the use of custom
allocators and VK_EXT_device_memory_report.
However as issue #95967 reveals, it is dangerous to leave it on by
default because drivers (or even the Vulkan loader) can too easily
accidentally break custom allocators by allocating memory through std
malloc but then request us to deallocate it (or viceversa).
This PR fixes the following problems:
- Adds --extra-gpu-memory-tracking cmd line argument
- Adds missing enum entries to
RenderingContextDriverVulkan::VkTrackedObjectType
- Adds RenderingDevice::get_driver_and_device_memory_report
- GDScript users can easily check via print(
RenderingServer.get_rendering_device().get_driver_and_device_memory_report()
)
- Uses get_driver_and_device_memory_report on device lost for appending
further info.
Fixes #95967
2024-08-24 20:52:39 -03:00
wareya
94b31c1db7
Optimize cubic hermite algorithm in AudioStreamPlaybackResampled
2024-08-22 18:40:01 -04:00