Commit Graph

4345 Commits

Author SHA1 Message Date
smix8
eba3acadac Fix thread-use causing navigation polygon data corruption
Fixes navigation polygon  data corruption caused by thread-use that changed vertices or polygons while the navigation polygon was processed, e.g. by server region sync, navmesh baking or user thread updates.
2024-06-21 12:58:03 +02:00
Rémi Verschelde
04a530f91f
Merge pull request #93407 from smix8/lock_this_geometry_up
Fix thread-use causing navigation source geometry data corruption
2024-06-21 10:14:38 +02:00
smix8
fd727ab994 Fix thread use causing navigation mesh data corruption
Fixes navigation mesh data corruption caused by thread use that changed vertices or polygons while the navigation mesh was processed, e.g. by server sync or baking.
2024-06-21 09:39:16 +02:00
smix8
d4722b9e1f Fix thread-use causing navigation source geometry data corruption
Fixes navigation source geometry data corruption caused by thread-use that changed vertices or indices while the source geometry data was used in a parsing process or read from by the navmesh baking.
2024-06-21 08:06:14 +02:00
maski
734fab7f20
Improve SurfaceTool::generate_tangents UV error message
Fixes #92395.
2024-06-20 16:13:12 +02:00
Pedro J. Estébanez
e6d930b31f AnimatedTexture: Fix crash when loaded from a thread 2024-06-19 09:54:01 +02:00
Adam Scott
52fa4f05f3
Add samples playback support 2024-06-18 11:06:31 -04:00
Yuri Rubinsky
537316098f Fix bugs in visual shader varyings 2024-06-16 16:58:46 +03:00
Yuri Rubinsky
99fa6ee6c4 Fix incorrect preview port in visual shader 2024-06-14 12:31:34 +03:00
Rémi Verschelde
b4e7947d3f
Merge pull request #93127 from BlueCube3310/material-ready
Material: Fix marking as ready
2024-06-14 10:19:38 +02:00
Rémi Verschelde
6e1e6f0d3b
Merge pull request #92955 from libklein/fix-navigation-polygon-draw
TileSet: Transform rotated navigation (sub)-polygons individually.
2024-06-14 10:19:32 +02:00
Patrick Sean Klein
2dc42e8a93
TileSet: Maintain NavigationPolygon sub-polygons when rotating
The original implementation merged sub-polygons into a single polygon
when rotating. This can cause non-simple geometries downstream
algorithms cannot handle.
2024-06-13 22:16:46 +01:00
BlueCube3310
ea683cd152 Material: Fix marking as ready 2024-06-13 13:12:55 +02:00
Rémi Verschelde
f1ac3e26cc
Merge pull request #83729 from Chaosus/vs_fix_texture_param
Add extra warning messages to `VisualShaderNodeTextureParameter`
2024-06-12 10:00:23 +02:00
Rémi Verschelde
0d1f2396d5
Merge pull request #92847 from aaronp64/varying_getter_port_type
Fix `VisualShaderNodeVaryingGetter` expanded ports adding ".x" to shader
2024-06-11 16:59:25 +02:00
Rémi Verschelde
3d170c56d6
Merge pull request #92861 from TokageItLab/fix-animation-player-just-after-started
Fix seeking Animation immediate after playback for Discrete track
2024-06-10 16:11:55 +02:00
Silc Lizard (Tokage) Renew
12571a1e95 Match the coding style for concatenating String 2024-06-09 18:35:23 +09:00
Silc Lizard (Tokage) Renew
bea47d877b Fix seeking Animation immediate after playback for Discrete track 2024-06-08 22:09:37 +09:00
Rémi Verschelde
5fcd9803cd
Merge pull request #90850 from AlexeyBond/patch-1
Handle Vector4 default input values in visual shaders
2024-06-07 23:29:19 +02:00
jsjtxietian
8d888807f7 Sync visual shader's distance fade using circular fade 2024-06-07 11:32:27 +08:00
aaronp64
73343a2e7f Fix VisualShaderNodeVaryingGetter expanded ports adding ".x" to shader
When VisualShaderNodeVaryingGetter type was Vector2/Vector3/Vector4, expanding the output ports and connecting an individual value to a scalar input would add ".x" to the assignment in the generated shader.  This was due to `VisualShaderNodeVarying::get_port_type` ignoring the port number, and always returning the associated vector type.  Added checks for `p_port == 0` to return either the vector type, or scalar for expanded ports, matching similar logic in other nodes, like `VisualShaderNodeColorConstant::get_output_port_type`.

Fixes #92832
2024-06-06 15:21:21 -04:00
kobewi
be111004dd Fix default NodePaths saved in scene 2024-06-03 13:10:23 +02:00
Rémi Verschelde
41e762ca29
Merge pull request #91454 from akien-mga/coverity-checks
Fix Steam input "crc" errors, and some other Coverity reports of uninitialized scalar variable
2024-06-03 10:35:38 +02:00
Flyn San
67b16f261f
Fix code style for generated shader code from ParticleProcessMaterial
The results now match what our clang-format config would do.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-05-31 14:12:41 +02:00
Rémi Verschelde
62120c7841
Fix Steam input "crc" errors, and some other Coverity reports of uninitialized scalar variable
- Fixes #88630.
- Fixes #92578.
2024-05-31 09:55:02 +02:00
kobewi
a345160ab3 Fix wrong usage of parameters_base_path StringName 2024-05-30 12:03:43 +02:00
Rémi Verschelde
76237c5f9b
Merge pull request #91488 from akien-mga/resource-format-text-remove-obsolete-binary-conversion
Remove unused code to convert text resource format to binary
2024-05-29 22:13:52 +02:00
Rémi Verschelde
2c50e87f60
Merge pull request #89470 from jsjtxietian/msdf-uv
Fix shader compilation error when enabling texture MSDF and UV1 Triplanar at the same time
2024-05-29 22:13:30 +02:00
Rémi Verschelde
93596abcf5
Merge pull request #92373 from libklein/fix-caching-wrong-collision-layer-shapes
Fix TileSet caching wrong collision layer shapes for shapes comprising several polygons.
2024-05-28 15:49:44 +02:00
Adriano Orioli
edd2e6e37f
make InstancePlaceholder in charge of node reference resolution 2024-05-28 11:51:49 +02:00
Patrick Sean Klein
44d1f1c85f
Fixes an index error in TileSet when caching transformed collision layers. 2024-05-26 00:14:31 +01:00
Rémi Verschelde
4c96dcf6e0
Merge pull request #92179 from aaronp64/image_import_memory
Improve memory usage for image import and `PortableCompressedTexture2D`
2024-05-22 09:26:53 +02:00
aaronp64
f81e0fcbf4 Improve memory usage for image import and PortableCompressedTexture2D
When importing images, we store a compressed version of the image to a .ctex file with ResourceImporterTexture::save_to_ctex_format.  When importing many large images at once, this can use a large amount of memory, especially when the .ctex file uses WebP format.

This change is for ResourceImporterTexture::save_to_ctex_format to use the original Image object instead of p_image->get_image_from_mipmap(0), to avoid creating a copy of the full uncompressed image when looping through the base Image and mipmaps.  This reduces the import memory usage for large images by around 10% when using WebP, and 35-40% when Project Settings/Rendering/Textures/Lossless Compression/Force PNG is enabled, may vary depending on the image and number of import threads running.  Same change applied to PortableCompressedTexture2D::create_from_image, which has similar logic.

This helps with #92084, but does not fully resolve the issue on its own, as compressing with WebP on many threads can still use a large amount of memory - this just lowers that amount, and makes it more likely that enabling "Force PNG" will reduce memory usage enough to import the files.
2024-05-20 19:40:39 -04:00
jsjtxietian
d1cd0c4780 Prevent add shader uniform doc when DocTool is not inited 2024-05-20 12:26:26 +08:00
Rémi Verschelde
9eff940a64
Merge pull request #91549 from magian1127/4.0ChangeHighlightingStartKey
Resolve conflict between shader uniform tooltips `/**` and general annotation `/**/`.
2024-05-17 11:13:48 +02:00
Rémi Verschelde
5708a3a02e
Merge pull request #92000 from clayjohn/vram-debugger
Increase coverage of VRAM debugger and add support to RD backends
2024-05-16 09:32:11 +02:00
clayjohn
c84616c2d2 Increase coverage of VRAM debugger and add support to RD backends 2024-05-15 16:30:19 -07:00
Rémi Verschelde
ca2ed80539
Merge pull request #87320 from Rudolph-B/main
Fix collided particles getting stuck with zero velocity.
2024-05-15 12:09:27 +02:00
Rudolph Bester
45e5b151b6 Fixed collided particles getting stuck with zero velocity. 2024-05-14 18:55:56 +02:00
Rémi Verschelde
de329556f7
Merge pull request #91449 from Arnklit/particles-emission-ring-shape-fix2
Fix sqrt application for radius in particle ring emission
2024-05-14 18:09:47 +02:00
Kasper Arnklit Frandsen
94eefe168a Fix sqrt application for radius in particle ring emission 2024-05-14 12:22:21 +01:00
Rémi Verschelde
bdefe53992
Merge pull request #91909 from KoBeWi/have_fun_reviewing_this
Use Core/Scene stringnames consistently
2024-05-14 12:07:03 +02:00
Magian
8a92615ba0 Resolve conflict between shader uniform tooltips "/**" and general annotation "/**/". 2024-05-14 15:32:47 +08:00
kobewi
413c11357d Use Core/Scene stringnames consistently 2024-05-13 23:41:07 +02:00
Rémi Verschelde
5cb9a748d6
Merge pull request #91630 from RandomShaper/enh_mat_sh_update
Let materials' shaders update happen on loader threads
2024-05-13 17:32:11 +02:00
Rémi Verschelde
dcd6db8680
Merge pull request #90534 from Geometror/vs-reroute-node
[VisualShader] Add reroute node and improve port drawing
2024-05-13 12:05:25 +02:00
Hendrik Brucker
62776842df [VisualShader] Add reroute node and improve port drawing 2024-05-13 03:26:01 +02:00
kobewi
a262d2d881 Add shorthand for using singleton string names 2024-05-11 18:53:08 +02:00
DeeJayLSP
97a70cbd6e Use data length on QOA checks instead of min size 2024-05-08 12:05:21 -03:00
A Thousand Ships
a0dbdcc3ab
Replace find with contains/has where applicable
* Replaces `find(...) != -1` with `contains` for `String`
* Replaces `find(...) == -1` with `!contains` for `String`
* Replaces `find(...) != -1` with `has` for containers
* Replaces `find(...) == -1` with `!has` for containers
2024-05-08 12:37:42 +02:00
Rémi Verschelde
29607924bd
Merge pull request #88741 from adamscott/fix-shared-variables-of-inherited-scenes-redux
Fix shared exported variables of inherited scenes
2024-05-07 16:49:20 +02:00
Rémi Verschelde
107fd30ae7
Merge pull request #91647 from jsjtxietian/fix-uint-hightlight
Make native shader source visualizer highlight uint suffix
2024-05-07 09:04:55 +02:00
jsjtxietian
cff1111359 Make native shader source visualizer can highlight uint suffix 2024-05-07 14:18:48 +08:00
Pedro J. Estébanez
187e5ef258 Let materials' shaders update happen on loader threads 2024-05-06 19:40:00 +02:00
A Thousand Ships
955d5affa8
Reduce and prevent unnecessary random-access to List
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)

* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
jsjtxietian
b851514b10 Fix uint's suffix is not highlighted in text shader editor 2024-05-03 21:45:53 +08:00
Rémi Verschelde
03e6fbb010
Merge pull request #85474 from fire/packedvector4array
Add `PackedVector4Array` Variant type
2024-05-03 12:25:26 +02:00
Rémi Verschelde
c3a650ac46
Remove unused code to convert text resource format to binary
This is now handled in `ResourceSaver::save` when saving with a binary extension.
2024-05-03 01:14:40 +02:00
K. S. Ernest (iFire) Lee
f9b488508c
Add PackedVector4Array Variant type
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-05-03 00:58:27 +02:00
Silc Lizard (Tokage) Renew
6fd8b25d38 Add argument options to AnimationPlayer for auto capture 2024-05-03 07:06:37 +09:00
Silc Lizard (Tokage) Renew
36abb55dd2 Add auto_capture option to AnimationPlayer 2024-05-02 19:57:36 +09:00
Rémi Verschelde
9cb3a16a8e
Merge pull request #91014 from DeeJayLSP/qoa-wav-playback
Add QOA (Quite OK Audio) as a WAV compression mode
2024-05-02 12:46:32 +02:00
A Thousand Ships
308dbb8c63
[Core] Add scalar versions of Vector* min/max/clamp/snap(ped)
Convenience for a number of cases operating on single values
2024-05-02 10:31:13 +02:00
DeeJayLSP
b9cbf2c96f Add QOA (Quite OK Audio) as a WAV compression mode 2024-05-01 19:05:14 -03:00
Rémi Verschelde
5a63d1db41
Merge pull request #91223 from Arnklit/particle-cylinder-emission-distribution-fix
Fix particle cylinder emission shape random distribution
2024-05-01 09:55:06 +02:00
Rémi Verschelde
de00cfbc01
Merge pull request #90892 from Chaosus/vs_fix_expression_port_expand
Prevent expanding output port in visual shader expression
2024-05-01 09:54:57 +02:00
Rémi Verschelde
e950d7ad36
Merge pull request #85609 from QbieShay/qbe/premul-builtin
Add premult alpha blending to 3D (spatial) shaders
2024-05-01 09:54:41 +02:00
Rémi Verschelde
3cb9e84cde
Merge pull request #85189 from QbieShay/qbe/fix-emission-at-end
Correctly emit sub-emitter's emission at the end
2024-05-01 09:54:38 +02:00
QbieShay
41a2b0e83e Added premult alpha blending to 3D (spatial) shaders.
Co-authored-by: jitspoe <jitspoe@yahoo.com>
Co-authored-by: Clay John <claynjohn@gmail.com>
2024-05-01 00:53:29 +02:00
Kasper Arnklit Frandsen
af22d504da Fix particle cylinder emission shape random distribution 2024-04-30 17:24:58 +01:00
Rémi Verschelde
5bd9f4dea5
Don't run Shader doc comments logic outside the editor
Fixes #91306.
2024-04-29 14:54:35 +02:00
Rémi Verschelde
9286ac7aa5
Merge pull request #90161 from magian1127/4.0sTip
Implement tooltips for shader uniform in the inspector.
2024-04-29 10:09:35 +02:00
Magian
e3a7c751f2 Implement tooltips for shader uniform in the inspector.
using regular expressions
2024-04-26 17:48:11 +08:00
Rémi Verschelde
86bf8354a0
Merge pull request #91198 from jsjtxietian/SurfaceTool
Fix `SurfaceTool.create_from_arrays` crash with bad index
2024-04-26 11:09:08 +02:00
jsjtxietian
01135bc533 Fix SurfaceTool.create_from_arrays crash with bad index 2024-04-26 11:44:15 +08:00
Rémi Verschelde
17d9c52ad9
Merge pull request #90894 from lyuma/animation_step_30
Set animation step from importers. Increase default step from 10 to 30FPS
2024-04-24 09:59:21 +02:00
Rémi Verschelde
6f21267a46
Merge pull request #85880 from Rudolph-B/GPU-particles-2D-spread-issue
Fixed particle spread values affecting particle velocity
2024-04-24 09:59:04 +02:00
johnsonbaugh
e2995d3b88 Reset state of SkeletonModification2D when loaded from cache 2024-04-23 21:29:59 -07:00
johnsonbaugh
ef8acbde9a Fix errors and warnings when loading Skeleton2D Modifications
Fixes #73247
2024-04-23 20:42:23 -07:00
Haoyu Qiu
941e5c4820 Use compatible text resource format when possible 2024-04-23 12:04:44 +08:00
Rémi Verschelde
98cce21e78
Merge pull request #90921 from smix8/navmesh_bake_warn
Warn that navigation mesh baking from Meshes is bad for runtime performance
2024-04-22 22:18:30 +02:00
Rémi Verschelde
7529c0bec5
Merge pull request #90994 from aaronp64/tileset_compressed_image
Handle compressed images in `TileSetAtlasSource::_create_padded_image_texture`
2024-04-22 12:53:51 +02:00
Rémi Verschelde
bfca90acb7
Merge pull request #90935 from smix8/navdata_append
Add NavigationMeshSourceGeometryData append functions
2024-04-22 12:53:32 +02:00
Rémi Verschelde
659cf339bc
Merge pull request #90931 from aaronfranke/is-ascii-alphabet-char
Rename internal `is_ascii_char` to `is_ascii_alphabet_char`
2024-04-22 12:53:28 +02:00
Rémi Verschelde
ab57e8d5a3
Merge pull request #90834 from lyuma/surfacetool_create_from_arrays
Expose `create_from_arrays` in SurfaceTool and cleanup some naming
2024-04-22 12:53:05 +02:00
smix8
b9225f67c8 Warn that navigation mesh baking from Meshes is bad for runtime performance
Warns that navigation mesh baking from Meshes is bad for runtime performance.
2024-04-22 12:49:47 +02:00
aaronp64
ff60f7b6d4 Handle compressed images in TileSetAtlasSource::_create_padded_image_texture
Check for compressed image and decompress if needed

Fixes #78755
2024-04-21 21:36:12 -04:00
smix8
2594c57361 Add NavigationMeshSourceGeometryData append functions
Adds append functions to NavigationMeshSourceGeometryData.
2024-04-21 04:57:05 +02:00
Aaron Franke
b1f5e9fe3a
Rename internal is_ascii_char to is_ascii_alphabet_char 2024-04-20 02:36:41 -07:00
Lyuma
a99756a07f Expose create_from_arrays in SurfaceTool and cleanup some naming 2024-04-19 18:45:06 -07:00
Lyuma
bb9674c1b1 Set animation step from importers. Increase default step from 10 to 30 FPS. 2024-04-19 03:02:20 -07:00
Yuri Rubinsky
56d843724e Prevent expanding output port in visual shader expression 2024-04-19 11:49:10 +03:00
Alexey Bondarenko
69f2e066db
fix: Handle Vector4 default input values in visual shaders 2024-04-18 18:26:03 +06:00
Rémi Verschelde
2d884ba70c
Merge pull request #90797 from Geometror/vsnode-comment-compat
[Compatibility] Add stub for VisualShaderNodeComment
2024-04-18 12:24:50 +02:00
Hendrik Brucker
735c45dc8e [Compatibility] Add stub for VisualShaderNodeComment 2024-04-18 02:39:29 +02:00
Rémi Verschelde
54ba8d6882
Merge pull request #90810 from Arnklit/particles_processing_ring_shape_emission_axis_fix
Fix shader crash on zero vector and negative x vector in particles processing
2024-04-17 20:26:50 +02:00
Kasper Frandsen
f8d08a8376 fix: avoid shader crash on null vector and negative x vector 2024-04-17 17:33:30 +01:00
Aaron Franke
77e35cf781
Move NavigationMeshSourceGeometryData(2D/3D) to the 2D/3D subfolders 2024-04-15 18:40:43 -07:00
kobewi
445302a4b2 Improve error when scene/resource is saved with newer format 2024-04-15 12:08:35 +02:00
Aaron Franke
6dd4a68797
Reorganize some code to have 2D things grouped together 2024-04-13 02:56:50 -07:00
smix8
497afeaf05 Fix NavigationMeshSourceGeometryData merge crash
Fixes crash when trying to merge with a null source geometry.
2024-04-10 21:56:21 +02:00
Rémi Verschelde
8764769ee8
Merge pull request #89186 from groud/save_byte_arrays_as_base64_encoded
Save PackedByteArrays as base64 encoded
2024-04-10 17:49:24 +02:00
A Thousand Ships
64146cb7f3
[Core] Add iteration support to Array 2024-04-10 14:49:34 +02:00
Rémi Verschelde
bff6955459
Merge pull request #85024 from Jordyfel/moving-scripts-of-types-of-exported-typed-arrays
When saving a resource with an exported typed array, check whether the type is an external resource
2024-04-09 22:25:00 +02:00
Jordyfel
82de00a174 Type of exported typed array can be external resource 2024-04-09 15:28:42 +03:00
Gilles Roudière
bde8d44104 TileSet: don't save angular and linear physics velocities if they have their default values 2024-04-08 14:17:08 +02:00
Rémi Verschelde
b7e0b0ea0c
Merge pull request #89970 from AThousandShips/require_expose
[Animation] Expose `SkeletonProfile.set/is_required`
2024-04-05 12:16:04 +02:00
Rémi Verschelde
f6a78f83aa
Merge pull request #90207 from groud/fix_no_cached_rect
Fix "no cached rect" errors in TileMapLayer editor
2024-04-04 17:09:26 +02:00
Gilles Roudière
c928273c6c Fixes "no cached rect" errors in TileMapLayer editor 2024-04-04 16:28:31 +02:00
Hendrik Brucker
a81561cbd9 Add GraphFrame and integrate it in VisualShader 2024-04-04 15:11:00 +02:00
Rémi Verschelde
ffa650f1d8
Merge pull request #90113 from smix8/draw_2d_outlines
Make physics debug respect shape outline setting inside editor
2024-04-04 14:37:21 +02:00
Rémi Verschelde
b77ac0a2b3
Merge pull request #89933 from jsjtxietian/path3d-remove
Support "clear points" function in Path3D topmenu bar
2024-04-04 14:35:27 +02:00
smix8
924a5c6573 Add HeightMapShape3D update with Image data
Adds HeightMapShape3D update with Image data.
2024-04-04 02:10:00 +02:00
smix8
07bbaf267d Make physics debug respect outline setting inside editor
Make physics debug respect outline setting inside editor instead of always returning true no matter the actual setting.
2024-04-01 19:52:57 +02:00
A Thousand Ships
334449df70
[Animation] Expose SkeletonProfile.set/is_required 2024-03-30 20:57:55 +01:00
jsjtxietian
34eff85014 Support “clear points” function in Path3D editor 2024-03-27 12:40:30 +08:00
A Thousand Ships
d4fcca4545
[TileSet] Expose TileData.is_valid_terrain_peering_bit 2024-03-26 16:07:50 +01:00
ppphp
d4e1a74efb Add 'override' mark to ResourceFormat class 2024-03-25 04:06:34 +08:00
Rémi Verschelde
cd4e4c0fcc
Merge pull request #89111 from AThousandShips/vec_use
Use `Vector*` component-wise `min/max/clamp` functions where applicable
2024-03-24 01:14:51 +01:00
Rémi Verschelde
f8bae10be6
Merge pull request #87171 from TokageItLab/retrieve-time-info-from-anim-tree
Rework AnimationNode process for retrieving the semantic time info
2024-03-24 01:12:42 +01:00
Yuri Rubinsky
aa12241414 Refactor the parsing of port names in visual shader's expressions 2024-03-21 16:34:37 +03:00
Silc Lizard (Tokage) Renew
6dd410854c Rework AnimationNode process for retrieving the semantic time info 2024-03-20 22:52:26 +09:00
A Thousand Ships
79ba22a73f
Use Vector* component-wise min/max/clamp functions where applicable 2024-03-20 13:47:42 +01:00
jsjtxietian
0c0723c659 Fix shader compilation error when enabling texture MSDF and UV1 Triplanar at the same time 2024-03-15 12:52:28 +08:00
smix8
5d5e85fe07 Add NavigationObstacle options to affect and carve navigation mesh
Adds NavigationObstacle options to affect and carve navigation mesh.
2024-03-15 01:45:44 +01:00
Rémi Verschelde
0175be8948
Merge pull request #89493 from KoBeWi/just_download_more_ram
Fix call queue problems when loading TileSet
2024-03-14 22:35:45 +01:00
Rémi Verschelde
453485aede
Merge pull request #89270 from Repiteo/enforce-typename-in-templates
Enforce template syntax `typename` over `class`
2024-03-14 22:34:37 +01:00
kobewi
a85921a856 Fix call queue problems when loading TileSet 2024-03-14 21:05:14 +01:00
Hugo Locurcio
1e2b8992ae
Use raw string literals for BaseMaterial3D shader code generation
- Add range hints to all uniforms that match the BaseMaterial3D
  property hints, so that ranges in the inspector remain identical
  after converting to a shader.
- Add comments to describe selected options within the shader.
  This makes it easier to remember what each block of code does.
- Format code to follow the Godot shader language style guide.
2024-03-13 23:54:23 +01:00
Rémi Verschelde
d30aa4bd36
Merge pull request #89432 from clayjohn/proximity-fade-limit
Set a minimum of 0.01 for proximity fade to avoid undefined behavior in shader
2024-03-13 18:41:43 +01:00
clayjohn
f4c6c807eb Set a minimum of 0.01 for proximity fade to avoid undefined behavior in shader 2024-03-12 17:10:58 -07:00
bruvzg
fee14eb5e8
[Import] Add "skip file" import option to skip (and exclude from export) importable formats, auto set it for the images used by bitmap font. 2024-03-12 21:34:40 +02:00
Rémi Verschelde
d5856f864f
Merge pull request #89383 from bruvzg/font_no_bitmaps
[Font] Add option to disable embedded bitmaps loading.
2024-03-11 23:48:17 +01:00
bruvzg
911fa38d3a
[Font] Add option to disable embedded bitmaps loading. 2024-03-11 16:31:10 +02:00
Aaron Franke
6aac3e4a16 Disable all 3D nodes, physics, and resources when compiling without 3D 2024-03-11 01:00:55 -07:00
Rémi Verschelde
54f2916cf1
Merge pull request #89311 from Mickeon/label_3d_is_a_mess
Fix Label3D, TextMesh & Font not following project default theme in editor
2024-03-10 21:13:01 +01:00
Rémi Verschelde
1d6403323f
Merge pull request #88426 from Rindbee/fix-inherited-scenes-produce-errors
Fix inherited scenes produce errors in editor when `editable_children` is true
2024-03-10 21:12:54 +01:00
风青山
4d57da4d01
Fix inherited scenes produce errors in editor when "editable_children" is true
Since the same argument is used, `SceneState::get_node_deferred_nodepath_properties()`
should use similar logic to `SceneState::get_property_value()`.

Make `SceneState::get_property_value()` to return whether the property is deferred.
2024-03-10 07:37:47 +08:00
Micky
ba867042a2 Fix Label3D, TextMesh & Font not following project default theme in editor 2024-03-09 17:35:48 +01:00
Rémi Verschelde
1c8ef9e252
Merge pull request #89251 from KoBeWi/fastpector
Speed up inspector updates for TileMap
2024-03-09 00:52:09 +01:00
Rémi Verschelde
d195346b59
Merge pull request #89190 from AThousandShips/vis_cat
Fix some missing categories in visual shader nodes
2024-03-08 13:09:34 +01:00
Thaddeus Crews
9903e6779b
Enforce template syntax typename over class 2024-03-07 22:39:09 -06:00
Pawel Lampe
ab242769b7 Extend NavigationMeshSourceGeometryData[23]D to allow data merging 2024-03-07 19:57:43 +01:00
kobewi
7319b612f3 Speed up inspector updates for TileMap 2024-03-07 18:01:30 +01:00
jsjtxietian
1716f12451 Expose PrimitiveMesh's request_update` method 2024-03-06 19:18:01 +08:00
Gilles Roudière
de5073519e Save PackedByteArrays as base64 encoded 2024-03-06 10:17:31 +01:00
A Thousand Ships
e5d2b6d50f
Fix some missing categories in visual shader nodes 2024-03-05 19:39:23 +01:00
Rémi Verschelde
f289ec90e3
Merge pull request #86208 from MarcusElg/betterworldboundary
Improve visualisation of WorldBoundary2D editor
2024-03-04 13:32:51 +01:00
Rémi Verschelde
c1377920cd
Merge pull request #86743 from Mickeon/autocompletion-optimise-object
Optimise comparisons for Object's `get_argument_options`
2024-03-01 14:56:06 +01:00
Micky
cd2032a90b Optimise Object's get_argument_options 2024-02-29 18:00:54 +01:00
Rémi Verschelde
3125a4fb90
Merge pull request #88986 from akien-mga/navigation-fix-blank-build-profile
Fix linking NavigationServer2D/3D with all classes disabled in build profile
2024-02-29 13:55:04 +01:00
Rémi Verschelde
172b254687
Merge pull request #88664 from RandomShaper/res_load_modes
Enhance cache modes in resource loading
2024-02-29 13:54:07 +01:00
Rémi Verschelde
440fe26338
Merge pull request #87268 from Wyxaldir/master
Fix for `resource_local_to_scene` in arrays.
2024-02-29 13:53:49 +01:00
Rémi Verschelde
6fdf3e5d22
Fix linking NavigationServer2D/3D with all classes disabled in build profile
For some reason the destructor for NavigationMeshSourceGeometryData2D/3D
being implemented in the .cpp was causing linking issues.
2024-02-28 22:41:44 +01:00
blackbird806
e2f1af8742
Remove self includes in some files 2024-02-27 17:10:54 +01:00
Rémi Verschelde
21e3b2111e
Merge pull request #88862 from smix8/split_physics_classes
Split monolithic physics class files
2024-02-27 16:37:07 +01:00
Marcus Elg
8bed36e4bb Improve visualisation of worldboundary2d editor 2024-02-27 14:07:24 +01:00
smix8
35dafc9fa8 Split monolithic physics class files
Splits monolithic physics class files.
2024-02-27 11:18:16 +01:00
Rémi Verschelde
10c3b00bd7
Merge pull request #88890 from clayjohn/SurfaceTool-tangent-hash
Include tangent in SurfaceTool vertex compare operator
2024-02-27 10:18:46 +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
clayjohn
2b2f957543 Include tangent in SurfaceTool vertex compare operator 2024-02-26 17:52:24 -08:00
Pedro J. Estébanez
5e144022e7 Enhance cache modes in resource loading
- Unify documentation, hoping to clear misconcepctions about about propagation of the cache mode across dependant loads.
- Clarify in docs that `CACHE_MODE_REPLACE` now also works on the main resource (from #87008).
- Add two recursive modes, counterparts of `CACHE_MODE_REPLACE` and `CACHE_MODE_IGNORE`, since it seems some need them (see #59669, #82830).
- Let resources, even loaded with one of the ignore-cache modes, get a path, which is useful for tools.
2024-02-26 14:59:04 +01:00
Aaron Franke
c399424db9
Move 3D-only resources to their own folder 2024-02-26 05:23:04 -06:00
Aaron Franke
1cb531ddb6
Move 2D-only resources to their own folder 2024-02-26 05:22:45 -06:00
Adam Scott
d53a1b0e84
Fix shared exported variables of inherited scenes 2024-02-24 16:35:01 -05: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
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
Hendrik Brucker
02a33b67a8 Redesign the graph editor for visual shaders 2024-02-22 20:40:09 +01:00
Wyxaldir
07b011aec7 Fixes #71243. Resources that have local_to_scene enabled now properly work inside arrays and dictionaries. 2024-02-21 09:35:31 -05: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
Bastiaan Olij
aa260e5f3d Implement glow/bloom on compatibility renderer 2024-02-19 13:29:43 +11: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
Silc Lizard (Tokage) Renew
4659090543 Make consistent the retrieval of audio tracks 2024-02-18 00:15:33 +09:00
Silc Lizard (Tokage) Renew
bc20fdf16f Add CallbackModeDiscrete to AnimationMixer 2024-02-17 18:25:56 +09:00
Rémi Verschelde
ebf00b86ed
Merge pull request #87694 from jsjtxietian/cube-layer
Add check in `CompressedTextureLayered::get_layer_data` to prevent crash
2024-02-17 00:22:58 +01:00
jsjtxietian
1b2a838e21 Add check in CompressedTextureLayered::get_layer_data to prevent crash 2024-02-16 22:41:05 +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
Rémi Verschelde
7e14974d07
Merge pull request #88185 from bruvzg/font_draw_no_ellipsis
[Font] Do not use trim with ellipsis in the basic Font string drawing functions.
2024-02-15 17:35:44 +01:00
Rémi Verschelde
eac054f1cc
Merge pull request #87971 from bruvzg/font_no_image_dup
[TextServer / Font] Do not duplicate images to prevent unnecessary embedding.
2024-02-15 17:35:36 +01:00
Rémi Verschelde
d40931b942
Merge pull request #87721 from clayjohn/TextureRD-render-thread
Enforce calling RenderingDevice code from rendering thread in TextureRD classes
2024-02-13 23:43:25 +01:00
Rémi Verschelde
921b656f33
Merge pull request #86781 from KoBeWi/scenes_that_are_no_longer_with_us
Allow opening scenes with missing scene dependency
2024-02-13 23:43:14 +01:00
kobewi
be4cbee873 Allow opening scenes with missing scene dependency 2024-02-13 19:46:35 +01:00
Rémi Verschelde
aab55ef57c
Merge pull request #88280 from groud/fix_tileset_duplication
Fix TileSet sources duplication
2024-02-13 17:24:31 +01:00
A Thousand Ships
d8b29efe66
Fix member names of AudioFrame to match extension 2024-02-13 15:37:09 +01:00
Gilles Roudière
320fc73647 Fix tile_set duplication 2024-02-13 14:44:17 +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
Rémi Verschelde
50e72516c1
Merge pull request #86458 from smix8/navpoly_sourcegroup
Fix default NavigationPolygon source geometry group name
2024-02-13 11:24:45 +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
smix8
c349c935c3 Fix default NavigationPolygon source geometry group name
Fixes default NavigationPolygon source geometry group name.
2024-02-13 00:12:30 +01:00
Rémi Verschelde
d2f69ce872
Merge pull request #88156 from DaZang/parsed-collision-mask-2d-layer-hints
Fix property hints for parsed collision mask
2024-02-12 13:34:44 +01: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
27575c4d4b
Merge pull request #87817 from Dheatly23/fix-87813
Fix quaternion keyframe optimization for collinear rotation over 180 degrees
2024-02-12 13:34:22 +01:00
Gilles Roudière
5a999d67ec Change TileMapEditor to TileMapLayerEditor 2024-02-12 10:11:45 +01:00
Pawel Lampe
9ea8d4fa38 Add means for fixing navmap synchronization errors 2024-02-11 21:06:47 +01:00
bruvzg
1a5bae9adc
[Font] Do not use trim with ellipsis in the basic Font string drawing functions. 2024-02-11 00:23:35 +02:00
David Zang
0831ea0c52
Fix property hints for parsed collision mask
In NavigationPolygon use PROPERTY_HINT_LAYERS_2D_PHYSICS instead of PROPERTY_HINT_LAYERS_3D_PHYSICS to display the correct property hints.

Fixes #88154.
2024-02-09 20:44:14 +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
261952a4c7
Merge pull request #87378 from smix8/navmesh_bordersize
Add NavigationMesh `border_size` property for tile baking
2024-02-08 10:53:30 +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
8daa633d0d
Merge pull request #87961 from smix8/navmesh2d_bordersize
Add NavigationPolygon `border_size` property for tile baking
2024-02-07 11:01:42 +01:00
Hugo Locurcio
93be97e6a7
Make ShaderMaterial always the last option in inspector resource dropdowns
ShaderMaterial is the "advanced" option, while the "basic" options
should be listed first for easier accessibility (and because they're
generally used more often).

This makes sky and particle materials consistent with
canvas/spatial/fog materials on this aspect.
2024-02-05 21:49:17 +01:00
bruvzg
19f1d5afa9
[TextServer / Font] Do not duplicate images to prevent unnecessary embedding. 2024-02-05 10:38:32 +02:00
smix8
085bc9504b Add NavigationPolygon border_size property for tile baking
Adds NavigationPolygon border_size property for tile baking. Also adds baking Rect2 bounds.
2024-02-05 00:38:28 +01:00
smix8
0a485fc30a Add HeightMapShape3D functions to get min / max height
Adds HeightMapShape3D functions to get min / max height.
2024-02-04 01:23:30 +01:00
Dheatly23
9862056fa5 Fix Quaternion Keyframe Optimization 2024-02-03 16:16:21 +07:00
Rémi Verschelde
0d1fa8d657
Merge pull request #87854 from jsjtxietian/Placeholder
Update visuals immediately after resizing `Placeholder*` textures
2024-02-02 12:06:05 +01:00
jsjtxietian
e896fbb638 Support immediately update ui after resizing placeholder* texture 2024-02-02 14:56:05 +08:00
Silc Lizard (Tokage) Renew
a5dffe7804 Fix cubic interpolation wrong argument for the time 2024-01-31 14:02:42 +09:00
clayjohn
83241ab139 Enforce calling RenderingDevice code from rendering thread in TextureRD classes 2024-01-29 14:47:50 -08: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
563364d93e
Merge pull request #87603 from jsjtxietian/_property_get_revert
Fix `ShaderMaterial::_property_get_revert` crash when given non-existing `p_name`
2024-01-29 13:17:25 +01:00
jsjtxietian
f04b584ed3 Fix ShaderMaterial::_property_get_revert crash when given non-exist p_name 2024-01-29 10:39:51 +08:00
bruvzg
85df221610
[TextServer / Font] Add support for customizable baseline offset. 2024-01-28 13:26:49 +02:00
Rémi Verschelde
c26a338430
Merge pull request #87356 from jsjtxietian/connection-error
Check if the ref shader is valid in visual shader's `_update_option_menu`
2024-01-26 11:44:13 +01:00
Yuri Sizov
68d5043e88 Merge pull request #87541 from clayjohn/TextureRD-property
Avoid saving the texture_rd_rid property of TextureRD resources
2024-01-25 16:27:17 +01:00
jsjtxietian
ff089f8cea Check is the ref shader valid in visual shader's update_option_menu 2024-01-25 11:54:23 +08:00
clayjohn
c6316bff65 Avoid saving the texture_rd_rid property of TextureRD resources
RIDs do not persist between runs, so they should not be saved
2024-01-24 10:34:51 -08:00
Yuri Sizov
2ce450f8bc Merge pull request #84894 from clayjohn/tangent-error-message
Store ArrayMesh path in RenderingServer for use in error messages
2024-01-24 14:07:47 +01:00
Giwayume
bb83c4adec Add custom shader attributes to Canvas Item Shaders 2024-01-23 14:36:39 -05:00
smix8
d6c31017a6 Add NavigationMesh border_size property for tile baking
Adds NavigationMesh border_size property for tile baking.
2024-01-19 17:31:36 +01:00
Hendrik Brucker
f59419bfe0 Add connection-related VisualShader operations
- Insert a node in a connection
- Drop an unconnected node on a connection to insert it
- Delete a connection
2024-01-19 11:38:59 +01:00
Gilles Roudière
48bed5050b Make TileMapLayers extend Node2D and work as children of TileMap 2024-01-17 16:05:50 +01:00
Rémi Verschelde
79791a3855
Merge pull request #86931 from LeoBelda/fix-create-prism-mesh-division-by-zero
Prevent division by 0 when creating vertices of a PrismMesh
2024-01-11 17:40:12 +01:00
Leo Belda
83992fd7bd Fix PrismMesh::_create_mesh_array division by 0 2024-01-10 23:01:43 +01:00
kobewi
0e8f90f4c8 Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
Rémi Verschelde
1d3f98ac6a
Merge pull request #86894 from jsjtxietian/merge-dafault-font
In `merge_with` also merge some default fields of theme
2024-01-09 11:29:52 +01:00
Rémi Verschelde
84e205b5a1
Merge pull request #86950 from jsjtxietian/fix-compress-image-error
Fix wrong fail condition in compressed texture's `_set_data`
2024-01-08 14:53:43 +01:00
Silc Lizard (Tokage) Renew
a51958a2a0 Remove Object pointer/solve types conflict in AnimationTrackCache
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-01-08 21:48:19 +09:00
Rémi Verschelde
48b726deba
Merge pull request #86417 from LimestaX/tscn-escape-char-fix
Ensure special characters are escaped in TSCN connections and editable hint
2024-01-08 11:53:28 +01:00
Rémi Verschelde
91dacb469d
Merge pull request #51156 from Muller-Castro/value2ref
Add const lvalue ref to container parameters
2024-01-08 11:48:34 +01:00
LimestaX
0a32c160ac
Ensure special characters are escaped in tscn connections and editable hint 2024-01-08 11:42:30 +01:00
jsjtxietian
6a3b63eb36 Fix wrong fail contion in compressed texture and some clean up 2024-01-08 12:53:18 +08:00
jsjtxietian
6f3568e3db In merge_with also merge some default fileds of theme 2024-01-08 10:41:30 +08:00
nklbdev
e72ccc2080 Fix lossless formats in PortableCompressedTexture2D (fix data format storing) 2024-01-06 22:56:25 +05:00
Muller-Castro
96a95cb974 Add const lvalue ref to container parameters 2024-01-05 14:49:57 -03:00
Rémi Verschelde
62616fb14f
Merge pull request #86799 from Mickeon/autocompletion-animationlibrary
Add autocompletion for AnimationLibrary & AnimationMixer's methods
2024-01-05 12:06:21 +01:00
Rémi Verschelde
dc5b57ea44
Merge pull request #81325 from AttackButton/path_2d_editor_plugin-clear_points
Add a button to clear curve points in the Path2D editor
2024-01-05 12:02:41 +01:00
Rémi Verschelde
d1b7c60afc
Merge pull request #77712 from nklbdev/Fix_lossless_formats_in_PortableCompressedTexture2D
Fix lossless formats in PortableCompressedTexture2D
2024-01-05 12:02:14 +01:00
Micky
787f61d70b Add autocompletion for AnimationLibrary's & AnimationMixer 2024-01-04 21:11:36 +01:00
nklbdev
47d991678d Fix lossless formats in PortableCompressedTexture2D
Update scene/resources/portable_compressed_texture.cpp

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2024-01-05 00:11:01 +05:00
Rémi Verschelde
b88eddb682
Merge pull request #78378 from 0xafbf/curve-evaluate-correct-transform
Changed the way the rotation of a curve at a point is evaluated to match PathFollow2D
2024-01-04 16:38:38 +01:00
Rémi Verschelde
4a14f9d968
Merge pull request #86754 from Mickeon/autocompletion-spriteframes-animation
Add autocompletion for SpriteFrames' methods
2024-01-04 14:26:37 +01:00
Rémi Verschelde
6c390b620d
Merge pull request #84445 from Rubonnek/add-const-references-clang-tidy
Add const references detected by clang-tidy
2024-01-04 14:25:33 +01:00
Rémi Verschelde
5d306202b8
Merge pull request #84348 from jsjtxietian/screen-uv-in-visual-shader-preview-should-uv
Fix visual shader's `screen_uv` input preview uses position of node rather than a sample area like uv
2024-01-04 14:25:21 +01:00
Micky
c2f9a227f7 Add autocompletion for SpriteFrames' methods 2024-01-03 19:25:28 +01:00