Commit graph

14942 commits

Author SHA1 Message Date
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
Rémi Verschelde
85463fd5eb
Merge pull request #92042 from bruvzg/fix_edit_popup
Fix Tree and FileSystemList edit popup double events and ESC behavior.
2024-05-17 13:00:38 +02:00
Rémi Verschelde
0d5e910a91
Merge pull request #92009 from bruvzg/btn_min_size
Improve button min. size calculation.
2024-05-17 11:14:08 +02:00
Rémi Verschelde
62353747e5
Merge pull request #91720 from kitbdev/fix-textedit-minimap
Fix TextEdit minimap tab drawing and click check
2024-05-17 11:13:52 +02: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
bruvzg
7d4d63b807
Fix Tree and FileSystemList edit popup double events and ESC behavior. 2024-05-17 10:03:52 +03:00
bruvzg
ea379e3b3a
Improve button min. size calculation. 2024-05-16 22:37:12 +03: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
Hendrik Brucker
6a067a4a80 [GraphEdit] Fix GraphNode's ports interactable through other GraphNodes 2024-05-15 19:55:43 +02:00
Rémi Verschelde
693a13a849
Merge pull request #91601 from lander-vr/lightmap_seams_fix
LightmapGI: Fix lightleaks caused by insufficient padding and add denoiser range property for LightmapGI
2024-05-15 13:51:35 +02:00
Rémi Verschelde
77470740de
Merge pull request #91936 from jsjtxietian/body-connect
Avoid duplicate connect in Joint2D and Joint3D `_update_joint`
2024-05-15 12:09:50 +02:00
Rémi Verschelde
80b9f5b96c
Merge pull request #91804 from RedMser/wrong-size-no-more
Fix Control resizing wrongly after "change type" in editor
2024-05-15 12:09:38 +02: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
landervr
e7bd1b0673 Add denoiser range property for LightmapGI 2024-05-15 08:26:04 +02:00
jsjtxietian
51bc55598c Avoid duplicate connect in Joint2D::_update_joint and Joint3D 2024-05-15 11:57:51 +08:00
Rudolph Bester
45e5b151b6 Fixed collided particles getting stuck with zero velocity. 2024-05-14 18:55:56 +02:00
kobewi
59f05ed31a Cleanup unused/underused singleton StringNames 2024-05-14 18:18:29 +02:00
Rémi Verschelde
c0d2464d6b
Merge pull request #91939 from AThousandShips/pressed_sname
[Scene] Add `SceneStringNames::pressed`
2024-05-14 18:10:05 +02:00
Rémi Verschelde
380f63489f
Merge pull request #91728 from kitbdev/assimilate-split-container
Use `as_sortable_control()` in SplitContainer
2024-05-14 18:09:51 +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
A Thousand Ships
ee79386f7b
[Scene] Add SceneStringNames::pressed 2024-05-14 15:51:28 +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
61b970ea44
Merge pull request #91929 from matheusmdx/fix-error-91914
Fix error in AudioStreamPlayer2D
2024-05-14 12:07:20 +02: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
Rémi Verschelde
2b3d913906
Merge pull request #91802 from Rindbee/round-icon-rect-when-drawing-the-button
Round the icon's drawing rect when drawing the button
2024-05-14 12:06:48 +02:00
Magian
8a92615ba0 Resolve conflict between shader uniform tooltips "/**" and general annotation "/**/". 2024-05-14 15:32:47 +08:00
matheusmdx
305967c021 Fix error in AudioStreamPlayer2D 2024-05-14 02:07:12 -03: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
Yaohua Xiong
ed3d311687 Add antialias support for CanvasItem draw primitives
including
- rect, circle; both filled and unfilled.
- polyline, multiline
2024-05-13 19:03:31 +08:00
A Thousand Ships
2f442ff21a
Fix outdated name for script StringName 2024-05-13 12:39:41 +02:00
Rémi Verschelde
3bb7fd8ac4
Merge pull request #91329 from warriormaster12/dont-do-things-twice
Fix a performance regression when duplicating a node
2024-05-13 12:05:34 +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
Rémi Verschelde
ba533f5375
Merge pull request #81303 from KoBeWi/the_forbidden_name_of_strings
Add shorthand for using singleton string names
2024-05-13 12:05:17 +02:00
Hendrik Brucker
62776842df [VisualShader] Add reroute node and improve port drawing 2024-05-13 03:26:01 +02:00
warriormaster12
f14455fd3d Fix a performance regression when duplicating a node 2024-05-12 21:43:22 +03:00
kobewi
a262d2d881 Add shorthand for using singleton string names 2024-05-11 18:53:08 +02:00
Silc Lizard (Tokage) Renew
d654acbd39 Invert start offset on AnimationNode custom timeline 2024-05-11 15:47:21 +09:00
风青山
82fef614ce
Round the icon's drawing rect when drawing the button
Each component of the icon's drawing rect needs to be snapped to an
integer.
2024-05-11 00:15:36 +08:00
Rémi Verschelde
9c388ce5d3
Merge pull request #91760 from groud/fix_PropertyListHelper_not_handling_array_size
Fix `PropertyListHelper::_get_property` returning a valid value even if an index is outside the array valid indices
2024-05-10 10:48:42 +02:00
Gilles Roudière
7705265477 Fix PropertyListHelper::_get_property returning a valid value even if an index is outside the array valid indices
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2024-05-10 10:46:04 +02:00
Rémi Verschelde
a29482506a
Merge pull request #91757 from Chaosus/fix_color_picker_placement
Fix placement of ColorPicker in the editor
2024-05-10 09:56:06 +02:00
Rémi Verschelde
c469ab0104
Merge pull request #91507 from lyuma/expose_process_modification
Allow users to override `SkeletonModifier3D._process_modification`
2024-05-10 09:55:44 +02:00
Lyuma
1ccf0c2947 Allow users to override SkeletonModifier3D._process_modification 2024-05-09 19:48:56 -07:00
Yuri Rubinsky
1fd1adc285 Fix placement of ColorPicker in the editor 2024-05-09 15:16:33 +03:00
kit
d8acd8caa6 Use as_sortable_control() in SplitContainer 2024-05-08 13:17:34 -04:00
kit
a53c8e8d70 Fix TextEdit minimap tab drawing and click check 2024-05-08 11:43:44 -04:00
DeeJayLSP
97a70cbd6e Use data length on QOA checks instead of min size 2024-05-08 12:05:21 -03:00
Rémi Verschelde
a9a1d0a162
Merge pull request #91619 from AThousandShips/find_improve
Replace `find` with `contains/has` where applicable
2024-05-08 14:35:44 +02:00