Commit graph

4181 commits

Author SHA1 Message Date
Rémi Verschelde
af76fb4567
Merge pull request #63486 from TokageItLab/init-poses 2022-08-22 17:32:02 +02:00
Micky
6aa4c9c77a Restore ability to drag 'n' drop Mesh to Viewport 2022-08-20 16:39:44 +02: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
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
Yuri Sizov
480586899a
Merge pull request #63358 from YuriSizov/control-simplify-enhance-toolbar
Improve editor toolbar for `Control` nodes
2022-08-19 00:46:46 +03:00
Hugo Locurcio
693b933b7f
Decrease editor shadow maximum distance to match DirectionalLight3D default
This improves shadow texel density, leading to improved visual quality
(and higher performance in large scenes, as fewer objects will be
included in the shadow map).
2022-08-18 21:58:55 +02: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
kobewi
fdab23163f Unify node casing adjustment 2022-08-18 14:08:40 +02:00
Silc Renew
b27fe6452d add init bone poses 2022-08-18 18:41:37 +09:00
Yuri Sizov
980f5f32f4 Make property_*_revert methods multilevel and expose them for scripting 2022-08-18 00:03:53 +03:00
Yuri Sizov
7a60cc7737 Improve editor toolbar for Control nodes 2022-08-16 17:36:16 +03:00
Aaron Franke
4396f03b70
Rename EditorPropertyShaderMode to EditorPropertyVisualShaderMode 2022-08-15 14:39:53 -05:00
Yuri Rubinsky
22df2c527b Implement coloring for disabled branches in the shader editor 2022-08-14 13:57:26 +03:00
Haoyu Qiu
d5a559abc2 Fix crash when loading Animation Library after reloading a scene 2022-08-14 18:50:42 +08:00
Clay John
368446de55
Merge pull request #63582 from KoBeWi/power_shader
Improvements to shader editor
2022-08-11 12:45:33 -06:00
kobewi
e06cd2742f Add missing properties to default theme 2022-08-11 14:15:04 +02:00
Rémi Verschelde
11abffbf12
Merge pull request #64215 from Calinou/editor-allow-numpad-zoom-shortcuts 2022-08-10 16:31:57 +02:00
Rémi Verschelde
cf95056c91
Merge pull request #63245 from V-Sekai/animation_editor_read_only 2022-08-10 15:26:21 +02:00
Hugo Locurcio
ccf088b40b
Allow using numpad for zoom shortcuts in the 2D/code editors
This behavior is consistent with GIMP.
2022-08-10 15:07:47 +02:00
Rémi Verschelde
d9d5990c51
Merge pull request #64034 from DarkKilauea/fix-nav-region-gizmo 2022-08-08 22:37:00 +02:00
Rémi Verschelde
660828e771
Merge pull request #63253 from V-Sekai/disable_sprite_conversion_on_foreign_nodes 2022-08-08 16:27:38 +02:00
Rémi Verschelde
76391a091e
Merge pull request #64070 from Calinou/3d-editor-remove-alt-fov-adjustment 2022-08-08 11:59:17 +02:00
Rémi Verschelde
bc81c02fe1
Merge pull request #62571 from Calinou/gpuparticlescollisionsdf3d-add-bake-mask 2022-08-08 10:18:11 +02:00
Rémi Verschelde
335b51be70
Merge pull request #64050 from pulawskig/master 2022-08-08 09:00:13 +02:00
Hugo Locurcio
4f233300b6
Remove FOV adjustment with Alt + mouse wheel in the 3D editor
This shortcut got in the way when using the Maya navigation scheme,
and also when using the slow freelook modifier (regardless of
navigation scheme).
2022-08-07 19:45:54 +02:00
Rémi Verschelde
f754dd20be
Merge pull request #62454 from Geometror/reflect-refract-vec2-vec4
Allow for vec2/vec4 to be used in reflect and refract
2022-08-07 19:16:05 +02:00
Hendrik Brucker
b8d5f4bdd5 Allow vec2 and vec4 for reflect and refract 2022-08-07 18:03:16 +02:00
Grzegorz Puławski
ba58491ca7 Fix axis snapping of CollisionPolygon2d's newly created vertex 2022-08-07 15:10:28 +02:00
Josh Jones
92c40bcf32 Fix NavigationRegion3D gizmo's odd visual behavior 2022-08-06 23:54:57 -07:00
Rémi Verschelde
c80540f9a2
Merge pull request #63700 from YeldhamDev/no_methods_to_filter_pal
Hide method filter bar when selecting a doc in the Script editor
2022-08-06 00:39:30 +02:00
Rémi Verschelde
d100c2d59f
Merge pull request #63776 from fire-forge/shapecast2d
Add ShapeCast2D editor handle and improve debug drawing
2022-08-06 00:27:41 +02:00
Hakim
60677c4e95 Remove rect_ prefix from control properties when keyframing 2022-08-05 16:04:51 +02:00
Hugo Locurcio
db22b7ded0
Rename shader parameter uniform setter/getter methods for consistency
`shader_uniform` is now consistenly used across both per-shader
and per-instance shader uniform methods. This makes methods easier
to find in the class reference when looking for them.
2022-08-04 23:17:06 +02:00
Yuri Sizov
ebcfd13c30 Add text overrun behavior for the theme type selector 2022-08-04 19:07:10 +03:00
Hugo Locurcio
ecefb5505a
Rename visual shader editor setting category for proper capitalization 2022-08-03 11:38:29 +02:00
Patrick Exner
fe5901310e Add spatial built-ins (camera-pos, object-pos, camera-eye etc.) 2022-08-02 17:30:41 +02:00
Rémi Verschelde
0f9e84feab
Merge pull request #50614 from foxydevloper/clarify-group-tooltip
Improve tooltips for grouping/ungrouping nodes
2022-08-02 15:56:27 +02:00
Yuri Sizov
86798d36db Remove CustomPropertyEditor completely 2022-08-01 22:57:05 +03:00
Yuri Sizov
1c9ba5ef3e Remove excessive editor/property_editor.h includes 2022-08-01 17:19:11 +03:00
FireForge
7cfa9ae539 Improve ShapeCast2D editor and debug drawing
- Rename RayCast2DEditorPlugin to Cast2DEditorPlugin and make it also support editing ShapeCast2D.
- Apply RayCast2D debug drawing improvements from #46675 to ShapeCast2D.
2022-07-31 17:47:36 -05:00
Rémi Verschelde
8ad80f0547
Merge pull request #63737 from YuriSizov/editorresourceconversionpluginactomy 2022-07-31 23:52:38 +02:00
MinusKube
7d9a5d79e6 Find a better solution for the script editor member list sometimes not being updated 2022-07-31 21:43:11 +02:00
Yuri Sizov
9f55bd971e Extract EditorResourceConversionPlugin into its own source files and clean up editor includes 2022-07-31 21:14:15 +03:00
foxydevloper
1ff9a09e2c Improve tooltips for grouping/ungrouping nodes 2022-07-31 10:56:32 -04:00
Rémi Verschelde
66d1bb84c3
Merge pull request #63697 from YeldhamDev/script_elements_fix
Fix elements not being shown on first selected script/doc
2022-07-31 01:14:57 +02:00
Michael Alexsander
c86cceb423 Hide method filter bar when selecting a doc in the Script editor 2022-07-30 20:07:46 -03:00
Michael Alexsander
c9fe780239 Fix elements not being shown on first selected script/doc 2022-07-30 19:33:58 -03:00
SnailRhymer
0ac971c0d3 Fix default values for rotation snapping in canvas_item_editor_plugin.cpp
Default values for snap_rotation_step and snap_rotation_offset were transposed. Swap them back.
2022-07-30 20:05:24 +01:00
Rémi Verschelde
cca072aa86
Merge pull request #63679 from PrecisionRender/master
Fix `ShapeCast3D` creating runtime shape in editor
2022-07-30 18:22:52 +02:00
PrecisionRender
2f46749f4e Fix ShapeCast3D creating runtime shape in editor 2022-07-30 10:21:53 -05:00
bruvzg
18aad2807e
Fix font preview plugin not using editor scale. 2022-07-29 23:42:09 +03:00
Rémi Verschelde
15a02c49be
Merge pull request #61647 from KoBeWi/SaverResource 2022-07-29 22:30:51 +02:00
kobewi
c3606cb5f3 Swap arguments of ResourceSaver.save() 2022-07-29 19:53:09 +02:00
Rémi Verschelde
6ba7dacf6b
Merge pull request #63415 from ajreckof/expose_tilemap_custom_data_methods
Expose TileMap methods related to the name of custom data layers
2022-07-29 19:43:55 +02:00
Rémi Verschelde
ba3734e69a
Merge pull request #63603 from aaronfranke/editor-paths
Move editor paths into the EditorPaths class
2022-07-29 19:31:59 +02:00
Rémi Verschelde
7199314eb3
Merge pull request #63595 from reduz/remove-signal-connect-binds
Remove Signal connect binds
2022-07-29 18:10:39 +02:00
Aaron Franke
ac870ab1c8
Move editor paths into the EditorPaths class 2022-07-29 11:07:30 -05:00
Juan Linietsky
d4433ae6d3 Remove Signal connect binds
Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind().
Changed all uses of it to Callable.bind()
2022-07-29 16:26:13 +02:00
ajreckof
8433ad5353 expose TileMap methods related to the name of custom data layers 2022-07-29 15:05:42 +02:00
Rémi Verschelde
8b454f8b41
Merge pull request #62601 from smix8/navigation_3d_debug_4.x 2022-07-29 12:29:32 +02:00
Rémi Verschelde
9869182e8a
Merge pull request #62629 from linkpy/master
Make the alternative tile control correctly handle right-click dragging.
2022-07-29 10:14:42 +02:00
smix8
c394ea518e Add more detailed Navigation Debug Visualization
- Adds more customization options to ProjectSettings.
- Displays navregion edge connections and navigation polygon edges in editor and at runtime.
- Majority of debug code moved from SceneTree to NavigationServer.
- Removes the irritating debug MeshInstance child node from NavigationRegion3D and replaces it with direct RenderingServer API.
2022-07-29 09:58:41 +02:00
Rémi Verschelde
7c93373008
Merge pull request #63161 from PrecisionRender/master
Add `ShapeCast3D` node
2022-07-29 08:07:13 +02:00
Estelle Linkpy Reid
d5926b435e Make the alternative tile control correctly handle right-click dragging. 2022-07-29 03:11:08 +02:00
Rémi Verschelde
14d021287b
Merge pull request #63049 from Faless/mp/4.x_as_module 2022-07-28 20:46:31 +02:00
Rémi Verschelde
8e0f328a80
Merge pull request #59840 from Calinou/renderingserver-global-uniform-rename 2022-07-28 20:34:17 +02:00
PrecisionRender
8cbb9b8b0a Add ShapeCast3D node 2022-07-28 12:08:42 -05:00
Hugo Locurcio
4b42379c8f
Rename RenderingServer global shader uniform methods to be more explicit
The `global_shader_uniform` name is longer, but it makes it much
easier to find the methods when searching in the class reference.
2022-07-28 18:46:59 +02:00
kobewi
beabbad390 Improvements to shader editor 2022-07-28 18:28:38 +02:00
Hugo Locurcio
e24029edc3
Allow changing mipmap LOD bias when FSR 1.0 scaling is not used
Mipmap LOD bias can be useful to improve the appearance of distant
textures without increasing anisotropic filtering (or in situations
where anisotropic filtering is not effective).

`fsr_mipmap_bias` was renamed to `texture_mipmap_bias` accordingly.
The property hint now allows for greater precision as well.
2022-07-28 17:51:13 +02:00
Rémi Verschelde
2e05cc3314
Merge pull request #58361 from V-Sekai/tileset_editor_selection
Fix tileset editor visiblity and selection context
2022-07-28 17:31:21 +02:00
Rémi Verschelde
7281f0f238
Merge pull request #62350 from Valeryn4/fix_animation_state_machine
Validate AnimationNode name in AnimationStateMachine
2022-07-28 10:39:58 +02:00
Valerii
c28efd6c95 Validate AnimationNode name in AnimationStateMachine
Fixes #60959.
2022-07-28 10:16:45 +02:00
Rémi Verschelde
199ea349f5
Merge pull request #57698 from bluenote10/feature/rename_translated_to_translated_local 2022-07-28 10:03:07 +02:00
Rémi Verschelde
72e9122514
Merge pull request #63558 from TokageItLab/skel-validator 2022-07-28 09:25:45 +02:00
Rémi Verschelde
422725cffc
Merge pull request #56597 from V-Sekai/material_drag_and_drop
Add drag-and-drop support for materials in 3D Instances
2022-07-28 09:22:38 +02:00
Silc 'Tokage' Renew
3b89bf901a Make BoneMapper validation stricter 2022-07-28 07:27:41 +09:00
Rémi Verschelde
ed61fb2a8b
Merge pull request #63138 from TokageItLab/normalize-position-track
Add position track normalization to importer retarget
2022-07-27 16:49:18 +02:00
Rémi Verschelde
cc5135959b
Merge pull request #62973 from bruvzg/sysfont_support 2022-07-27 13:38:30 +02:00
Rémi Verschelde
f3fbb157ca
Merge pull request #63121 from aaronfranke/editor-export-split 2022-07-27 11:19:40 +02:00
Hugo Locurcio
ad9a8e70f4
Merge pull request #62888 from Calinou/editor-material-preview-improve-appearance
Improve appearance of the material editor preview
2022-07-27 00:25:12 +02:00
Rémi Verschelde
222e489dfd
Merge pull request #63496 from groud/fix_tile_set_not_saving
Fix TileSet not loading correctly when embedded in a scene
2022-07-26 18:27:05 +02:00
Gilles Roudière
8da2710911 Fix TileSet not loading correctly when embedded in a scene 2022-07-26 17:39:35 +02:00
Aaron Franke
e53ae13178
Split up editor export code into multiple files 2022-07-26 08:28:19 -05:00
Silc Renew
dde235ad82 add position track normalization & post process key value for retarget 2022-07-26 18:48:08 +09:00
Fabio Alessandrelli
ca7d572908 [Net] Modularize multiplayer, expose MultiplayerAPI to extensions.
- RPC configurations are now dictionaries.
- Script.get_rpc_methods renamed to Script.get_rpc_config.
- Node.rpc[_id] and Callable.rpc now return an Error.
- Refactor MultiplayerAPI to allow extension.
- New MultiplayerAPI.rpc method with Array argument (for scripts).
- Move the default MultiplayerAPI implementation to a module.
2022-07-26 09:31:12 +02:00
bruvzg
36ef8f29dc
Implement support for loading system fonts on Linux, macOS / iOS and Windows. 2022-07-26 08:38:05 +03:00
Rémi Verschelde
49b0aa93e3
Merge pull request #63424 from Chaosus/shader_preprocessor_inc_fix 2022-07-25 14:56:06 +02:00
Yuri Rubinsky
be3fb7a216 Fix errors when using built-ins in shaderinc 2022-07-25 12:33:04 +03:00
Rémi Verschelde
90019676b0 Code quality: Fix header guards consistency
Adds `header_guards.sh` bash script, used in CI to validate future
changes. Can be run locally to fix invalid header guards.
2022-07-25 11:17:40 +02:00
Rémi Verschelde
3084a48ace
Merge pull request #63219 from reduz/implement-vector4-projection 2022-07-25 11:13:27 +02:00
reduz
455c06ecd4 Implement Vector4, Vector4i, Projection
Implement built-in classes Vector4, Vector4i and Projection.

* Two versions of Vector4 (float and integer).
* A Projection class, which is a 4x4 matrix specialized in projection types.

These types have been requested for a long time, but given they were very corner case they were not added before.
Because in Godot 4, reimplementing parts of the rendering engine is now possible, access to these types (heavily used by the rendering code) becomes a necessity.

**Q**: Why Projection and not Matrix4?
**A**: Godot does not use Matrix2, Matrix3, Matrix4x3, etc. naming convention because, within the engine, these types always have a *purpose*. As such, Godot names them: Transform2D, Transform3D or Basis. In this case, this 4x4 matrix is _always_ used as a _Projection_, hence the naming.
2022-07-23 14:00:01 +02:00
Rémi Verschelde
a5bc65bbad
Merge pull request #63265 from reduz/stream-bpm-support
Implement BPM support in AudioStream files.
2022-07-23 11:21:14 +02:00
Yuri Rubinsky
5705825d55 Fix clearing errors indication in the shader editor 2022-07-23 11:32:04 +03:00
Yuri Rubinsky
6d992abb54 Fix some errors after shader preprocessor PR 2022-07-23 09:38:59 +03:00
reduz
d1ddee2258 Implement BPM support
Based on #62896, only implements the BPM support part.

* Implements BPM support in the AudioStreamOGG/MP3 importers.
* Can select BPM/Bar Size and total beats in a song file, as well as edit looping points.
* Looping is now BPM aware
* Added a special importer UI for configuring this.
* Added a special preview showing the audio waveform as well as the playback position in the resource picker.
* Renamed `AudioStream::instance` to `instantiate` for correctness.
2022-07-23 07:31:17 +02:00
Rémi Verschelde
fe929d4787
Merge pull request #62513 from reduz/shader_preprocessor_remake 2022-07-23 00:02:33 +02:00
Rémi Verschelde
e5df1e65f9
Merge pull request #62581 from Guh-Feng/Color-Picker-Update 2022-07-22 23:46:27 +02:00
reduz
f649678402 Clean up Shader Preprocessor
* Moved preprocessor to Shader and ShaderInclude
* Clean up RenderingServer side
* Preprocessor is separate from parser now, but it emits tokens with include location hints.
* Improved ShaderEditor validation code
* Added include file code completion
* Added notification for all files affected by a broken include.
2022-07-22 22:53:03 +02:00
Yuri Roubinsky
7b94603baa Adding shader preprocessor support
Co-authored-by: TheOrangeDay <6472143+TheOrangeDay@users.noreply.github.com>
2022-07-22 22:51:57 +02:00