Commit graph

255 commits

Author SHA1 Message Date
Rémi Verschelde
d8b30d42f5 Fix warnings for operator precedence disambiguation [-Wparentheses]
Fixes the following GCC 5 warnings:
```
core/io/resource_format_binary.cpp:1721:29: warning: suggest parentheses around arithmetic in operand of '|' [-Wparentheses]
core/typedefs.h:108:24: warning: suggest parentheses around comparison in operand of '!=' [-Wparentheses]
editor/plugins/spatial_editor_plugin.cpp:2202:58: warning: suggest parentheses around comparison in operand of '!=' [-Wparentheses]
editor/plugins/spatial_editor_plugin.cpp:5002:12: warning: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]
main/input_default.cpp:346:59: warning: suggest parentheses around '-' inside '<<' [-Wparentheses]
main/input_default.cpp:348:60: warning: suggest parentheses around '-' inside '<<' [-Wparentheses]
main/input_default.cpp:579:57: warning: suggest parentheses around '-' inside '<<' [-Wparentheses]
modules/gridmap/grid_map_editor_plugin.cpp:613:14: warning: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]
modules/theora/video_stream_theora.cpp:335:34: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses]
modules/theora/video_stream_theora.cpp:336:35: warning: suggest parentheses around '+' in operand of '&' [-Wparentheses]
modules/visual_script/visual_script_property_selector.cpp:215:38: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
scene/gui/rich_text_label.cpp:424:84: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
scene/gui/rich_text_label.cpp:512:80: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
scene/gui/scroll_container.cpp:173:36: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
scene/gui/scroll_container.cpp:173:86: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
scene/gui/tree.cpp:1419:98: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
```
2018-09-27 10:29:48 +02:00
Rémi Verschelde
76ca46d1f4
Merge pull request #22225 from groud/fix_draw_on_viewport
Fixes drawing of the 2D plugins on the 3D view
2018-09-20 21:45:16 +02:00
Rémi Verschelde
f93a69cb6e
Merge pull request #22287 from Chaosus/fix_warning
Fix "This control can't grab focus." warning spam
2018-09-20 21:41:53 +02:00
Chaosus
e4c8efd051 Fix "This control can't grab focus." warning spam 2018-09-20 15:29:38 +03:00
Ibrahn Sahir
ce15cf8ebc fix branch on uninit in spatial_editor_plugin
Moved the initialisation of origin_enabled up a bit, to be inited before
it's accessed in _init_grid. A step towards cleaner valgrind output and
removes an opportunity for a random occurance of the origin/grid
z-fighting issue.

Also removed unused variable last_grid_snap to avoid later confusion.
2018-09-20 13:06:13 +01:00
groud
5172642c32 Fixes drawing of the 2D plugins on the 3D view 2018-09-18 20:00:07 +02:00
Michael Alexsander Silva Dias
75d5d81b8a Remove unnecessary "OK"s text settings 2018-09-15 21:40:50 -03:00
Chaosus
2fe0365661 Few unifications between canvas_item and spatial editors 2018-09-15 18:44:26 +03:00
willnationsdev
5436abefe4 Refactor editor icon retrieval 2018-09-14 09:27:56 -05:00
Hugo Locurcio
621a5457ed
Display camera coordinates in the 3D viewport's information pane 2018-09-11 00:04:09 +02:00
Rémi Verschelde
8804eb8c06
Merge pull request #21707 from JFonS/fix_instanced_selection
Fix selection of instanced scenes in 3D
2018-09-05 18:11:56 +02:00
Rémi Verschelde
5fe01d4cfc Move ParticlesMaterial code to its own resource file
It's shared by both 2D and 3D particles (+ CPU ones), so it makes sense
to have as a common resource. It also allowed to disable compilation of
Particles (3D) when using 'disable_3d'.

Also cleaned up includes in SpatialEditorGizmos and some other places,
as well as dropped dead code in material_editor_plugin.cpp.
2018-09-04 11:32:56 +02:00
JFonS
4a412943d4 Fix selection of instanced scenes in 3D 2018-09-02 22:31:03 +02:00
Hugo Locurcio
af139af69e
Fix some editor shortcuts' default values not being set properly
This also changes the uppercase/lowercase/capitalize shortcuts
to Shift+F4, Shift+F5 and Shift+F6 respectively to avoid conflicts
with the new Find Next shortcut.

This closes #21612.
2018-09-01 16:20:47 +02:00
Rémi Verschelde
b6c170165c
Merge pull request #21485 from JFonS/fix_selection
Saner selection code for instanced scenes in 3D,  should close #21447
2018-08-29 10:08:41 +02:00
Rémi Verschelde
7e79fb80db Fix z-fighting on origin grid lines in spatial editor
Fixes #21264.
2018-08-29 09:27:50 +02:00
JFonS
b58bb95c86 Saner selection code for instanced scenes in 3D, should close #21447
Selecting instanced scenes still doesn't work properly because gizmos are not being added to instanced nodes.
I will probably work on fixing all the shenanigans around selection, but that will take some time.
This part of the code should work better for the moment.
2018-08-27 16:02:49 +02:00
Michael Alexsander Silva Dias
7d13f6ad30 Small improvements to the Spatial Editor's multiple viewport mode 2018-08-25 17:43:27 -03:00
JFonS
927f9f283f Remove material errors after opening new project, fixes #21073 2018-08-23 10:50:30 +02:00
Juan Linietsky
c1bd768ca2
Merge pull request #18822 from QbieShay/master
Added spring arm node
2018-08-20 14:21:04 -03:00
QbieShay
bb14ef5623 added spring arm node. 2018-08-18 14:34:42 +02:00
Hugo Locurcio
442029b1c0
Fix the 3D grid flickering when the origin is enabled 2018-08-17 23:22:03 +02:00
Guilherme Felipe
ae788125a0 Disable camera interpolation when switching scene tabs
Fix #11764
2018-08-14 19:25:27 -03:00
Rémi Verschelde
0322081ec5
Merge pull request #20744 from Zylann/fix_viewport_lock_rotation
Initialize default lock rotation in constructor
2018-08-14 15:49:04 +02:00
Rémi Verschelde
c8414007ad
Merge pull request #20835 from Calinou/use-standard-button-texts-2
Tweak some editor button texts
2018-08-14 15:45:34 +02:00
Rémi Verschelde
892667878a
Merge pull request #20848 from Calinou/improve-3d-manipulator-gizmo
Improve the 3D manipulator gizmo
2018-08-14 15:43:52 +02:00
Juan Linietsky
15530ce2c5 Fix gizmos submenu 2018-08-12 10:20:32 -03:00
JFonS
ac51da2eb6 Improvements on the gizmo disabling menu and icon selection bugfix 2018-08-11 23:07:00 +02:00
Juan Linietsky
fbb5ca4d97
Merge pull request #20584 from JFonS/gizmo_enabling
New gizmo structure and gizmo disabling menu
2018-08-09 16:27:59 -03:00
JFonS
59fd18ab1a New gizmo structure and new gizmo disabling menu 2018-08-09 20:58:39 +02:00
Hugo Locurcio
dcca20027c
Improve the 3D manipulator gizmo
Its size now takes into account the editor scale and the viewport's
half resolution setting. It is now also more detailed.
2018-08-09 16:34:18 +02:00
Hugo Locurcio
147f7fbdcf
Tweak some editor button texts 2018-08-09 11:22:11 +02:00
Marc Gilleron
65215a7829 Initialize default lock rotation in constructor 2018-08-05 19:24:11 +01:00
Hugo Locurcio
1368bcfc53
Use a standard "OK" text for confirmation buttons in error dialogs
[ci skip]
2018-08-05 16:49:22 +02:00
Rémi Verschelde
b5b8f52d4f
Merge pull request #15310 from remorse107/Cinema-Mode
Added "Cinema Mode" so that the spatial editor can actively track the...
2018-07-27 08:12:22 +02:00
Robert Morse
75947b1b72 Add "Cinematic Preview" to the Spatial Plugin Editor. 2018-07-26 19:15:28 -05:00
Max Hilbrunner
6cf5eb8e37
Merge pull request #20022 from EIREXE/snap_to_floor
Add snap to floor functionality to the editor
2018-07-26 22:31:03 +02:00
Alex Roman
af725094d7 Add snap to floor functionality to the editor 2018-07-26 08:34:40 +02:00
Rémi Verschelde
4c5f0844e1
Merge pull request #19758 from kyledayton/feature/spatial-viewport-lock-rotation
Add lock rotation feature to spatial editor viewport
2018-07-26 08:31:20 +02:00
Kyle Dayton
46ec1deba5 Add lock rotation feature to spatial editor viewport 2018-07-25 21:37:04 -05:00
Hein-Pieter van Braam
0e29f7974b Reduce unnecessary COW on Vector by make writing explicit
This commit makes operator[] on Vector const and adds a write proxy to it.  From
now on writes to Vectors need to happen through the .write proxy. So for
instance:

Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;

Failing to use the .write proxy will cause a compilation error.

In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.

_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
2018-07-26 00:54:16 +02:00
ordigdug
7ab7bda48e Fix grid missing lines #20246 2018-07-22 05:00:51 -04:00
JFonS
e245efaead Fix selection in 3D orthogonal view 2018-06-28 14:59:39 +02:00
JFonS
9cd1c20f6a Polished 3D selection 2018-06-13 17:52:37 +02:00
Juan Linietsky
b659fd6d74 Entirely new (and much improved) animation editor. 2018-06-07 12:52:00 -03:00
AndreaCatania
9e57a07fb6 Implemented ragdoll
Implementing ragdoll

Implementing ragdoll

Implementing ragdoll

Implementing ragdoll

Implementing ragdoll

a

Implemented implicit hierarchy.

Improved

Added some physics properties

Added bone offset to preserve COM, partially fixed scaling

work in progress

WIP

wip

Implemented Joint Gizmos

Implemented pin joint joint

Implemented all joints
2018-05-07 21:03:16 +02:00
Juan Linietsky
8c30337565
Merge pull request #18684 from muiroc/fix_dragdrop_instancing
Editor: Makes dragdrop instantiation behavior consistent with the instance scene button
2018-05-07 13:34:09 -03:00
Juan Linietsky
d8ea68195a
Merge pull request #18525 from Calinou/improve-3d-grid
Improve the 3D editor grid
2018-05-07 13:09:03 -03:00
muiroc
884b239ca5 SpatialEditorViewport::_create_instance: pass GEN_EDIT_STATE_INSTANCED to scene->instance() 2018-05-06 19:13:23 +02:00
Robin Hübner
b16eaf5827 Remove unused duplicate wireframe shortcut, fixes #18067
It also happens to do nothing currently.
2018-05-03 16:22:30 +02:00
Hugo Locurcio
098f9b51b5
Improve the 3D editor grid
- The grid's primary and secondary colors can now be changed
- The number of grid steps (subdivisions) can now be changed
- The grid size can now be changed
- The grid is now darker by default
2018-04-30 14:24:54 +02:00
Hugo Locurcio
1c419531a0 Change ".." punctuation for "..." in editor strings (#16507) 2018-04-22 19:36:01 +02:00
Juan Linietsky
187b14ae24
Merge pull request #17730 from RandomShaper/radio-buttons-in-menus
Radio buttons in menus
2018-04-07 16:41:39 -03:00
Pedro J. Estébanez
259ed1d400 Improve popup menus usability
It seems that popups were intended to "grab" the mouse click that triggered them, but their intent was being lost. This commit does the necessary changes to let it happen and updates items that were trying to get advantage of it, because the semantics of `Control::grab_click_focus()` have changed a bit. Namely, it must be called **before** showing the modal.

This allows to popup a menu and activate an item in it in a single click-point-release cycle, instead of having to click once to open the menu and once more to pick an item.

This ability is extended even to context menus activated with the RMB (or any other mouse button, for that matter). The editor benefits from this in the context menu of the tree dock, which has been patched to opt-in for this feature.

This improves UX a bit by saving unnecessary clicks.

From now on, `PopupMenu` always grabs the click and also invalidates the first button release unless the mouse has moved (that's what `set_invalidate_click_until_motion()` was doing and now it's removed), so there is no longer the need of doing both things at every point a pop-up menu is shown.
2018-04-07 01:06:02 +02:00
Pedro J. Estébanez
a6dc160d5c Use radio-button-like menu entries where applicable 2018-03-27 19:19:45 +02:00
Julien CATINEAU
57e6b8781c add option to invert y-axis 2018-03-20 08:03:38 +01:00
Chaosus
24c170555d Enable snapping when control key pressed 2018-02-21 17:36:25 +03:00
Rémi Verschelde
e7fb143515
Merge pull request #14433 from PJB3005/17-12-08-3d_grid_color_setting_update
Makes 3D editor grid color update without restart.
2018-02-19 22:02:02 +01:00
George Marques
da69a06253
Add a function to remove controls from containers
Closes #5968
2018-02-13 19:35:10 -02:00
Poommetee Ketson
cfac160f9f 3DEditor: fix selecting node in viewport not update inspector 2018-02-07 13:27:39 +07:00
Poommetee Ketson
25dd1f0681 3DEditor: fix multiple node selection crash the editor
I'm not sure about this fix. This seems to also fixes the weird
selection bug where when selecting node 1 to 3 it focuses on
2nd node.
2018-01-27 17:28:01 +07:00
Rémi Verschelde
9f479f096c Fix typos in code and docs with codespell
Using v1.11.0 from https://github.com/lucasdemarchi/codespell
2018-01-18 22:01:42 +01:00
Marc Gilleron
6a4e89b6ec Fix crash when freelook shortcuts are undefined 2018-01-15 00:32:27 +01:00
Juan Linietsky
a26e6c8215 Renamed tree_exited to tree_exiting. tree_exited is now used for actual out of tree notification.
Updated doc accordingly.
2018-01-12 08:29:24 -03:00
poke1024
b352b0b88c Fixes snap button getting out of sync (issue 15366) 2018-01-11 06:52:10 +01:00
Rémi Verschelde
e4213e66b2 Add missing copyright headers and fix formatting
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Artem Varaksa
928ca10a7b Clean up \n from end of translation strings 2018-01-04 22:00:39 +03:00
Rémi Verschelde
b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
firefly2442
9ba9e37220 prevent strings from being evaluated to just "true" 2017-12-30 21:22:16 -07:00
Noshyaar
256a60bc6e
Merge pull request #14826 from carlosfvieira/14371-F_key_Viewport_focus_problem
Fix spatial editor plugin issues on multi viewport view menu shortcuts (only those that are bound to keys)
2017-12-25 08:42:31 +07:00
Noshyaar
aecffd71d8
Merge pull request #14847 from YeldhamDev/3d_viewport_save
Fixes for the Spatial Editor's Perspective options and dead code cleaning
2017-12-25 08:40:43 +07:00
carlosfvieira
49859871d9 Fix spatial editor plugin issues on multi viewport view menu shortcuts (only those that are bound to keys) - this closes #14371 and closes #12409
Fix spatial editor plugin issues on multi viewport view menu shortcuts (only those that are bound to keys) - this closes #14371 and closes #12409
2017-12-21 11:29:17 +00:00
Michael Alexsander Silva Dias
2490c4d882 Fixes for the Spatial Editor's Perspective options and dead code cleaning. 2017-12-20 01:05:21 -02:00
Carlos Vieira
2a3f6ee8b3 #14619 - fixes issue 1 (gizmo huge scale) - also referred in #14836 2017-12-19 23:45:10 +00:00
volzhs
4073de88cb Refactoring FPS & information on 3D viewport
- FPS label position adjusted with Preview button
- Remove unnecessary Panel control
- Remove unnecessary check condition
2017-12-17 21:49:44 +09:00
Przemysław Gołąb (n-pigeon)
b3575b5164 Moved Local Space Mode and Transform Snap settings to Top Bar ...
...buttons for easier access.
2017-12-16 15:42:19 +01:00
Poommetee Ketson
9888a56639 Change statable to multistate, remove extra separator 2017-12-12 09:41:17 +07:00
Rémi Verschelde
bf45e569c9
Merge pull request #11510 from AndreaCatania/skel
Added skeleton x-ray
2017-12-10 13:03:53 +01:00
AndreaCatania
63ec5823d1 Implemented skeleton visibility
Removed code visibility code from popup menu
2017-12-10 03:15:52 +01:00
PJB3005
04d0a0b96d Makes 3D editor grid color update without restart.
Fixes #14415
2017-12-09 21:16:26 +01:00
Mariano Suligoy
af719a90a7 TileMap Fixes 2017-12-02 20:49:01 -03:00
Guilherme Felipe
893a71b7dd Fix alignment for button preview_camera 2017-12-02 09:45:25 -02:00
Juan Linietsky
22415e5a31
Merge pull request #12572 from RandomShaper/onion-skinning
Onion skinning
2017-11-26 15:13:35 -03:00
Hugo Locurcio
e3fc6fcaa6
Tweak the default editor camera settings
- The default FOV is now 70
- The default Z-near plane is now at 0.05 meters
2017-11-25 23:03:26 +01:00
Pedro J. Estébanez
1964d5fddd Improve/fix SpatialEditor state saving/restoring 2017-11-25 02:18:28 +01:00
Pedro J. Estébanez
3f31925b18 Universalize draw-over API for EditorPlugins
- Now it is usable from both `CanvasItem` and `Spatial` editors.
- `EditorPlugin` API changes:
 - `forward_draw_over_canvas()` becomes `forward_draw_over_viewport()`.
 - `update_canvas()` becomes `update_overlays()`, which now triggers the update of every overlay on top of any 2D or 3D viewports present. Also now it returns the number of such viewports, which is useful whenever you need to know the number of draw-over calls you'll get.
 - New: `[set/is]_force_draw_over_forwarding_enabled()` to force overlaying regardless it handles the current object type, in a similar fashion as `[set/is]_input_event_forwarding_always_enabled`. This kind of overlay is also on top of those for regular handled node types.
 - New: `forward_force_draw_over_canvas()`, which is the callback that gets called for plugins that enable forced overlaying.
2017-11-24 21:24:15 +01:00
Rémi Verschelde
e38efe22c7
Merge pull request #12301 from MarianoGnu/master
Implement auto-tiling
2017-11-22 15:31:46 +01:00
Bernhard Liebl
80ad8afc85 Native pan and zoom for macOS 2017-11-21 09:11:39 +01:00
Rémi Verschelde
d1831915bf
Merge pull request #12359 from kubecz3k/spatial-lock
ability to lock spatial nodes transform in editor
2017-11-20 16:02:20 +01:00
Mariano Suligoy
bcfb0a09f8 Implement auto-tiling 2017-11-20 06:27:47 -03:00
Rémi Verschelde
bc26a5bd3a
Merge pull request #12936 from n-pigeon/planar_scale_gizmo
Implemented planar scaling with two modes.
2017-11-20 00:16:28 +01:00
Dmitry Koteroff
55f992942c Add "View FPS" in 3D->Perspective's popup.
"Fixes" to make it acceptable by clang-format.

"Fixes" to make it acceptable by clang-format.
2017-11-20 00:35:46 +03:00
Ferenc Arn
d28763a4c1 Rename Rect3 to AABB.
Fixes #12973.
2017-11-17 11:01:41 -05:00
Rémi Verschelde
bb1d1912ea
Merge pull request #12488 from djrm/pr_gridmap_fixes
Several improvements to GridMap.
2017-11-16 19:27:27 +01:00
Przemysław Gołąb (n-pigeon)
9cc6d21d9f Implemented planar scaling with two modes.
Modes:
- Scale uniformly on two axes
- Hold SHIFT to scale non uniformly
2017-11-14 23:51:27 +01:00
Przemysław Gołąb (n-pigeon)
9a4f6d6689 Fix uninitialized bool. Breaks translation in release_debug target. 2017-11-13 22:54:33 +01:00
Przemysław Gołąb (n-pigeon)
e2160afcd8 Fixed View plane local rotation.
Plus some cleanups.
2017-11-13 09:15:41 +01:00
Jakub Grzesik
518d907914 ability to lock spatial nodes transform in editor 2017-11-11 12:56:37 +01:00
Webster Sheets
5c88ad9457 Dropping a mesh file into the scene no longer creates an instanced scene. 2017-11-10 16:31:53 -05:00
Przemysław Gołąb (n-pigeon)
f1c2a18e57 Cleanups in Spatial Transform Gizmo
Fixed translation i local space - changed a bit how it was implemented.
Fixed bug with rotations when object is scaled.
Added safety check preventing scaling to 0 in local space.
All Gizmoz display numerical output message on the bottom of the viewport.
Unified code a bit, so it will be easier to maintain.
2017-11-10 08:22:11 +01:00