Commit graph

4219 commits

Author SHA1 Message Date
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
BlueCube3310
6412cdf27d Fix saving subresources of nodes 2024-08-28 12:37:10 +02:00
Rémi Verschelde
78935cad95
Merge pull request #94954 from raulsntos/mark-internal-properties
Mark underscored properties as internal
2024-08-28 00:12:42 +02:00
Rémi Verschelde
9f70823eec
Merge pull request #94012 from KoBeWi/reload_everything_to_update_one_line
Allow live reloading of built-in scripts
2024-08-28 00:11:53 +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
Rémi Verschelde
21bcff00e9
Merge pull request #95126 from Chaosus/shader_cubemap_fix
Allow setting a cubemap as default parameter to shader
2024-08-27 16:54:50 +02:00
Chaosus
db251a3f99 Allow setting a cubemap as default parameter to shader 2024-08-27 09:43:05 +03: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
0125b0eb03
Merge pull request #94215 from Chaosus/vs_preview_and_param_list
Add a material preview to visual shader editor
2024-08-26 23:28:46 +02:00
Rémi Verschelde
347700cd95
Merge pull request #83443 from Chaosus/vs_fix_input_sorting
Fix visual shader inputs to follow the alphabet order
2024-08-26 23:28:04 +02:00
Rémi Verschelde
350bde0db6
Merge pull request #95954 from rakkarage/shader-material-reset
Enable revert button for `ShaderMaterial::next_pass` and `ShaderMaterial::render_priority`.
2024-08-26 22:45:37 +02:00
Rémi Verschelde
8dad1ba482
Merge pull request #92933 from TokageItLab/match-concatenating
Match the coding style for concatenating String
2024-08-26 22:44:59 +02:00
DeeJayLSP
703c31fb40 WAV: Add missing break on get_length() 2024-08-25 14:18:26 -03:00
Rakka Rage
ba23b22153 Enable revert button for ShaderMaterial::next_pass and ShaderMaterial::render_priority. 2024-08-22 16:28:59 -04:00
Rémi Verschelde
091212b4f1
Merge pull request #93602 from aaronp64/inspector_latency
Improve Editor Inspector/Theme item lookup performance
2024-08-22 00:10:26 +02:00
Yuri Rubinsky
eef236db63 Fix visual shader inputs to follow the alphabet order 2024-08-20 20:51:47 +03:00
aaronp64
7593e55527 Improve Editor Inspector/Theme item lookup performance
Changes to reduce the latency between changing node selection in the editor and seeing the new node reflected in the Inspector tab

- Use Vector instead of List for ThemeOwner::get_theme_type_dependencies and related functions
- Use Vector instead of List for ThemeContext::themes, set_themes(), and get_themes()
- Add ClassDB:get_inheritance_chain_nocheck to get all parent/ancestor classes at once, to avoid repeated ClassDB locking overhead
- Update BIND_THEME_ITEM macros and ThemeDB::update_class_instance_items to use provided StringNames for call to ThemeItemSetter, instead of creating a new StringName in each call

These changes reduce the time taken by EditorInspector::update_tree by around 30-35%
2024-08-20 13:39:40 -04:00
Rémi Verschelde
7999b4bb8a
Merge pull request #94324 from SomeRanDev/shader_hint_enum
GDShader: Add `hint_enum` for `uniform int`
2024-08-20 10:01:57 +02:00
Rémi Verschelde
6a9ecdcf0c
Merge pull request #91818 from rburing/fti_multimesh
Physics interpolation: `MultiMesh`
2024-08-20 10:01:46 +02:00
Rémi Verschelde
da57bab169
Merge pull request #92560 from smix8/navmesh2d_bake_partition
Add triangulation partition option to 2D navigation mesh baking
2024-08-19 16:04:49 +02:00
Rémi Verschelde
8b98d9aa4d
Merge pull request #95137 from smix8/source_geo_bounds
Add `get_bounds()` function to NavigationMeshSourceGeometryData
2024-08-19 14:34:13 +02:00
Rémi Verschelde
43c46b9b1b
Merge pull request #95013 from smix8/navmesh_geo_parse
Change NavigationMesh to also parse collision shapes by default
2024-08-19 12:08:55 +02:00
smix8
2e1f6b50fb Add bounds function to NavigationMeshSourceGeometryData
Adds get_bounds() function to NavigationMeshSourceGeometryData2D/3D to get a bounding box that covers all the geometry.
2024-08-19 00:12:37 +02:00
Ricardo Buring
1728f80e7c Fixed Timestep Interpolation: MultiMesh
Adds fixed timestep interpolation to multimeshes.

Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2024-08-18 17:14:59 +02:00
Yuri Rubinsky
f202a3d24e Add a material preview to visual shader editor 2024-08-17 08:27:54 +03:00
Patrick Sean Klein
a1fe6ffa19
NavigationPolygon: Implement get/set_polygon fast paths. 2024-08-17 00:31:58 +02:00
Arseny Kapoulkine
0fde03c0e0 Optimize base and shadow meshes for cache
Previously, vertex cache optimization was ran for the LOD meshes, but
was never ran for the base mesh or for the shadow meshes, including
shadow LOD chain (shadow LOD chain would sometimes get implicitly
optimized for vertex cache as a byproduct of base LOD optimization, but
not always). This could significantly affect the rendering performance
of geometry heavy scenes, especially for depth or shadow passes where
the fragment load is light.
2024-08-16 07:36:12 -07:00
Rémi Verschelde
a778f7803c
Merge pull request #95529 from bruvzg/bmfont_match_h
[BMFont] Fix importing fonts with `Match char height` enabled.
2024-08-16 14:35:32 +02:00
Rémi Verschelde
1346aaf4e7
Merge pull request #95465 from jsjtxietian/remove-category-warning
Remove `missing a category` warning in visual shader node
2024-08-16 14:34:56 +02:00
Rémi Verschelde
60b0b5cd42
Merge pull request #95337 from kleonc/tile_set_editor_fix_transposed_polygons_editing
Fix polygon drawing for transposed tiles in `TileSet` editor
2024-08-16 14:33:37 +02:00
Rémi Verschelde
e43a328f8e
Merge pull request #95464 from tetrapod00/visual-shader-inspector-spatial-node3d-rename
Fix wrong name for Spatial shader mode in VisualShader resource inspector
2024-08-16 10:36:22 +02:00
Rémi Verschelde
5960555f9b
Merge pull request #94726 from BastiaanOlij/primitive_texel_size_update
Make primitive meshes react to texel size change
2024-08-16 10:34:35 +02:00
Rémi Verschelde
e58a7530aa
Merge pull request #93727 from zeux/raycast-opt
Disable normal raycaster for LOD generation by default
2024-08-16 10:34:03 +02:00
bruvzg
e7f215c2c4
[BMFont] Fix importing fonts with Match char height enabled. 2024-08-14 23:52:19 +03:00
jsjtxietian
c7249f41e9 Remove missing a category warning in visual shader node 2024-08-13 12:20:59 +08:00
tetrapod00
b9876b626d Change "Node3D" to "Spatial" in VisualShader resource 2024-08-12 21:04:13 -07:00
Rémi Verschelde
ece2e6d23b
Merge pull request #95377 from raulsntos/gdextension/expose-property-accessors/Animation
Make `Animation::capture_included` read-only
2024-08-12 14:10:37 +02:00
Raul Santos
415331f474
Make Animation::capture_included read-only
The `PROPERTY_USAGE_READ_ONLY` flag only makes the property read-only in the inspector, but the property also has the `PROPERTY_USAGE_NO_EDITOR` flag which means it won't show up in the inspector. So it does nothing, while still making it editable from scripting.

To make it read-only for scripting too, this PR removes the setter from the `PropertyInfo`. And since the `set_capture_included` method is now unused, it was also removed.
2024-08-10 18:53:45 +02:00
kleonc
6895f6f8cc Fix TileAtlasView bounds checks for transposed tiles 2024-08-09 19:26:02 +02:00
Rémi Verschelde
2edf9b95b3
AudioStreamPolyphonic: Implement stopping with sample playback
Fixes #94724.
2024-08-09 10:57:50 +02:00
smix8
110b2dc61a Add triangulation partition option to 2D navigation mesh baking
Adds triangulation partition option to 2D navigation mesh baking as an alternative to the existing convex partition option.
2024-08-05 00:08:46 +02:00
bruvzg
5c8a8c57be
[Font] Add check for cyclic base font dependencies. 2024-08-03 00:00:11 +03:00
smix8
c9b152bd0c Change NavigationMesh to also parse collision shapes by default
Changes NavigationMesh parse geometry types to include collision shapes as well by default.
2024-08-01 14:41:49 +02:00
Raul Santos
7a20ba9b63
Mark underscored properties as internal
These properties look like they were intended to be internal but they were missing the `PROPERTY_USAGE_INTERNAL` flag.

- `PackedScene::_bundled`
- `PortableCompressedTexture2D::_data`
- `ImporterMesh::_data`
2024-07-30 18:50:00 +02:00
Bastiaan Olij
b9790cef47 Make primitive meshes react to texel size change 2024-07-26 13:54:11 +10:00
Rémi Verschelde
543e4388d5
Merge pull request #94682 from zeux/lod-uv-mirror
Fix LOD generation for meshes with tangents & mirrored UVs
2024-07-24 09:59:45 +02:00
Arseny Kapoulkine
18d6ae1161 Fix LOD generation for meshes with tangents & mirrored UVs
When UVs are mirrored in a mesh, collapsing vertices across the
mirroring seam can significantly reduce quality in a way that is not
apparent to the simplifier. Even if simplifier was given access to UV
data, the coordinates would need to be weighted very highly to prevent
these collapses, which would penalize overall quality of reasonable
models.

Normally, well behaved models with mirrored UVs have tangent data that
is correctly mirrored, which results in duplicate vertices along the
seam. The simplifier automatically recognizes that seam and preserves
its structure; typically models have few edge loops where UV winding is
flipped so this does not affect simplification quality much.

However, pre-processing for LOD data welded vertices when UVs and
normals were close, which welds these seams and breaks simplification,
creating triangles with distorted UVs.

We now take tangent frame sign into account when the input model has
tangent data, and only weld vertices when the sign is the same.
2024-07-23 16:35:46 -07:00
Silc Lizard (Tokage) Renew
88e590c9d3 Add approx comparing methods to Animation, use them on time comparison 2024-07-24 01:18:06 +09:00