Commit graph

3460 commits

Author SHA1 Message Date
Rémi Verschelde
5d20dccade
Add MAKE_RESOURCE_TYPE_HINT macro to simplify binding arrays of resources 2022-11-24 14:06:00 +01:00
Silc Renew
b217c41d36 Refactor interpolating functions in some classes to use Math class 2022-11-24 20:31:43 +09:00
Yaohua Xiong
f9fa182abc Refactor Curve3D::_bake() method
The main change is to caculate tangent directly from bezier curve, without going
through discretized polyline, avoiding pitfalls of discretization.

Other changes are:
1. Add an bezier_derivative() method for Vector3, Vector2, and Math;
2. Add an tesselate_even_length() method to Curve3D, which tesselate bezier curve to even length segments adaptively;
3. Cache the tangent vectors in baked_tangent_vector_cache;
2022-11-24 10:52:06 +08:00
Rémi Verschelde
d3b8faac74
ImageLoaderSVG: Improve error reporting 2022-11-23 13:27:31 +01:00
Silc Renew
c1ec99f0e1 Refactor process of AnimationTree for end of animation 2022-11-22 18:12:45 +09:00
Ninni Pipping
28c5250c2d BitMap polygon code cleanup 2022-11-22 10:00:09 +01:00
Jonathan Nicholl
f8021dae9c Add animation_changed signal to AnimationLibrary
AnimationLibrary now listens for the animation_changed signal on its
animations and emits this new signal, with the animation name added
on. AnimationPlayer now connects to this signal rather than connecting
to each individual animation, which was poor practice due to bypassing
encapsulation.
2022-11-21 15:39:03 -05:00
Markus Sauermann
28af870750 Code simplifications found by cppcheck
They are based on:
- Boolean arithmetic simplifications
- setting variables that are not accessed
- constant variables
2022-11-21 08:43:36 +01:00
Silc Renew
b739bafd51 Fix connection of animation changed signal in AnimationTrackEditor 2022-11-20 06:38:51 +09:00
Rémi Verschelde
80b3813b15
Merge pull request #67714 from adamscott/fix-preload-cyclic-references-part2
Fix cyclic references in GDScript 2.0
2022-11-18 23:08:01 +01:00
Adam Scott
5704055d30 Fix cyclic references in GDScript 2.0 2022-11-18 16:41:31 -05:00
Rémi Verschelde
8ab3e73a79
Merge pull request #64212 from xiongyaohua/curve3d_baking_refactor
Move rotation interpolation to Curve3d and refactor baking
2022-11-18 16:20:14 +01:00
Ninni Pipping
f0099b28b1 Fix polygon generation in BitMap 2022-11-17 10:31:14 +01:00
Rémi Verschelde
6d2a7cb46d
Merge pull request #68709 from MewPurPur/instance-begone-part3
Remove more instances of 'instance' being used as a verb
2022-11-16 14:41:42 +01:00
VolTer
3b4f5f8a04 Remove more instances of 'instance' being used as a verb 2022-11-16 14:01:53 +01:00
Rémi Verschelde
4935493f72
Merge pull request #67948 from DeeJayLSP/split_webp
Overhaul WebP packer and split compression options
2022-11-15 16:25:40 +01:00
DeeJayLSP
da132f3266 Overhaul WebP packer and split compression options 2022-11-15 11:52:22 -03:00
Gilles Roudière
83617790a1 Fixes infinite loop in ResourceFormatText when having unexpected end of file 2022-11-15 11:20:05 +01:00
Rémi Verschelde
f7c487f676
Merge pull request #68664 from bruvzg/bmp_base_size
[Bitmap font] Always set valid fixed size, even if it's not set in the `fnt` file.
2022-11-14 23:25:28 +01:00
Rémi Verschelde
80dbcfd995
Merge pull request #68657 from Sauermann/fix-redundant-initialization
Remove redundant non-trivial Variant types initializations
2022-11-14 23:23:54 +01:00
bruvzg
e77b6427cb
[Bitmap font] Always set valid fixed size, even if it's not set in the fnt file. 2022-11-14 22:33:59 +02:00
Hugo Locurcio
efe3220b2e
Fix periods in editor strings and messages
- Ensure all strings with ellipsis end with 3 periods instead of 2.
- Fix extraneous period in "Error calling from signal '...' to callable"
  messages.
2022-11-14 19:36:36 +01:00
Markus Sauermann
3b14f0334c Remove redundant Variant-types initializations 2022-11-14 19:35:19 +01:00
Rémi Verschelde
315c64282b
Fix misc formatting issues
Somehow I missed the failing CI report from trailing whitespace.

Fixed a couple typos found by codespell while at it, and misc
trailing semicolons in one of the files.
2022-11-14 19:00:48 +01:00
Rémi Verschelde
33e65f2754
Merge pull request #68582 from bruvzg/inv_gd3_bmp_font
Add a special case for importing bitmap fonts designed for Godot 3.
2022-11-14 11:12:17 +01:00
Bastiaan Olij
7658dc6e7e Add optional UV2 logic for lightmapping to primitive shapes 2022-11-13 19:28:10 +11:00
bruvzg
01b4e53e80
Add a special case for importing bitmap fonts designed for Godot 3. 2022-11-13 00:32:30 +02:00
Yaohua Xiong
5241464a46 Refactor Curv3D and PathFollow3D
This commit makes the following major changes

1. Add "sample_baked_with_rotation()" to Curve3D, making it usable independently. A similar change was made to Curve2D previously.
2. Refactor the _bake() method on Curve3D, using Parallel Transport Frame instead of Frenet Frame.
3. Refactor the sample_* methods, including:
  i. Factor out common binary search code, following the DRY principe
  ii. sample_up_vector() interpolated up vector as part of rotation frame(posture) for consistancy and accuracy.
2022-11-12 12:03:54 +08:00
Yuri Rubinsky
6521eccaae
Merge pull request #68477 from dzil123/visual_shader_ufunc_input_fix
Fixes https://github.com/godotengine/godot/issues/68463
2022-11-12 06:50:35 +03:00
Marc Gilleron
2aefdcc26e Fix usages of mesh simplification functions in float=64 builds 2022-11-12 00:38:00 +00:00
Rémi Verschelde
a2ad59fb8e
Merge pull request #68513 from Chaosus/fix_shader_param
Fix `Shader::has_parameter` to return a correct value
2022-11-11 10:54:50 +01:00
Rémi Verschelde
3263970cf6
Merge pull request #68428 from nikitalita/fix-mesh-convert
Fix deprecated mesh conversion
2022-11-11 10:44:10 +01:00
Yuri Rubinsky
9d4816fd4a Fix Shader::has_parameter to return a correct value 2022-11-11 11:30:34 +03:00
nikitalita
5683aa2498 fix old mesh conversion offsets 2022-11-10 22:55:01 +00:00
dzil123
445062e43b Visual Shader UVFunc keep existing input value on function change 2022-11-10 04:31:05 -08:00
Markus Sauermann
e8af3e7e8d Fix crash from impossible Object::cast_to
A Vector<>-variant can't be used in an Object::cast_to, because
Vector doesn't inherit from Object and this cast always returns a nullptr.

This patch replaces the Object::cast_to and accesses the contained
Vector directly.
2022-11-08 22:34:01 +01:00
kobewi
d9f066d5fa Remove duplicate project settings definitions 2022-11-08 01:29:39 +01:00
Markus Sauermann
18978881fe Code simplifications
CanvasItemEditor:
- p_result == ADD_MOVE is always true in this switch-clause

- both parts of the if-else-clause do the same thing and simplified an affine_inverse call

ControlEditorToolbar:
- private function ControlEditorToolbar::_anchor_to_position is used nowhere. Looks like
copy and paste from CanvasItemEditor::_anchor_to_position

ScrollContainer:
- screen_is_touchscreen is always true, because otherwise the function already returned

TextLine:
- both parts of the if-else-clause do the same thing and simplified return statement
2022-11-07 01:21:25 +01:00
Hugo Locurcio
a19e389f4f
Hide Antialiasing import option on DynamicFonts with MSDF enabled
Antialiasing cannot be adjusted on fonts rendered with MSDF.
Internally, Godot always uses grayscale antialiasing for those fonts.

This also tweaks property hints for consistency, and renames
uses of "sub-pixel" to the more commonly used "subpixel".
2022-11-03 18:40:44 +01:00
Rémi Verschelde
3cde6c0432
Merge pull request #67540 from KoBeWi/hue_hue_hue
Add a separate hue gradient for OKHSL mode
2022-11-03 11:51:45 +01:00
Rémi Verschelde
9ec7aadc06
Merge pull request #66017 from Mickeon/rename-image-copy-rect
Rename Image's `get_rect` to `get_region`
2022-11-02 22:36:57 +01:00
kobewi
84d6549c75 Change hue icons to horizontal GradientTexture2D 2022-11-02 15:34:15 +01:00
kobewi
f5981ff19d Add a separate hue gradient for OKHSL mode 2022-11-02 14:44:41 +01:00
Micky
ebf86c96e9 Rename Image's get_rect to get_region
Also renames its parameter to from "rect" to "region".
2022-11-01 23:35:48 +01:00
Yaohua Xiong
399c2a8dea Move rotation sampling from Path2D to Curve2D
The rotation sampling code is moved from Path2D to a new method
`sample_baked_with_rotation` on Curve2D.
2022-11-01 13:18:52 +08:00
Rémi Verschelde
c866f349ce
Merge pull request #67895 from bruvzg/ts_fix_obj_rects
Fix `TextLine` and `TextParagraph` `get_*_object_rect` methods not accounting for alignment and drop cap.
2022-10-31 14:29:34 +01:00
Rémi Verschelde
2529006134
Merge pull request #67486 from bruvzg/bmp_oem
[Font] Add support for OEM encoded bitmap fonts.
2022-10-31 14:20:53 +01:00
Rémi Verschelde
5947f22be9
Merge pull request #67578 from KoBeWi/GEDITOR
Unify usage of GLOBAL/EDITOR_GET
2022-10-31 13:15:58 +01:00
Rémi Verschelde
be126d42d4
Merge pull request #67588 from KoBeWi/if(!GDVIRTUAL_CALL)don't
Simplify GDVIRTUAL_CALL calls
2022-10-31 11:55:56 +01:00
Rémi Verschelde
b6cbea5e58
Merge pull request #63590 from golfinq/fbg-padding
Add padding options in theme for fg/bgcolor tags in RichTextLabel
2022-10-31 11:14:55 +01:00
Rémi Verschelde
8b1a42cd47
Merge pull request #67888 from KoBeWi/overridead
Remove `override_selected_font_color` property
2022-10-31 10:59:07 +01:00
DeeJayLSP
dd64ceab47 Change all WEBP strings and comments to WebP 2022-10-28 15:17:49 -03:00
Clay John
682156e1f0
Merge pull request #66383 from aaronfranke/basis-from-euler
Clean up Basis from Euler code
2022-10-27 09:44:21 -07:00
kobewi
c7eb814ede Remove override_selected_font_color property 2022-10-26 12:59:18 +02:00
bruvzg
4a6d39c6b9
Fix TextLine and TextParagraph get_*_object_rect methods not accounting for alignment and drop cap. 2022-10-26 10:46:08 +03:00
Yuri Rubinsky
2b505b74b9
Merge pull request #67431 from Chaosus/vs_fix_nodes_code 2022-10-25 20:38:24 +03:00
Clay John
040f49ed6e
Merge pull request #67390 from groud/more_conservative_terrain_painting
Make terrain painting not change neighbors centers bits
2022-10-23 17:11:06 -07:00
Aaron Franke
7f9a8c99c9
Clean up Basis from Euler code 2022-10-21 17:54:49 -05:00
Max Hilbrunner
d145c9b1a7
Merge pull request #67684 from patchfx/fix-typo-in-draw-rect-region
Fix tp_canvas_item typo in _draw_rect_region
2022-10-21 18:13:45 +02:00
Clay John
72b845b287
Merge pull request #67506 from squashiv/master
Expose Shape2D::get_rect to scripting
2022-10-20 13:26:40 -07:00
Richard Patching
5de65bb2d7 Fix tp_canvas_item typo in _draw_rect_region 2022-10-20 20:04:45 +01:00
Gilles Roudière
fe65d7aa7b Make terrain painting not change neighbors centers bits 2022-10-20 14:47:45 +02:00
squash
247a93845d Expose Shape2D::get_rect to scripting 2022-10-20 11:26:49 +03:00
Yuri Rubinsky
19126d22a4 Fix code generation for some visual shader nodes 2022-10-19 09:09:56 +03:00
kobewi
d06a8320e5 Simplify GDVIRTUAL_CALL calls 2022-10-19 00:05:48 +02:00
kobewi
e48c5daddf Unify usage of GLOBAL/EDITOR_GET 2022-10-18 19:01:48 +02:00
Patrick
91a9e7af3f Fix typo in VisualShader DistanceFade node 2022-10-18 18:20:31 +02:00
bruvzg
2aa350f701
[Font] Add support for OEM encoded bitmap fonts. 2022-10-16 18:22:21 +03:00
kobewi
072f6feaba Make some Image methods static 2022-10-14 14:34:15 +02:00
Rémi Verschelde
7502c808fa Merge pull request #66665 from Mickeon/editor-do-not-edit-inherited-signals
Do not allow editing Scene-inherited signal connections
2022-10-14 10:19:47 +02:00
Micky
6a77563b25 Do not allow editing Scene-inherited signal connections
Inherited connections are also highlighted with the warning color in the Node dock.
2022-10-13 20:13:05 +02:00
Juan Linietsky
71d2e38cb5 Optimize Convex Collision
Implements the Gauss Mapping optimization to SAT convex collision test.

* Described [here](https://ubm-twvideo01.s3.amazonaws.com/o1/vault/gdc2013/slides/822403Gregorius_Dirk_TheSeparatingAxisTest.pdf) by Dirk Gregorius.
* Requires adding of face information to edges in MeshData
* Took the chance to convert MeshData to LocalVector for performance.
2022-10-13 19:07:53 +02:00
Rémi Verschelde
9eb8eb5f7d Merge pull request #67336 from jbcolli2/Normal-of-CylinderMesh
Fix bug in CylinderMesh when computing normals
2022-10-13 15:24:55 +02:00
jbcolli2
491ec622f6 Changed normal of CylinderMesh to account for slanted side. 2022-10-13 08:24:31 -04:00
Rémi Verschelde
c55c0a2028 Merge pull request #66349 from A-Lamia/Amount_At_Collision
PARTICLES: adds amount property to collision sub particles.
2022-10-13 09:03:43 +02:00
Lamia
5af6f4a04b particles: add amount property to sub property collision. 2022-10-13 04:25:18 +11:00
Rémi Verschelde
ea47e03b36
Merge pull request #65714 from benbot/fix-double-particle-collision-calculation 2022-10-12 17:46:17 +02:00
Rémi Verschelde
646d59e713 Merge pull request #63271 from Chaosus/fix_texture_error
Fix error emitting when opening some textures in the inspector
2022-10-11 16:17:15 +02:00
Rémi Verschelde
6d534f6e89 Merge pull request #66221 from Mickeon/painstakingly-appending-ds-en-you-tea-es
Rename remaining "*_enable" to "*_enabled"
2022-10-11 16:17:02 +02:00
Rémi Verschelde
8017827144 SCons: Re-enable treating #warning as error with werror
Replace all TODO uses of `#warning` by proper TODO comments, and will open
matching bug reports to keep track of them.

We don't have a great track record fixing TODOs, but I'd wager we're even
worse for fixing these "TODO #warning" so we should prohibit this usage.
2022-10-10 16:12:26 +02:00
kobewi
14b82c36a2 Defer clearing of ResourceUID cache and silence warnings 2022-10-10 11:20:23 +02:00
Haoyu Qiu
344ed9ec6c Remove leading spaces from enumerator name hints
For `PROPERTY_HINT_ENUM` properties, enumerator names can be provided as
a comma separated list. There're a few properties that add leading
spaces to the names (e.g. `First, Second, Third`).

These spaces are included in the Inspector dropdown, which is
unexpected.

It's better to leave the surrounding spaces untouched because it could
be part of the resulting string value (the variable is a string enum).
And most other enum hints don't contain surrounding whitespaces.

This PR removes the spaces and documents this `PROPERTY_HINT_ENUM`
behavior.
2022-10-08 11:33:50 +08:00
bruvzg
0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4. 2022-10-07 11:32:33 +03:00
Rémi Verschelde
5b7f62af55 Merge pull request #62910 from Vitika9/gsoc-colorpicker-ux
ColorPicker UX
2022-10-07 09:49:29 +02:00
Nikola Bunjevac
e903362269 Handle last baked vector index early 2022-10-06 00:27:46 +02:00
Rémi Verschelde
57ffc4d82c Merge pull request #66560 from MisterMX/fix/tileset-move-custom-data-layer
fix(tileset): Move custom data layer
2022-10-05 13:39:46 +02:00
Rémi Verschelde
5b6ccf2fd2 Merge pull request #66720 from qarmin/unintialized_memory
Remove usage of unitialized variables
2022-10-05 11:42:47 +02:00
Rémi Verschelde
9513034b88 Merge pull request #66911 from clayjohn/imagetexture3d
Properly assign texture RID when creating ImageTexture3D
2022-10-05 08:32:11 +02:00
clayjohn
7fdb460e5d Properly assign texture RID when creating ImageTexture3D 2022-10-04 15:04:55 -07:00
Micky
1518d813be Support nesting AtlasTextures inside other AtlasTextures
Connects AtlasTexture to its `atlas`'s "changed" signal, allowing it to detect property changes to `atlas` and update accordingly, when the project is running and in the editor, as well.
2022-10-04 17:09:37 +02:00
Yuri Rubinsky
a656dcec01 Fix boolean connection to ports of other types in visual shader 2022-10-03 20:20:00 +03:00
Rafał Mikrut
2233624152 Remove usage of unitialized variables 2022-10-01 21:09:22 +02:00
Rémi Verschelde
e69b7083d4 Merge pull request #65903 from groud/improve_terrain_painting
Right-click to erase TileSet terrains and bugfixes
2022-09-30 17:44:48 +02:00
MisterMX
cfe518b90b fix(tileset): Move custom data layer
Fix crash when moving a custom data layer.

Signed-off-by: MisterMX <mbxd12@web.de>
2022-09-29 11:53:48 +02:00
Rémi Verschelde
6991e9b43d Merge pull request #66583 from bruvzg/constexpr
Use `constexpr` in the conditions with template parameters and `sizeof`s to suppress C4127 warnings.
2022-09-29 10:44:22 +02:00
Rémi Verschelde
5bcd019ee9 Merge pull request #66552 from bruvzg/64_bitfields
Change BitField to use 64-bit int.
2022-09-29 10:44:08 +02:00
Rémi Verschelde
315a71103e Merge pull request #66565 from clayjohn/canvas-lights
Clean up canvas light shader API.
2022-09-29 10:43:42 +02:00
bruvzg
ea1848ce0a
Use constexpr in the conditions with template parameters and sizeofs to suppress C4127 warnings. 2022-09-29 10:38:21 +03:00
Rémi Verschelde
67f79819e7 Merge pull request #66551 from bruvzg/font_is_cyclic
Fix Font::_is_cyclic.
2022-09-28 20:47:56 +02:00
Rémi Verschelde
0dd308cedd Merge pull request #66545 from akien-mga/msvc-warnings-c4324-c4389-c4456-c4459
Fix MSVC warnings C4324, C4389, C4456, and C4459
2022-09-28 20:47:43 +02:00
clayjohn
1a0890122f Clean up canvas light shader API.
Expose LIGHT_ENERGY and LIGHT_IS_DIRECTIONAL.
Add LIGHT_DIRECTION
2022-09-28 11:46:58 -07:00
bruvzg
155694c7c6
Fix Font::_is_cyclic. 2022-09-28 18:11:17 +03:00
Rémi Verschelde
7ab01450cf Fix MSVC warning C4702: unreachable code
Part of #66537.
2022-09-28 16:46:48 +02:00
Rémi Verschelde
d8268aae30 Fix MSVC warnings C4324, C4389, C4456, and C4459
Part of #66537.
2022-09-28 16:43:09 +02:00
bruvzg
8a9659b152
Change BitField to use 64-bit int. 2022-09-28 17:36:59 +03:00
Rémi Verschelde
7562932eb2 Merge pull request #66160 from dpalais/double_time
Use double instead of real_t type for time-related parameters and variables
2022-09-27 10:04:10 +02:00
Rémi Verschelde
ed65f903ff Merge pull request #66444 from Calinou/fogvolume-tweak-density-property-hint
Tweak FogVolume density property to allow sliding to negative values
2022-09-27 09:55:15 +02:00
Dave Palais
0c46068af0 Change time parameters and variables to double type
Addresses #65313
2022-09-26 13:52:54 -05:00
Hugo Locurcio
528db5287b
Tweak FogVolume density property to allow sliding to negative values
Negative density is used to subtract fog from the rest of the world.

The visible range in the slider was reduced to [-8; 8] as FogVolume
density should generally not exceed 8.0 (it can introduce aliasing).
2022-09-26 15:44:30 +02:00
Rémi Verschelde
49fcf4ffad Style: Cleanup header guards for consistency
Fix file names for {Static,Lightmap}RaycasterEmbree.
2022-09-26 13:51:17 +02:00
clayjohn
36cb3c4050 Set QuadMesh default size back to 1 2022-09-23 11:00:43 -07:00
Rémi Verschelde
d1a155e3cd Fix various -Wmaybe-uninitialized warnings from GCC 12.2.1
Not sure why I didn't get those before, it may be due to upstream
changes (12.2.1 is a moving target, it's basically 12.3-dev), or simply
rebuilding Godot from scratch with different options.
2022-09-22 11:29:48 +02:00
Micky
c1b5b68eee Rename remaining "*_enable" to "*_enabled"
Material.`proximity_fade_enable` -> `proximity_fade_enabled`
Material.`set_proximity_fade` -> `set_proximity_fade_enabled`
(Material.`is_proximity_fade_enabled` is unchanged)

Area3D.`reverb_bus_enable` -> `reverb_bus_enabled`
(`set_use_reverb_bus` & `is_using_reverb_bus` are unchanged)

RDPipelineRasterizationState:
`depth_bias_enable` -> `depth_bias_enabled`
`set_depth_bias_enable` -> `set_depth_bias_enabled`
`get_depth_bias_enable` -> `get_depth_bias_enabled`

Bonus:
Area3D.`set_reverb_bus` -> `set_reverb_bus_name`
Area3D.`get_reverb_bus` -> `set_get_reverb_bus_name`
2022-09-21 22:47:46 +02:00
Micky
3cae53ba70 Remove unused struct in GradientTexture1D 2022-09-21 19:05:03 +02:00
Rindbee
332c566a6c Let the cached TextLine reset the width in get_string_size
Previously, the cached `TextLine` would set the width in `draw_string`, but not in `get_string_size`,
which resulted in unexpected results returned by `get_string_size` in some cases.
2022-09-21 19:47:36 +08:00
Rémi Verschelde
73c35e8d95 Merge pull request #65918 from clayjohn/quadmesh
Add QuadMesh back as a subclass of PlaneMesh.
2022-09-19 22:03:17 +02:00
clayjohn
87710517fa Add QuadMesh back as a subclass of PlaneMesh.
This simplifies the creation of billboarded meshes without any code overhead.
2022-09-19 08:53:10 -07:00
Silc Renew
96ee320fb7 Changed the rest definition of SkeletonProfileHumanoid thumb 2022-09-18 06:28:53 +09:00
Gilles Roudière
68ffa9a2a1 Right-click to erase TileSet terrains and bugfixes 2022-09-16 15:22:55 +02:00
Rémi Verschelde
d6d43dc785 Merge pull request #65873 from Chaosus/fix_uniform_sorting
Fix sorting of uniform items in the material properties
2022-09-16 09:24:18 +02:00
Rémi Verschelde
a981a8061f Merge pull request #65325 from TokageItLab/refactor-variant-for-anim
Move some static methods to `Animation` from `Variant` for refactoring `Animation` and `Tween`
2022-09-16 09:20:50 +02:00
Yuri Rubinsky
4f0e0f1650 Fix sorting of uniform items in the material properties
Co-authored-by: Chia-Hsiang Cheng <garychia@users.noreply.github.com>
2022-09-16 08:59:13 +03:00
Lyuma
033abdc59f 2D and 3D Skeleton modification docs, and small fixes.
Mark SkeletonModificationStack3D and related as deprecated.
Mark local bone override and axis functions deprecated in Skeleton3D api.
Fix array property glitch in SkeletonModificationStack2D
Mark SkeletonModificationStack2D and related APIs as experimental. Mark SkeletonIK3D as deprecated.
2022-09-14 15:07:45 -07:00
Rémi Verschelde
b094e4f1a1
Merge pull request #64092 from nathanfranke/shader-uniform 2022-09-14 22:07:15 +02:00
Silc Renew
9d47e079b7 Move some methods to Animation from Variant for refactoring 2022-09-15 04:52:43 +09:00
Rémi Verschelde
fff0970c5a
Merge pull request #65628 from JohanAR/particle_billboard_normal
Calculate MODELVIEW_NORMAL_MATRIX for billboard materials
2022-09-14 21:17:30 +02:00
Rémi Verschelde
d9e974cdb0
Merge pull request #65493 from V-Sekai/lod_scaling
Fixes LOD scaling issues on skinned meshes.
2022-09-14 09:57:02 +02:00
Rémi Verschelde
dbd6fa7e33
Merge pull request #65737 from bruvzg/font_do_not_emit_from_dtr
[Font] Remove unnecessary cleanup and `changed` signal emission from the destructor.
2022-09-14 07:59:59 +02:00
SaracenOne
13f5c62124 Fix LOD-generation on skinned meshes. 2022-09-14 02:46:10 +01:00
clayjohn
8fa76a5272 Move debanding into internal sky shader code so that it is applied after everything else.
This ensures that the debanding does not scale with exposure or any other effect.
2022-09-13 10:39:04 -07:00
bruvzg
2ece5b4a6b
[Font] Remove unnecessary cleanup and changed signal emission from the destructor. 2022-09-13 10:28:12 +03:00
benbot
f0ebfdb6ed removed 2nd particle collision velocity calculation 2022-09-12 13:07:26 -04:00
Johan Aires Rastén
bb657c04fc Calculate MODELVIEW_NORMAL_MATRIX for billboard materials
Solves #65627
2022-09-10 21:08:29 +02:00
Yuri Sizov
141fdac36c
Merge pull request #65188 from Mickeon/animated-texture-speed-scale
Rework AnimatedTexture's `fps` into `speed_scale`
2022-09-08 18:25:35 +03:00
smix8
d7f75fab60 Remove / Replace old Navigation Debug Visualization
- removes / replaces leftovers from old navigation debug code
- cleanes SceneTree and ProjectSettings from old navigation debug
2022-09-07 18:30:35 +02:00
Rémi Verschelde
e0c7916f73 Merge pull request #59069 from fire-forge/stylebox_margin_functions
Add all/individual setters for StyleBox default margins and StyleBoxTexture margin size and unbind `StyleBox*.set_*_individual()` methods
2022-09-07 17:52:58 +02:00
Rémi Verschelde
48705b1f03 Merge pull request #65355 from groud/split_container_min_grab_thickness
Allow SplitContainer to have a grab area larger than its visual grabber
2022-09-07 17:51:52 +02:00
FireForge
dcfd7622d1 Unbind StyleBox*.set_*_individual() methods
Unbinds the following methods:
- StyleBox.set_default_margin_individual()
- StyleBoxFlat.set_corner_radius_individual()
- StyleBoxFlat.set_expand_margin_individual()
- StyleBoxTexture.set_expand_margin_individual()
- StyleBoxTexture.set_margin_size_individual()
2022-09-07 16:37:36 +03:00
FireForge
dd7ee37c8a Add set_default_margin_all/individual to StyleBox 2022-09-07 16:37:36 +03:00
Gilles Roudière
4cbcb5acda Allow SplitContainer to have a grab area larger than its visual grabber 2022-09-07 12:33:02 +02:00
Rémi Verschelde
647f345ffe Merge pull request #65457 from Chaosus/vs_fix2
Add conversion for uniform_name property in visual shader
2022-09-07 09:09:58 +02:00
Rémi Verschelde
2841bc358c Merge pull request #65446 from YuriSizov/dialogs-make-styleboxes-matter
Make `AcceptDialog` and derivatives utilize `StyleBox` fully
2022-09-07 09:09:15 +02:00
Rémi Verschelde
80dacac90c Merge pull request #65437 from YuriSizov/theme-gui-renames
Improve naming of theme properties throughout GUI code
2022-09-07 08:58:00 +02:00
Yuri Rubinsky
b17a306239
Merge pull request #65455 from Chaosus/vs_fix 2022-09-07 08:44:01 +03:00
Yuri Rubinsky
09c98cdde9 Add conversion for uniform_name property in visual shader 2022-09-07 08:19:02 +03:00
Yuri Rubinsky
3401228fbd Fix code generation for VisualShaderNodeTextureParameterTriplanar 2022-09-07 07:02:07 +03:00
Yuri Sizov
5eaf82b4f0 Make AcceptDialog and derivatives utilize StyleBox fully 2022-09-07 01:42:11 +03:00
Yuri Sizov
39ef611a7d Fix theming code in Panel, SplitContainer, RichTextLabel 2022-09-06 22:53:19 +03:00
Yuri Sizov
43f03e2ce6 Improve naming of theme properties throughout GUI code
Rename ItemList's bg -> panel
Rename ItemList's bg_focus -> focus
Rename ProgressBar's bg -> background
Rename ProgressBar's fg -> fill
Rename Tree's bg -> panel
Rename Tree's bg_focus -> focus
Rename ScrollContainer's bg -> panel
Rename FileDialog's *_icon_modulate -> *_icon_color
Rename FileDialog's files_disabled -> file_disabled_color
Rename CheckButton's on/off -> checked/unchecked
Rename check_v_adjust -> check_v_offset
2022-09-06 22:53:17 +03:00
Micky
9c9c5f662f Rework AnimatedTexture's fps into speed_scale
`fps` has been turned into `speed_scale`. It now affects the scale of the entire animation. If `speed_scale` is a negative value, the animation is played in reverse.

`frame_n/delay_sec` has been renamed to `frame_n/duration` _(prefixes exist, making the previous name redundant)_.

Setters and getters, documentation updated, too.
2022-09-06 21:40:09 +02:00
Rémi Verschelde
0c4d578bdf
Merge pull request #65194 from Mickeon/rename-one-shot 2022-09-06 18:32:48 +02:00
Vitika9
1dce43d417 ColorPicker UX improvements
- Tabs and MenuButton for mode selection and enabling/disabling colorized sliders
- MenuButton for shape selection with new icon for each shape
- Drag and drop functionality for presets to arrange order
- A chronological list of recently selected presets which are global for the editor
- Presets are now highlighted as being active or inactive
- Thicker sliders for easy targeting
- `grabber_offset` theme constant for Slider
- Uncolorized sliders
2022-09-06 21:42:20 +05:30
Micky
b6daad8d4b Rename range_lerp to remap 2022-09-06 07:19:20 +02:00
Patrick
e3ee2a0a6e Disable Output port preview of Linear Depth Visual Shader node
This disables the output port preview of the node because it's enabled preview caused a shader compilation error
2022-09-03 22:36:37 +02:00
Nathan Franke
82d2a97a83
prefix shader parameters with "shader_parameter/" 2022-09-02 20:41:00 -05:00
Rémi Verschelde
77ca96fd73 Merge pull request #59589 from Calinou/rename-or-lesser-range-property-hint 2022-09-02 23:13:20 +02:00
Hugo Locurcio
f7292dbeb3
Rename or_lesser range property hint to or_less
"less" should be used for quantity, rather than "lesser".

Existing scripts that use `or_lesser` in `_get_property_list()`
will need to be updated to account for this change.
2022-09-02 19:08:20 +02:00
Yuri Rubinsky
1241c4b6ba Revert usage of typed array in add_surface_from_arrays parameters 2022-09-02 18:08:43 +03:00
Rémi Verschelde
3a62c294c7 Merge pull request #65170 from KoBeWi/your_argument_is_TypedArray 2022-09-02 13:57:02 +02:00
Rémi Verschelde
c82bbc38a5 Merge pull request #64952 from Chaosus/vs_rename_uniform_to_param 2022-09-02 13:49:53 +02:00
Rémi Verschelde
5a136ee490 Merge pull request #64724 from KoBeWi/HVBoxContainer 2022-09-02 08:44:42 +02:00
Jonathan Nicholl
15d057c521 Add is_zero_approx methods to Vector2, 3, and 4 2022-09-02 00:29:50 -04:00
Rémi Verschelde
d63c6fc463 Merge pull request #60185 from Calinou/environment-fog-and-sky-affect 2022-09-01 23:52:34 +02:00
Rémi Verschelde
005aac2dbe Merge pull request #65187 from JohanAR/vector_to_size 2022-09-01 23:50:59 +02:00
Rémi Verschelde
5263fd5343 Merge pull request #64198 from Geometror/add-bitmap-tests 2022-09-01 23:46:38 +02:00
Rémi Verschelde
2e0cffdb6f Merge pull request #63479 from DarkKilauea/nav-link 2022-09-01 23:44:22 +02:00
kobewi
73929bef73 Rework oriented containers 2022-09-01 22:13:46 +02:00
Johan Aires Rastén
b7e2d45233 Replace Vector2(i) with Size2(i) for methods returning a size 2022-09-01 20:04:17 +02:00
Hugo Locurcio
699e9f7966
Add Environment properties to control fog rendering on background sky
Values lower than 1.0 can be used to make the fog rendering not fully
obstruct the sky. This can be desired when using fog as a purely
atmospheric effect, without intending to use fog for open world fog
fading.

When set to 0.0, fog rendering behavior will be similar to Godot 3.x
where sky rendering was never affected by fog.
2022-09-01 19:07:39 +02:00
Hendrik Brucker
ea0472fecf Refactor BitMap and add tests
Co-authored-by: Resul Çelik <resul_celik@hotmail.com>
2022-09-01 18:39:17 +02:00
Micky
8949386382 Rename AnimatedTexture oneshot to one_shot
AnimatedTexture.`oneshot` -> `one_shot`

For consistency. Every other exposed `one_shot` is spaced out like this.
2022-09-01 15:38:06 +02:00
Yuri Sizov
15fd025f90 Add dumb and manual theme caching systems to Window 2022-09-01 16:05:02 +03:00
kobewi
7adc8376ed Change Array arguments to TypedArray 2022-09-01 13:13:19 +02:00
Yuri Rubinsky
8191b3c110 Rename uniform to parameter across the engine 2022-09-01 11:42:57 +03:00
Rémi Verschelde
89f0886425
Merge pull request #65073 from bruvzg/trim_spaces
[TextServer] Add support for trimming edge spaces on line break.
2022-09-01 08:16:52 +02:00
Rémi Verschelde
e67c967cbc
Merge pull request #63751 from clayjohn/physical_light_units
Implement Physical Light Units in Vulkan Renderers
2022-09-01 08:08:38 +02:00
bruvzg
7aad14a4b6
[TextServer] Add support for trimming edge spaces on line break. 2022-09-01 08:11:55 +03:00
clayjohn
385ee5c70b Implement Physical Light Units as an optional setting.
This allows light sources to be specified in physical light units in addition to the regular energy multiplier. In order to avoid loss of precision at high values, brightness values are premultiplied by an exposure normalization value.

In support of Physical Light Units this PR also renames CameraEffects to CameraAttributes.
2022-08-31 12:14:46 -07:00
Patrick
323ff657c0 Fix LinearDepth calculation for GLES3
This change will calculate the depth ndc differently for GLES3 and Vulkan as described in here:
stable:
https://docs.godotengine.org/en/stable/tutorials/shaders/advanced_postprocessing.html
godot 4 with vulkan:
https://docs.godotengine.org/en/latest/tutorials/shaders/advanced_postprocessing.html
2022-08-31 21:00:13 +02:00
Rémi Verschelde
4daa0274ca
Merge pull request #65092 from groud/inherited_scenes_tilesets 2022-08-31 12:07:18 +02:00
Gilles Roudière
b69f804c1a Fixes inherited scenes not working in TileSet scenes collection sources 2022-08-31 10:12:04 +02:00
Hugo Locurcio
ae18928748
Rename Curve/Curve2D/Curve3D/Gradient interpolate() to sample()
"sampling" is a more accurate term than "interpolating" for what's
happening when using that function.
2022-08-30 22:08:38 +02:00
Rémi Verschelde
e27b61d291
Merge pull request #65042 from YuriSizov/editor-docks-tabbar-bg 2022-08-30 18:53:54 +02:00
Rémi Verschelde
ae349d8227
Merge pull request #64377 from Mickeon/rename-canvas-redraw
Rename `CanvasItem.update()` to `queue_redraw()`
2022-08-30 14:47:41 +02:00
Rémi Verschelde
889c522a19
Merge pull request #64410 from MewPurPur/rename-notification-instanced 2022-08-30 12:01:58 +02:00
Rémi Verschelde
432b25d364
Merge pull request #65066 from aaronfranke/str-path-join 2022-08-30 10:01:11 +02:00
Aaron Franke
10a56981dc
Rename String plus_file to path_join 2022-08-29 19:38:13 -05:00
Yuri Sizov
8b196be855 Add background to TabContainer's tabbar and editor docks 2022-08-29 23:43:32 +03:00
Micky
e31bb5ffeb Rename CanvasItem.update() to queue_redraw()
Affects a lot of classes. Very thoroughly checked signal connections and deferred calls to this method, add_do_method/add_undo_method calls, and so on.

Also renames the internal `_update_callback()` to `_redraw_callback()` for consistency.

Just a few comments have also been changed to say "redraw".

In CPUParticles2D, there was a private variable with the same name. It has been renamed to `do_redraw`.
2022-08-29 14:59:47 +02:00
Hugo Locurcio
64717d64cd
Improve documentation for BaseMaterial3D's alpha scissor threshold 2022-08-29 14:54:06 +02:00
Rémi Verschelde
e60086f98b
Merge pull request #64119 from YuriSizov/theme-init-database 2022-08-29 14:02:21 +02:00
Rémi Verschelde
583c0c4897
Merge pull request #64980 from TokageItLab/fix-animedit-draw-and-find-key 2022-08-29 12:29:24 +02:00
Haoyu Qiu
385a5b44aa Improve documentation for get_animation() 2022-08-29 14:54:57 +08:00
Silc Renew
77cf519cf0 Fixed AnimationTrackEditor redraw/deselect timing and find key compearation 2022-08-29 10:44:00 +09:00
Rémi Verschelde
011dbda2ea
Merge pull request #64999 from Chaosus/fix_packed_scene_crash 2022-08-28 21:21:53 +02:00
Yuri Rubinsky
a33903d23f Prevent crash at loading some scenes 2022-08-28 21:56:04 +03:00
Pedro J. Estébanez
2b73bf1ed1 Make local-to-scene resources behavior consistent in child scenes 2022-08-28 20:17:16 +02:00
Rémi Verschelde
c9972e3981
Merge pull request #64526 from Rindbee/improve-packed-scene-instantiate
Improve PackedScene instantiate
2022-08-28 17:12:26 +02:00
Rindbee
d6c0959cb1 Improve PackedScene instantiate
Make `resource_local_to_scene` behave as described in the documentation. (If I understand correctly, the following **instance** refers to **the instance of the sub-scene**.)
2e24b76535/doc/classes/Resource.xml (L70-L72)

If the resources of the sub-scene are modified in the main scene, the modified resources will be recorded in the `tscn` file of the main scene. And the root node of the sub-scene will be set twice.
1. In the main scene, when encountering a sub-scene, the sub-scene will be initialized first;
2. Then use the resources in the main scene to reset the root node of the sub-scene.

This may make `resource_local_to_scene` not work as expected. The resources cannot be shared between the sub-scene root node and other ordinary nodes in the sub-scene.

Yes, if the resources have `resource_local_to_scene` enabled, this patch treats the modified resources of the sub-scene root node as resources in the sub-scene, not in the main scene. Although the modifications are recorded in the `tscn` file of the main scene.
2022-08-28 20:39:09 +08:00
Patrick Exner
55bbcc54e7 Implement custom non-trivial shader functions 2022-08-27 22:59:12 +02:00
Silc Renew
787ab45394 Add optimization for Animation::ValueTrack 2022-08-27 22:59:33 +09:00
Josh Jones
3dd59013f4 Added node for Navigation links 2022-08-26 22:05:15 -07:00
Silc Renew
931fb4dc11 Add linear/cubic angle interpolation to Animation interpolation type 2022-08-27 07:58:22 +09:00
Rémi Verschelde
f9f2446972
Merge pull request #64367 from Mickeon/rename-var-to-str
Rename `str2var` to `str_to_var` and similar
2022-08-26 23:04:06 +02:00
Yuri Sizov
6320a0fc18 Add ThemeDB, expose previously static Theme methods 2022-08-26 19:23:05 +03:00
Micky
59e11934d8 Rename str2var to str_to_var and similar
Affects the Math class, a good chunk of the audio code, and a lot of other miscellaneous classes, too.

- `var2str` -> `var_to_str`
- `str2var` -> `str_to_var`
- `bytes2var` -> `bytes_to_var`
- `bytes2var_with_objects` -> `bytes_to_var_with_objects`
- `var2bytes` -> `var_to_bytes`
- `var2bytes_with_objects` -> `var_to_bytes_with_objects`
- `linear2db` -> `linear_to_db`
- `db2linear` -> `db_to_linear`
- `deg2rad` -> `deg_to_rad`
- `rad2deg` -> `rad_to_deg`

- `dict2inst` -> `dict_to_inst`
- `inst2dict` -> `inst_to_dict`
2022-08-26 14:58:22 +02:00
Rémi Verschelde
7013c68619
Merge pull request #64422 from bruvzg/make_fonts_unbearably_ugly_2.0 2022-08-26 11:59:07 +02:00
Rémi Verschelde
354123a207
Merge pull request #64243 from bruvzg/multiline_textmesh 2022-08-26 11:45:25 +02:00
Rémi Verschelde
d6267c2d2c
Merge pull request #64305 from bruvzg/ts_reset_data 2022-08-26 11:44:24 +02:00
Rémi Verschelde
5bf2b3926c
Merge pull request #64879 from TokageItLab/cubic-to-cubicintime
Replace `Cubic` to `CubicInTime` in the animation track interpolation type
2022-08-26 09:45:24 +02:00
Micky
723bf85145 Rename ParticlesMaterial to ParticleProcessMaterial
Also affects their file names, related classes and documentation.
2022-08-26 02:53:08 +02:00
Silc Renew
d96cc7450a Make Cubic to CubicInTime and reduce items in the track intrp type 2022-08-26 06:49:09 +09:00
Rémi Verschelde
33bf609d79
Merge pull request #64820 from Chaosus/shader_fix_varyings 2022-08-25 18:02:38 +02:00
Yuri Rubinsky
d4a10e7e04 Allow using integer varyings with flat interpolation modifier 2022-08-25 13:21:02 +03:00
Rémi Verschelde
a0113a98e4
Merge pull request #64801 from clayjohn/plane-quad
Remove QuadMesh and add orientation parameter to PlaneMesh
2022-08-25 07:38:30 +02:00
clayjohn
861c5bff0e Remove QuadMesh and add orientation parameter to PlaneMesh 2022-08-24 18:51:18 -07:00
Rémi Verschelde
ca5c3d6df9 Fix ParticlesMaterial build after #61238 2022-08-25 00:52:37 +02:00
Rémi Verschelde
56752e32a6
Merge pull request #61238 from Calinou/particlesmaterial-add-fade-on-contact-collision-mode
Add "Hide on Contact" collision mode to ParticlesMaterial
2022-08-25 00:01:47 +02:00
Yuri Sizov
c78cbb523f Extract editor color map and simplify SVG color conversion 2022-08-24 15:59:14 +03:00
Rémi Verschelde
91e5f48ea7
Merge pull request #64009 from KoBeWi/arrayy_lmao
Replace Array return types with TypedArray (part 2)
2022-08-24 08:18:56 +02:00
kobewi
1abdffe7a0 Replace Array return types with TypedArray 2 2022-08-23 23:21:32 +02:00
Rémi Verschelde
6277448f42
Merge pull request #64647 from TokageItLab/auto-tangent 2022-08-23 18:17:15 +02:00
Rémi Verschelde
5c5bc21195
Merge pull request #63854 from TokageItLab/auto-bone-mapping 2022-08-23 18:16:15 +02:00
Rémi Verschelde
481070812e
Merge pull request #64640 from aaronfranke/skeleton-cleanup 2022-08-23 13:44:54 +02:00
Silc Renew
9327296e73 Add bezier preset and refactor bezier editor
Co-authored-by: Razoric480 <razoric480@gmail.com>
2022-08-23 19:14:03 +09:00
Silc Renew
c7e4eeb8a4 Add simple auto mapping to BoneMapper
Co-authored-by: K. S. Ernest (iFire) Lee <ernest.lee@chibifire.com>
2022-08-23 16:43:33 +09:00
bruvzg
bcc3643989
Add font LCD sub-pixel anti-aliasing support. 2022-08-23 08:47:21 +03:00
kobewi
8be27dc59e Replace Array return types with TypedArray 2022-08-22 22:42:36 +02:00
Rémi Verschelde
cb62c91c12
Merge pull request #58600 from Calinou/material-triplanar-sharpness-clamp 2022-08-22 22:21:33 +02:00
Rémi Verschelde
1f61d47766
Merge pull request #64339 from YuriSizov/core-multilevel-validate-property 2022-08-22 21:39:48 +02:00
Rémi Verschelde
5bc8702855
Merge pull request #64132 from TokageItLab/fix-optimizer 2022-08-22 20:39:06 +02:00
Rémi Verschelde
7b4927bb5f
Merge pull request #60309 from The-O-King/oct 2022-08-22 19:29:21 +02:00
Rémi Verschelde
43ff5dd890
Merge pull request #64642 from aaronfranke/mesh-cleanup 2022-08-22 17:36:33 +02:00
Yuri Sizov
1a24c9e14b Make _validate_property a multilevel method 2022-08-22 18:35:11 +03:00
Rémi Verschelde
944bfc6d00
Merge pull request #63602 from TokageItLab/cubic-interp-time 2022-08-22 17:32:47 +02:00
Rémi Verschelde
fdc36ad082
Merge pull request #64553 from RedMser/fix-property-validation-refactor 2022-08-22 16:54:47 +02:00
Aaron Franke
8893b2bdb4
Clean up mesh include code and comments 2022-08-20 13:24:40 -05:00
Aaron Franke
7be49cb5e0
Clean up include guards in 3D skeleton modification code 2022-08-19 19:18:47 -05:00
clayjohn
bbbcdd725a Remove requirement to have vertex positions when creating a mesh. Meshes can now be constructed from an index buffer alone 2022-08-19 14:50:12 -06:00
Hugo Locurcio
17ad6df56d
Add "Hide on Contact" collision mode to ParticlesMaterial
This can be used to make particles disappear when colliding, rather
than bouncing around or sticking to surfaces.

This is useful for rain particles which should not be able to go
through floors/ceilings, but shouldn't stick to surfaces either.
2022-08-19 22:32:19 +02:00
Yuri Sizov
96ba6e8cf9
Merge pull request #64595 from mhilbrunner/ergo-proxy
Unexpose ProxyTexture
2022-08-19 20:42:27 +03:00
Yuri Sizov
7895a66cf2
Merge pull request #64334 from YuriSizov/core-bind-property-revert-methods
Make `property_*_revert` methods multilevel and expose them for scripting
2022-08-19 20:41:41 +03:00
Silc Renew
dded7c72c1 Make cubic_interpolate() consider key time in animation 2022-08-19 14:48:37 +09:00
Max Hilbrunner
92bdeb7eb5 Unexpose ProxyTexture 2022-08-19 03:01:47 +02:00
Max Hilbrunner
420a8c888e
Merge pull request #63950 from bruvzg/menu_bar3
Implement MenuBar control to wrap Popup menus or native menu, use native menu for editor.
2022-08-19 01:24:24 +02:00
Clay John
17ca5b913c
Merge pull request #64156 from bruvzg/sys_msdf
Allow MSDF rendering for system fonts, fix crash on loading damaged / unsupported font files.
2022-08-18 14:58:57 -06:00
Clay John
547e64d226
Merge pull request #63999 from QbieShay/qbie/vs-qol
Quality of life visual shaders updates
2022-08-18 14:47:23 -06:00
bruvzg
8c56a7416b
Implement MenuBar control to wrap PopupMenus or native menu, use native menu for editor. 2022-08-18 22:25:44 +03:00
RedMser
c25b8f2876 Remove unintentional PROPERTY_USAGE_INTERNAL
The flag only matters for property definition,
but was also used in _validate_property a lot.
2022-08-18 16:25:00 +02:00
RedMser
83f2723893 Fix some property validation not been refactored 2022-08-18 16:24:15 +02:00