Commit Graph

2402 Commits

Author SHA1 Message Date
jfons 3841a64703 Rename all gizmo classes, using the 4.0 node names. 2020-04-07 10:02:18 +02:00
Yuri Roubinsky e0a9879ce4
Merge pull request #37623 from Chaosus/vs_fix_keyword_name
Adds warning to the uniform name in visual shader if its equal to keyword
2020-04-06 14:15:20 +03:00
Yuri Roubinsky 8dfe6716ec Adds warning to the uniform name in visual shader if its equal to keyword 2020-04-06 12:29:50 +03:00
Rémi Verschelde 32d9d6e7ff
Merge pull request #37621 from dankan1890/autoslice_fix
Fixed TextureRegion autoslice issue.
2020-04-06 11:28:18 +02:00
dankan1890 671e97d254 TextureRegion: fixed Autoslice not created/updated properly. 2020-04-06 10:36:59 +02:00
Rémi Verschelde 6b07c72d76
Merge pull request #37556 from KoBeWi/kill_get_index
Remove Node.get_position_in_parent()
2020-04-06 09:44:38 +02:00
Tomasz Chabora c1023157eb Remove Node.get_position_in_parent() 2020-04-06 01:19:20 +02:00
Vasiliy 48b144afb7 Add "preview_on_sphere" setting of material editor plugin 2020-04-04 12:36:05 +03:00
qarmin 7d19939203 Removed duplicated add_child 2020-04-03 19:48:40 +02:00
Rémi Verschelde 59d44ee872
Merge pull request #37505 from YeldhamDev/viewcont_rename
Rename ViewportContainer to SubViewportContainer
2020-04-03 15:53:35 +02:00
Rémi Verschelde f1e943f6ce
Merge pull request #35720 from Calinou/remove-request-docs-button
Remove Request Docs button in the script editor due to various issues
2020-04-02 16:45:01 +02:00
Hugo Locurcio 2f6f029a75 Remove Request Docs button in the script editor due to various issues
The Request Docs button is partly responsible for layout overflow
issues on narrow displays, such as #31133.

It also tended to attract spam and low-effort issues that were
difficult to act upon. A "Send Docs Feedback" menu option has been added
to replace it.
2020-04-02 14:07:03 +02:00
lupoDharkael 95a1400a2a Replace NULL with nullptr 2020-04-02 13:38:00 +02:00
Michael Alexsander 0c6851ae53 Rename ViewportContainer to SubViewportContainer 2020-04-01 16:11:44 -03:00
Rémi Verschelde 0a2fa4d892 Fix more -Wmaybe-uninitialized warnings with target=release_debug
I have no idea why those don't get triggered in target=debug builds.

Fixes #37461.
2020-03-31 13:52:42 +02:00
Rémi Verschelde f3c74afd28
Merge pull request #37436 from akien-mga/doc-node-renames
doc: Update classref with node renames
2020-03-30 20:32:11 +02:00
Rémi Verschelde eaaee63b62 doc: Update classref with node renames
A few extra renames for classes which were missed in last week's PRs.
2020-03-30 18:23:02 +02:00
Rémi Verschelde cd4e46ee65 SCons: Format buildsystem files with psf/black
Configured for a max line length of 120 characters.

psf/black is very opinionated and purposely doesn't leave much room for
configuration. The output is mostly OK so that should be fine for us,
but some things worth noting:

- Manually wrapped strings will be reflowed, so by using a line length
  of 120 for the sake of preserving readability for our long command
  calls, it also means that some manually wrapped strings are back on
  the same line and should be manually merged again.

- Code generators using string concatenation extensively look awful,
  since black puts each operand on a single line. We need to refactor
  these generators to use more pythonic string formatting, for which
  many options are available (`%`, `format` or f-strings).

- CI checks and a pre-commit hook will be added to ensure that future
  buildsystem changes are well-formatted.
2020-03-30 09:05:53 +02:00
Tomasz Chabora 37ffb40047 Properly handle node remove via undo 2020-03-29 19:59:04 +02:00
Juan Linietsky a6f3bc7c69 Renaming of servers for coherency.
VisualServer -> RenderingServer
PhysicsServer -> PhysicsServer3D
Physics2DServer -> PhysicsServer2D
NavigationServer -> NavigationServer3D
Navigation2DServer -> NavigationServer2D

Also renamed corresponding files.
2020-03-27 15:21:27 -03:00
Rémi Verschelde d1acbbce7f Rename more 2D and 3D nodes to follow convention
Rename editor plugins to match the new node names.
2020-03-27 16:26:34 +01:00
Juan Linietsky eaae4b6408 Renamed 2D and 3D nodes to make their types explicit
Fixes #30736.
2020-03-27 14:54:04 +01:00
Mateo Kuruk Miccino f387b9b4f4 Multiple changes to DisplayServerX11
- Travis: Change x11 to linuxbsd
- SCons: Change x11 plataform to linuxbsd
- Plugins: Remove ; to avoid fallthrough warning
- DisplayServerX11: Implement set_icon
- DisplayServerX11: Fix X11 bug when a window was erased from windows
  map, all the changes from that erased windows are sending to the main
  window
- DisplayServerX11: Reorder create_window commands
- DisplayServerX11: Change every Size2 to Size2i and Rect2 to Rect2i
  where it belongs

+ More X11 fixes which have been integrated directly back into reduz's
original commits while rebasing the branch.
2020-03-26 15:49:54 +01:00
Juan Linietsky b3080bc2f4 Popups have also been converted to windows
Controls using the old modal API have been replaced to use popups.
2020-03-26 15:49:44 +01:00
Juan Linietsky c7b4dcae2f Open sub-windows as embedded if the OS does not support them 2020-03-26 15:49:43 +01:00
Juan Linietsky 441f1a5fe9 Popups are now windows also (broken!) 2020-03-26 15:49:42 +01:00
Juan Linietsky 4758057f20 Working multiple window support, including editor 2020-03-26 15:49:40 +01:00
Juan Linietsky 8e6960a69e Refactored input, goes all via windows now.
Also renamed Input to InputFilter because all it does is filter events.
2020-03-26 15:49:39 +01:00
Juan Linietsky 9e08742de8 Added a Window node, and made it the scene root.
Still a lot of work to do.
2020-03-26 15:49:38 +01:00
Juan Linietsky f8a79a97c7 Effective DisplayServer separation, rename X11 -> LinuxBSD 2020-03-26 15:49:34 +01:00
Juan Linietsky 4396e98834 Refactored Input, create DisplayServer and DisplayServerX11 2020-03-26 15:49:32 +01:00
Yuri Roubinsky 1358febfa1
Merge pull request #37287 from Chaosus/vs_sky
Added sky shader mode to visual shaders
2020-03-26 08:38:19 +03:00
Yuri Roubinsky 898b843718 Added sky shader mode to visual shaders 2020-03-25 19:04:42 +03:00
Andrea Catania 277696d6c5 Fixed IK rotation issue 2020-03-24 10:06:24 +01:00
Rémi Verschelde ed9a0d0484
Merge pull request #37179 from clayjohn/VULKAN-sky-shader
Implement Sky Shaders
2020-03-22 20:03:35 +01:00
clayjohn 61a74739ca Working sky shader implementation 2020-03-21 20:43:44 -07:00
Rémi Verschelde 7ed9da0a54
Merge pull request #37161 from simpuid/positon-gizmo-fix
Fixes transform gizmo position when node has default transform
2020-03-21 15:31:47 +01:00
simpuid 19825436d4 Fixes transform gizmo position when node has default transform
Changes made:
* Added dirty bit for SpatialEditorSelectedItem's last_xform
* SpatialEditorViewport checks that dirt bit too before skipping the selection
2020-03-21 18:31:46 +05:30
johan 1c02906a6f Editor 2D: Change pixel alignment strategy, fix jittering in high zoom
Alignment of scene pixels on screen pixel ensure a crisp rendering of small features (such as text). Unfortunately, alignment of top left pixel on screen adds a lot of jittering when zooming at high zoom factor.

This change allow to snap the top left scene pixel on the closest screen pixel (not only the top-left most), and we do so only when the scale factor is an integer.
2020-03-18 12:37:14 -04:00
Rémi Verschelde cb282c6ef0 Style: Set clang-format Standard to Cpp11
For us, it practically only changes the fact that `A<A<int>>` is now
used instead of the C++03 compatible `A<A<int> >`.

Note: clang-format 10+ changed the `Standard` arguments to fully
specified `c++11`, `c++14`, etc. versions, but we can't use `c++17`
now if we want to preserve compatibility with clang-format 8 and 9.
`Cpp11` is still supported as deprecated alias for `Latest`.
2020-03-17 07:36:24 +01:00
Rémi Verschelde 2a49798c7b
Merge pull request #36970 from JFonS/fix_viewports_update
Update all editor viewports after settings changes
2020-03-14 23:46:58 +01:00
JFonS 55b478afd9 Update all editor viewports after settings changes 2020-03-14 20:47:12 +01:00
Hugo Locurcio e90beade15 Tweak the built-in script naming for resources with custom names
This makes the script name appear before the scene file name,
which ensures it's always visible even if the list of scripts is too
narrow to display the full name.

This only impacts built-in scripts with custom resource names.
Unnamed resources will still use `<scene_file>::<id>` naming
in the list of scripts.
2020-03-13 15:20:42 +01:00
Rémi Verschelde 951ecc4f79
Merge pull request #36518 from Janglee123/no-underlined-keywords
Removed underlining of not clickable symbols
2020-03-12 22:24:43 +01:00
janglee 50a570c9c1 Removed underlining for not clickable symbols 2020-03-11 08:57:21 +00:00
JFonS a0af3094b4 Fix rotation gizmo for empty Spatials
The AABB for an empty Spatial has 0 size, since the stored and
compared Transform was scaled by the AABB size, it would completely
destroy the rotation information. If there is no rotation
information, the gizmo doesn't update when the rotation changes.
2020-03-10 16:23:22 +01:00
Rémi Verschelde 1500e40ccf
Merge pull request #36887 from MCrafterzz/relativeSnap
Made snap relative work on rotation as well
2020-03-10 10:17:42 +01:00
Fabio Alessandrelli 95c4ba80c5 Fix "deploy with remote debug" editor option.
The line to update the option was missing (rendering it useless).
Of course the only one I didn't know how to test was broken.
2020-03-10 04:06:19 +01:00
Rémi Verschelde 478337c412
Merge pull request #36751 from Faless/debugger/threads_and_profilers
ScriptDebugger refactor, threading, profilers.
2020-03-09 19:08:07 +01:00
Marcus Elg 97a07bada7 Made snap relative work on rotation as well 2020-03-09 17:00:47 +01:00
Rémi Verschelde af015f79d3
Merge pull request #36917 from volzhs/cancel-snap-setting
Update snap setting only with OK
2020-03-09 12:19:56 +01:00
Rémi Verschelde 1f37c8e048
Merge pull request #36914 from guilhermefelipecgs/fix_check_view_information
Fix the VIEW_INFORMATION checkbox not being selected (visually)
2020-03-09 12:17:07 +01:00
Rémi Verschelde e162c07af9
Merge pull request #36920 from Faless/debugger/more_instances
Move Debug menu logic to DebuggerEditorPlugin, allow 4 debug instances
2020-03-09 12:01:14 +01:00
Fabio Alessandrelli bfc1b76803 Allow running/debugging up to 4 instances. 2020-03-09 09:43:54 +01:00
jfons 7055a926ff Add rotation widget to 3D viewport 2020-03-08 23:38:29 +01:00
Fabio Alessandrelli 4d623b70d7 Move Debug menu logic to DebuggerEditorPlugin 2020-03-08 22:57:48 +01:00
volzhs 667a981d4d Update snap setting only with OK
restore previous values with cancel
2020-03-09 04:31:11 +09:00
Guilherme Felipe 126cec41e6 Fix the VIEW_INFORMATION checkbox not being selected
Generated id of "Display Advanced..." was in conflict with "View Information"
2020-03-08 15:34:41 -03:00
Fabio Alessandrelli 540ca05a80 Threaded networking for editor debugger. 2020-03-08 12:16:09 +01:00
Rémi Verschelde fdda39a506 Signals: Don't pass default binds to EditorProperty property_changed
This was done by mistake in #36758, but it's not necessary and actual
causes a bug.

`property_changed` is only emitted via `emit_changed()`, which already
has default values for `p_field` and `p_changing`.

Also reverted to using `String` for now to be on the safe side, even if
it's inconsistent with `emit_changed()`. I had only changed it
partially in #36758 so it was inconsistent. It probably does make sense
to port `EditorInspector` and related property editors to use
`StringName` where relevant, but that's for a dedicated PR.

Fixes #36799.
2020-03-05 15:35:44 +01:00
Rémi Verschelde 7c9e15238e
Merge pull request #36739 from Calinou/improve-giprobe-editor-label
Improve the GIProbe editor contextual label
2020-03-04 22:41:25 +01:00
Rémi Verschelde 48ed841dd0 Signals: Fix some regressions from #36426
- Fix `callable_mp` bindings to methods which used to have default
  arguments passed to `bind_method`. We now have to re-specify them
  manually when connecting.
- Re-add `GroupsEditor::update_tree` binding.
- Misc code quality changes along the way.
2020-03-03 11:44:06 +01:00
Hugo Locurcio 46bc1a7c3f
Improve the GIProbe editor contextual label
- Change the label color depending on the estimated performance
  (green = fast, yellow = average, red = slow).
- Use the Unicode multiplication symbol.
- Make the label translatable.
2020-03-02 22:09:38 +01:00
Rémi Verschelde e2b66cacf7
Merge pull request #18020 from bruvzg/input_fix_non_latin_and_add_hw_scancodes
Fix non-latin layout scancodes on Linux, adds access to physical scancodes.
2020-03-01 23:00:42 +01:00
Rémi Verschelde cb91f8d971
Merge pull request #36406 from nathanwfranke/revert-fix-signal-errors
Partial revert "Fix two signal errors"
2020-02-29 12:11:53 +01:00
Mateo Dev .59 b8f08b42e7 Signals: Fix signals error prints for the new signal system 2020-02-28 14:24:09 +01:00
Rémi Verschelde f742dabafe Signals: Manually port most of remaining connect_compat uses
It's tedious work...

Some can't be ported as they depend on private or protected methods
of different classes, which is not supported by callable_mp (even if
it's a class inherited by the current one).
2020-02-28 14:24:09 +01:00
Rémi Verschelde 01afc442c7 Signals: Port connect calls to use callable_mp
Remove now unnecessary bindings of signal callbacks in the public API.
There might be some false positives that need rebinding if they were
meant to be public.

No regular expressions were harmed in the making of this commit.
(Nah, just kidding.)
2020-02-28 14:24:09 +01:00
Rémi Verschelde 4f64f3401a
Merge pull request #36388 from AndreaCatania/some_renames
Rename Navigation{Mesh,Polygon}Instance and PlaneShape for clarity
2020-02-28 09:15:38 +01:00
Andrea Catania 483994601d Renamed NavigationPolygonInstance to NavigationRegion2D 2020-02-28 08:28:53 +01:00
Rémi Verschelde 2d904d2f80
Merge pull request #36232 from Calinou/add-soft-line-length-guideline
Add a soft line length guideline to the script editor
2020-02-27 21:10:42 +01:00
Rémi Verschelde eaf909dcf9
Merge pull request #36490 from Calinou/assetlib-error-version-compatibility
Mention version compatibility when there are no results in the assetlib
2020-02-27 21:08:39 +01:00
Rémi Verschelde 38c78a9ab6
Merge pull request #36333 from Calinou/decrease-script-editor-split-width
Decrease the script editor's default split width to 70
2020-02-27 20:54:23 +01:00
Andrea Catania 3b64ecbc4b Renamed NavigationMeshInstance to NavigationRegion 2020-02-27 17:42:53 +01:00
Rémi Verschelde ac446570d6
Merge pull request #36545 from nathanwfranke/syntax-highlight-int-types
Fix autocomplete and highlighting for new integer types
2020-02-27 14:20:10 +01:00
Yuri Roubinsky 7aaad99afb Place paste after copy in new popup menu in visual shader
+ renamed _on_nodes_delete to _delete_nodes
2020-02-27 13:55:41 +03:00
Yuri Roubinsky 2d548b4d1a Added popup menu for some actions in visual shaders 2020-02-27 12:54:26 +03:00
nathanwfranke 2dd498df70 Fix autocomplete and GDScript Highlighting for types
Types include new integer types and others
2020-02-26 16:13:28 -06:00
Hugo Locurcio 7348dfb5b7
Fix a typo in the "Create Single Convex Collision Sibling" option 2020-02-26 22:25:55 +01:00
Yuri Roubinsky 9cfd2ed564 Fix resizer icon color in VisualScripts/Shaders when graph headers is on 2020-02-26 17:48:58 +03:00
Yuri Roubinsky 1e8108310a Changed float type to int for INDEX visual shader input 2020-02-26 16:39:42 +03:00
Yuri Roubinsky 4a3d277623 Add support for integer type in visual shaders 2020-02-26 10:12:06 +03:00
Juan Linietsky 33b5c57199 Variant: Added 64-bit packed arrays, renamed Variant::REAL to FLOAT.
- Renames PackedIntArray to PackedInt32Array.
- Renames PackedFloatArray to PackedFloat32Array.
- Adds PackedInt64Array and PackedFloat64Array.
- Renames Variant::REAL to Variant::FLOAT for consistency.

Packed arrays are for storing large amount of data and creating stuff like
meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of
memory. That said, many users requested the ability to have 64 bits packed
arrays for their games, so this is just an optional added type.

For Variant, the float datatype is always 64 bits, and exposed as `float`.

We still have `real_t` which is the datatype that can change from 32 to 64
bits depending on a compile flag (not entirely working right now, but that's
the idea). It affects math related datatypes and code only.

Neither Variant nor PackedArray make use of real_t, which is only intended
for math precision, so the term is removed from there to keep only float.
2020-02-25 12:55:53 +01:00
bruvzg 1af06d3d46
Rename `scancode` to `keycode`.
Add `physical_keycode` (keyboard layout independent keycodes) to InputEventKey and InputMap.
Fix non-latin keyboard layout keycodes on Linux/X11 (fallback to physical keycodes).
2020-02-25 12:30:33 +02:00
Rémi Verschelde 15e6a82faf Signals: Fix invalid connections to missing callbacks
These bugs existed since those lines were added, so I assume that
their intended use is no longer relevant.
2020-02-23 23:48:44 +01:00
Hugo Locurcio 5dd851e849
Mention version compatibility when there are no results in the assetlib
This closes #36469.
2020-02-23 23:27:42 +01:00
nathanwfranke ad15edbc65 Partial revert "Fix two signal errors"
This partially reverts commit a31bc1b0ba.

Possible compatibility issues with #35864 that I am not sure about.

Do I need to change "connect" to "connect_compat"?
2020-02-23 15:04:45 -06:00
Rémi Verschelde 2cf6ac6c50 Replace FALLTHROUGH macro by C++17 [[fallthrough]]
This attribute is now part of the standard we target so we no longer
need compiler-specific hacks.

Also enables -Wimplicit-fallthrough for Clang now that we can properly
support it. It's already on by default for GCC's -Wextra.

Fixes new warnings raised by Clang's -Wimplicit-fallthrough.
2020-02-23 00:52:50 +01:00
Yuri Roubinsky 7c1415b99b
Merge pull request #36421 from Chaosus/vs_sort_custom_nods
Refactor node processing in visual shader member dialog
2020-02-21 21:34:03 +03:00
Yuri Roubinsky b78b37ed3f Refactor node processing in visual shader member dialog 2020-02-21 18:34:31 +03:00
Fabio Alessandrelli cbc450c0e5 Huge Debugger/EditorDebugger refactor. 2020-02-21 11:12:03 +01:00
Juan Linietsky 69c95f4b4c Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
Rémi Verschelde 353e2071d0
Merge pull request #36340 from nathanwfranke/fix-signal-errors
Fix two signal errors, remove unused break_request signals in profilers
2020-02-20 07:13:54 +01:00
nathanwfranke a31bc1b0ba Fix two signal errors
Update
2020-02-19 15:22:34 -06:00
janglee d3c580f0bc Make orthogonal view mode persistent in new scene
Fixes #36339.
2020-02-19 21:33:43 +05:30
Hugo Locurcio ac3c93077c
Decrease the script editor's default split width to 70
This also makes its value change to match the editor scale.
2020-02-18 23:00:38 +01:00
Juan Linietsky 3205a92ad8 PoolVector is gone, replaced by Vector
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are
sugar for `Vector<Type>`.
2020-02-18 10:10:36 +01:00
Hugo Locurcio 5c659dd399
Increase the width of the "Connections to method" dialog
This closes #36245.
2020-02-15 16:36:10 +01:00
Juan Linietsky 867d073b98 Changed logic and optimized ObjectID in ObjectDB and Variant, removed RefPtr. 2020-02-15 08:36:04 -03:00
Hugo Locurcio 3e4b508c3b
Add a soft line length guideline to the script editor
The default value is 80. The hard line length guideline's
default column has been moved to 100 to account for the new
soft line length guideline.

It can be disabled by setting its value to the same column as the
hard line length guideline.

This closes https://github.com/godotengine/godot-proposals/issues/347.
2020-02-15 03:02:40 +01:00
Rémi Verschelde 710d829886
Merge pull request #36044 from dreamsComeTrue/fix-replace-all-shortcut
Added 'Replace in files' functionality to text editors
2020-02-14 20:30:53 +01:00
Yuri Roubinsky b798e26e28 Restore cubemaps in visual shaders 2020-02-14 12:51:46 +03:00
Dominik 'dreamsComeTrue' Jasiński 4c80beab44 Added 'Replace in files' functionality to text editors
Fixes issue #31146
2020-02-13 23:45:05 +01:00
Yuri Roubinsky 7aad7df574 Restore drag&drop textures in visual shaders 2020-02-13 19:19:41 +03:00
Rémi Verschelde 386968ea97 Remove obsolete GLES3 backend
Due to the port to Vulkan and complete redesign of the rendering backend,
the `drivers/gles3` code is no longer usable in this state and is not
planned to be ported to the new architecture.

The GLES2 backend is kept (while still disabled and non-working) as it
will eventually be ported to serve as the low-end renderer for Godot 4.0.

Some GLES3 features might be selectively ported to the updated GLES2
backend if there's a need for them, and extensions we can use for that.

So long, OpenGL driver bugs!
2020-02-13 10:36:44 +01:00
Yuri Roubinsky bc647393ba Added virtual method to VisualShaderNodeCustom to enable high-end mark 2020-02-13 09:43:43 +03:00
Yuri Roubinsky 516cd821c0 Added high-end (Vulkan) label to some functions in visual shader 2020-02-12 23:17:00 +03:00
Juan Linietsky cf8c679a23 ObjectID converted to a structure, fixes many bugs where used incorrectly as 32 bits. 2020-02-12 14:24:54 -03:00
Michael Alexsander eeb972faef Fix problems with concave shapes in the TileSet editor 2020-02-11 18:31:25 -03:00
Juan Linietsky 2049dec79e Added normalmap guided roughness mipmap generator, and a global roughness limiter. 2020-02-11 12:16:01 +01:00
Juan Linietsky bed8980ca5 Re-implemented screen space ambient occlusion 2020-02-11 12:15:46 +01:00
Juan Linietsky bd364d1447 Auto exposure re-implemented in Vulkan 2020-02-11 12:14:23 +01:00
Yuri Roubinsky 171691aad9 [Vulkan] Add repeat flag to texture preview checkerboard background 2020-02-11 12:05:43 +01:00
Rémi Verschelde fff4240bb4 Fix code formatting issues and VS compilation
Also temporarily disable multicheck build so that we get a full build
even when there are style issues on Vulkan.

Fixes #33356.
2020-02-11 12:05:19 +01:00
Juan Linietsky da0457fa29 Several fixes to GIProbes 2020-02-11 12:04:56 +01:00
Juan Linietsky 6ee2f5e6b6 More GIProbe work and fixes 2020-02-11 12:03:49 +01:00
Juan Linietsky fb739f9da7 Fixed display menu visualizations. 2020-02-11 12:03:24 +01:00
Juan Linietsky acf0f6c8a7 GIProbes working. 2020-02-11 12:03:20 +01:00
Juan Linietsky dd3682e5fe Modernized default 3D material, fixes material bugs. 2020-02-11 12:01:24 +01:00
Juan Linietsky 6deffa62fb Several fixes to 3D rendering, and multimesh implementation. 2020-02-11 12:01:22 +01:00
Juan Linietsky 2d6a916835 Environment sky more or less working. 2020-02-11 12:01:05 +01:00
Juan Linietsky 449df8f688 Base 3D engine done, still untested, though. 2020-02-11 11:59:25 +01:00
Juan Linietsky 50e9befb88 Changes to material required to add custom shaders in RD renderer 2020-02-11 11:53:28 +01:00
Juan Linietsky e1b3444415 Bugfixes and ability to better specify filter and repeat modes everywhere.
Removes antialiased flag for draw_* methods.
2020-02-11 11:53:28 +01:00
Juan Linietsky 3f335ce3d4 Texture refactor
-Texture renamed to Texture2D
-TextureLayered as base now inherits 2Darray, cubemap and cubemap array
-Removed all references to flags in textures (they will go in the shader)
-Texture3D gone for now (will come back later done properly)
-Create base rasterizer for RenderDevice, RasterizerRD
2020-02-11 11:53:26 +01:00
Rémi Verschelde 12244c46ae
Merge pull request #36086 from KoBeWi/TOOL_MOVE_move
Allow to use arrow keys with TOOL_MOVE
2020-02-11 09:21:10 +01:00
Tomasz Chabora cfa9060f8b Fix selectable locked items 2020-02-11 00:01:10 +01:00
Tomasz Chabora 18918b4efa Allow to use arrow keys with TOOL_MOVE 2020-02-10 21:39:05 +01:00
Rémi Verschelde 78074fed8d
Merge pull request #36085 from YeldhamDev/rip_animationtreeplayer_press_f
Remove AnimationTreePlayer node
2020-02-10 21:12:10 +01:00
Michael Alexsander 021fdb1b58 Remove AnimationTreePlayer node 2020-02-10 16:25:50 -03:00
Gilles Roudière b66d45d986 Fixes a crash in the 2D editor 2020-02-10 18:27:13 +01:00
Andrea Catania e6be3f68da - Integrated NavigationServer and Navigation2DServer.
- Added Navigation Agents and Obstacles.
- Integrated Collision Avoidance.

This work has been kindly sponsored by IMVU.
2020-02-10 14:38:52 +01:00
Rémi Verschelde 8cd5102c65
Merge pull request #35704 from KoBeWi/free_the_nodes
Include locked nodes on selection list
2020-02-10 14:29:21 +01:00
Tomasz Chabora de77bda605 Include locked nodes on selection list 2020-02-10 13:59:24 +01:00
Rémi Verschelde 50e940129a Merge pull request #33815 from Calinou/assetlib-focus-search-shortcut
Make Ctrl+F focus the editor asset library's search field
2020-02-10 11:34:47 +01:00
Rémi Verschelde 37432587f9 Merge pull request #35787 from Calinou/editor-expose-create-single-convex-shape
Re-add a way to generate a single convex shape from the editor
2020-02-10 10:49:05 +01:00
Rémi Verschelde 0b9f0cd412 Merge pull request #36054 from Calinou/rebind-tilemap-editor-select-pick-tile
Change the Pick Tile and Select default shortcuts in the TileMap editor
2020-02-10 10:36:43 +01:00
Aaron Franke ef9b4ee2e2
Fix 2D CollisionShape controls pointing the wrong way
They now point down, matching Godot's 2D coordinate system.
2020-02-09 17:37:30 -05:00
Rémi Verschelde 8cb2de5243
Merge pull request #33451 from MCrafterzz/movementHandle
Added movement handles to 2D
2020-02-09 22:19:32 +01:00
Rémi Verschelde 9f9d6c6cc1
Merge pull request #35656 from ericrybick/35460-fix2
Use a new approach to fix bone pose override not being reset when IK animation is stopped.
2020-02-09 22:14:31 +01:00
Eric Rybicki bb0358dd8d Use a new approach to fix bone pose override not being reset when IK animation is stopped.
This reverts PR #35460 & commit 551c37167b.
2020-02-09 19:50:13 +01:00
Hugo Locurcio 88213b54ba
Change the Pick Tile and Select default shortcuts in the TileMap editor
The new default keys were chosen to match common graphics editing
software. A modifier is no longer required to use the Select tool,
making it faster to use.

This closes #34170.
2020-02-09 17:46:01 +01:00
Rémi Verschelde 23531207a5 Merge pull request #36008 from AndreaCatania/physical_bone_impr
Skeleton animates physical bones
2020-02-09 11:15:43 +01:00
Andrea Catania 557d38cad3 Fixed Skeleton Physical Bone generation 2020-02-09 09:41:18 +01:00
Hugo Locurcio 3e95b79b65
Update the zoom percentage when using Frame Selection in the 2D editor
This closes #36019.
2020-02-08 18:29:28 +01:00
Rémi Verschelde 6b42d83ff1
Merge pull request #35950 from Chaosus/vs_scalar_uniform_range
Implemented hint_range for VisualShaderNodeScalarUniform
2020-02-07 20:45:40 +01:00
Yuri Roubinsky 22ad83edae Implemented hint_range for VisualShaderNodeScalarUniform 2020-02-07 17:04:24 +03:00
MCrafterzz 812fea7ccd Changed transformation handles y arrow to match positive y 2020-02-07 09:07:46 +01:00
Yuri Roubinsky 0812f991f0
Merge pull request #35952 from Chaosus/shader_editor_enchance
Few enchancements for shader editor
2020-02-06 19:52:01 +03:00
Yuri Roubinsky 24368206ca Few enchancements for shader editor 2020-02-06 17:50:12 +03:00
Rémi Verschelde f003b3efaa
Merge pull request #35068 from akien-mga/containers-mouse-filter-pass
Use MOUSE_FILTER_PASS for all containers
2020-02-06 12:23:39 +01:00
Rémi Verschelde 6aaff5dc68
Merge pull request #35731 from timothyqiu/texture-region-gestures
Adds pan and zoom gestures to TextureRegion editor
2020-02-06 11:12:34 +01:00
Rémi Verschelde bdaca7f44b
Merge pull request #35918 from timothyqiu/script-views-min-height
Shortens minimum height of script editor
2020-02-05 16:27:45 +01:00
Marcel Admiraal 6d69cd40bd Add do..while(0) wrappers to macros without one.
- Add do..while(0) wrapper to ERR_FAIL_NULL macros.
- Add do..while(0) wrapper to ERR_FAIL_COND macros.
- Add do..while(0) wrapper to ERR_CONTINUE macros.
- Add do..while(0) wrapper to ERR_BREAK macros.
- Add do..while(0) wrapper to CRASH_COND macros.
- Add do..while(0) wrapper to ERR_FAIL macros.
- Add do..while(0) wrapper to ERR_PRINT macros.
- Add do..while(0) wrapper to WARN_PRINT macros.
- Add do..while(0) wrapper to WARN_DEPRECATED macros.
- Add do..while(0) wrapper to CRASH_NOW macros.
2020-02-05 11:19:12 +01:00
Marcel Admiraal f0db13502a Remove duplicate WARN_PRINT macro. 2020-02-05 11:13:24 +01:00
Haoyu Qiu 6785e199bb Shortens minimum height of script editor windows 2020-02-05 13:16:54 +08:00
Hugo Locurcio 90af009f2e
Re-add a way to generate a single convex shape from the editor
It was removed after the implementation of VHACD. Generating a single
shape can lead to better performance, so it may still be desired.

This also adds tooltips for several options in the Mesh menu.

This closes #35692.
2020-01-31 16:42:02 +01:00
Haoyu Qiu d1b1edba84 Adds pan and zoom gestures to TextureRegion editor 2020-01-30 11:39:13 +08:00
Haoyu Qiu ca537dea76 Fixes invalid read when using fill tool in empty tilemap 2020-01-27 20:39:49 +08:00
Tan Wang Leng ee2f406c73 Fix wrong guideline values shown during dragging
Suppose that the user wants to use some guidelines in 2D mode. The
user has enabled "Use Pixel Snap", and configured the "Grid Step" to
1px.

On some zoom levels, when dragging the guidelines step by step, some
offsets shows the wrong value. The offsets that are wrong vary - it is
affected by the zoom level, so some zoom levels do not display this
problem.

For example, a user may see this while dragging the guideline:

0px   1px   1px   3px   4px   5px   5px   7px   8px

whereby 2px and 6px are missing.

This is due to a floating-point error. The values are printed as
(truncated) integers, but they are actually decimals, so they were
actually 1.9999 and 5.9999 for the missing cases.

Let's fix that by rounding up the values before printing them to get rid
of the errors.

This fixes #35010.
2020-01-24 23:52:43 +08:00
Haoyu Qiu b420618c46 Fixes scrollbar positions on HiDPI display
* TextureRegion editor
* Ploygon2D UV editor
2020-01-23 08:55:52 +08:00
Rémi Verschelde 37897dba80
Merge pull request #35406 from lawnjelly/ortho-shadow
Replace CameraMatrix::get_viewport_size with get_viewport_half_extents, shadow culling with ortho camera and other affected issues
2020-01-22 22:02:09 +01:00
Rémi Verschelde 91b0be18dc
Merge pull request #35421 from williamd1k0/improve-top-animation-menu
Use an icon in the top Animation Key menu
2020-01-22 21:21:15 +01:00
William Tumeo cb3fcba99f Use an icon in the top Animation Key menu 2020-01-22 17:06:40 -03:00
lawnjelly eaf8e5ce52 Change CameraMatrix::get_viewport_size to get_viewport_half_extents
Fixes #26637.
Fixes #19900.

The viewport_size returned by get_viewport_size was previously incorrect, being half the correct value. The function is renamed to get_viewport_half_extents, and now returns a Vector2.

Code which called this function has also been modified accordingly.

This PR also fixes shadow culling when using ortho cameras, because the correct input for CameraMatrix::set_orthogonal should be the full HEIGHT from get_viewport_half_extents, and not half the width.

It also fixes state.ubo_data.viewport_size in rasterizer_scene_gles3.cpp to be the width and the height of the viewport in pixels as stated in the documentation, rather than the current value which is half the viewport extents in worldspace, presumed to be a bug.
2020-01-22 18:22:00 +00:00
Rémi Verschelde 4faaf6089a Remove unused #if 0'ed code 2020-01-21 21:41:54 +01:00
Eric Rybicki 99346e9654 Fix asset library video play overlay not being centered on the thumbnail 2020-01-21 08:04:32 +01:00
Rémi Verschelde 709665b15d
Merge pull request #35379 from dankan1890/quick_fix
TextureRegionEditor: Corrected typo
2020-01-20 21:34:02 +01:00
dankan1890 a2170dcd40 TextureRegionEditor: Corrected typo 2020-01-20 20:58:42 +01:00
Rémi Verschelde c3fd1012de
Merge pull request #35351 from ericrybick/32342-Resize-snapping-lines-bug
Fix editor drawing snapping lines for wrong edge/corner when resizing elements with smart snapping enabled
2020-01-20 12:57:44 +01:00
Eric Rybicki b91b26d073 Fix editor drawing snapping lines for wrong edge/corner when resizing elements with smart snapping enabled
fixes #32342
2020-01-20 08:03:20 +01:00
Rémi Verschelde e8dc581bfc
Merge pull request #35303 from timothyqiu/hidpi-anitreeplayer
Fixes AnimationTreePlayer editor UI on HiDPI
2020-01-19 10:21:20 +01:00
Rémi Verschelde d7072e9cd4
Merge pull request #35273 from dankan1890/quick_fix
AssetLibrary layout fix
2020-01-19 10:13:31 +01:00
Rémi Verschelde 7522aa80c2
Merge pull request #35295 from N0hbdy/animation-editor-line-edit-fix
Fix AnimationTree Editor by using CONNECT_DEFERRED on LineEdit
2020-01-19 09:32:00 +01:00
Haoyu Qiu 2db685da09 Fixes AnimationTreePlayer editor on HiDPI
* The minimum editor size
* The position of buttons and status text
2020-01-19 10:20:53 +08:00
Hugo Locurcio c9aca9ef81
Clamp the editor scale to 1 when resetting zoom in the 2D editor
This closes #35294.
2020-01-18 22:26:21 +01:00
N0hbdy 3fffb1c031 Fix AnimationTree Editor by using CONNECT_DEFERRED on LineEdit
Not having this causes the LineEdit to be deleted while still processing
signals, which can cause a crash during focus changes.

Fixes 35293
2020-01-18 12:12:13 -08:00
dankan1890 29daba5b0c AssetLibrary when the download size is unknown:
hidden progress bar
added in the description the downloaded bytes
Fixes #35267
2020-01-18 21:07:51 +01:00
Yuri Roubinsky 41acb1f6ba Fix minimap updating in shader tab 2020-01-18 12:31:33 +03:00
Hugo Locurcio 8bce0b6176
Mark alternate editor display modes as disabled in the GLES2 renderer
This partially addresses #27018.
2020-01-17 16:06:47 +01:00
Rémi Verschelde 05e042b06f
Merge pull request #34879 from Phischermen/canvas-item-editor-local-space-mode
Fix issue regarding rotating Canvas Items in editor
2020-01-16 23:10:41 +01:00
andrycodestuffs d0b3cb89f7 Fixed unknown symbol drawn instead of tabs in breakpoints/bookmarks lists
Tab characters were not rendered properly in the breakpoints and
bookmarks lists of the script editor if the bookmarked line was a
comment, resulting in unknown ASCII symbols “�”.

Fixes #34046.

Also changed formatting a bit to enclose the code in backticks (like in
Markdown) instead of quotes.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2020-01-16 13:50:30 +01:00
Haoyu Qiu 43ad6e8c96 Fixes AssetLib crash when JPG module is disabled
JPG module is optional, so check it's existence before using.
2020-01-15 22:16:12 +08:00
Michael Alexsander 34bf81fa7c Cleanup unnecessary code from before the scrollbar overlapping fixes 2020-01-14 18:19:12 -03:00
Rémi Verschelde 8f103b1b69
Merge pull request #34801 from Calinou/add-3d-viewport-crosshair
Add a crosshair to the 3D viewport
2020-01-14 21:02:35 +01:00
Phischermen becd1fd1d8 Fix issue regarding rotation
Canvas items will now rotate correctly no matter what their global scale happens to be.
2020-01-14 07:26:34 -08:00
Michael Alexsander e69593842e Fix more scrollbar anchorings 2020-01-14 08:25:55 -03:00
Michael Alexsander 712cd8a97e Fix more instances of overlapping scrollbars 2020-01-13 22:49:17 -03:00
Hugo Locurcio 2b9f34b867
Add a crosshair to the 3D viewport
The crosshair makes freelook navigation a bit easier, while making it
clearer that it's possible to select nodes by clicking while in
freelook mode.

The crosshair is only displayed while in freelook mode.
It uses an icon designed to be visible on any background.
2020-01-13 22:30:34 +01:00
Rémi Verschelde e2bebfbd4c Use MOUSE_FILTER_PASS for all containers (but PanelContainer)
Containers are meant to forward mouse input to their the Controls
they contain.

PanelContainer has a visible Panel stylebox, so it still defaults
to STOP.

Fixes #34933.
2020-01-13 14:49:01 +01:00
Rémi Verschelde 4a95186b4b Animation editor: Set resource name when duplicating
Fixes #25156.
2020-01-13 13:22:06 +01:00
Hugo Locurcio 929dfe1bcc
Clamp the editor scale to 1 for 2D zoom operations
Some people set the editor scale below 1 to fit more content on
screen, even if their display doesn't have a particularly low DPI.

This closes #35059.
2020-01-13 12:16:27 +01:00
Hugo Locurcio 2f56146242
Increase the size of the item list editor popup
This makes it easier to edit large amounts of items.

This partially addresses
https://github.com/godotengine/godot-proposals/issues/368.
2020-01-12 18:19:39 +01:00
Haoyu Qiu 65e2230f6e Fixes min size of various editor plugins on HiDPI
* AnimationTree
* AudioStream
* ResourcePreloader
* ShaderEditor
* VisualShaderEditor
2020-01-12 15:24:15 +08:00
Rémi Verschelde 4b83bbd463
Merge pull request #34937 from YeldhamDev/scriptdiag_disable_load
Add option to disable loading scripts in ScriptCreateDialog
2020-01-10 08:18:51 +01:00
Michael Alexsander 34f1dbaf28 Fix TileSet editor's workspace size sometimes not changing correctly on region change 2020-01-10 00:57:49 -03:00
Michael Alexsander 8708d44a50 Add option to disable loading scripts in ScriptCreateDialog 2020-01-09 13:09:23 -03:00
Haoyu Qiu 93aa3a0126 Fixes TextureRegion editor drag handle for HiDPI
Before this fix, it's easy to miss the drag handle on a HiDPI monitor.
2020-01-09 13:45:53 +08:00
Rémi Verschelde 41c8ec991f
Merge pull request #34802 from xelivous/power-of-two-is-good
Change the 2D editor's snap to 8x8 by default
2020-01-08 08:51:58 +01:00
Michael Alexsander f9d11120f7 Minor fixes for ScriptCreateDialog 2020-01-08 02:02:34 -03:00