Commit graph

230 commits

Author SHA1 Message Date
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
Daniel J. Ramirez
1b7f99d9e5 Several improvements to GridMap.
Fixed crash when undoing.
More ergonomic shortcuts.
Fixed freelook navigation.
2017-11-09 16:18:48 -06:00
Juan Linietsky
a4ea63737c Ability to shrink 3D viewport by half 2017-10-31 14:23:47 -03:00
Marc Gilleron
b9521f862d Add option to use freelook with a toggle shortcut (like Blender) instead of holding RMB (like Unity) 2017-10-30 23:23:55 +01:00
Rémi Verschelde
99c8a8c7b1 Merge pull request #11401 from SaracenOne/snapped_drag
Added snapping to spatial drag and drop.
2017-10-22 12:06:00 +02:00
Saracen
c566899dcf Fix drag and drop collision with non-centred origin points. 2017-10-18 05:16:05 +01:00
Marc Gilleron
59e6a27da1 Added icon under zoom/speed indicator bar 2017-10-15 21:20:51 +02:00
Rémi Verschelde
61a26dc23e Merge pull request #11927 from Zylann/freelook_interpolation_fix
Freelook interpolation fixes
2017-10-15 20:40:16 +02:00
Daniel J. Ramirez
c04f8721f3 Return camera to origin when creating a new scene and going to 3d editor. 2017-10-14 19:05:09 -05:00
Marc Gilleron
de42e53671 Freelook interpolation fixes
- Smooth freelook position more explicitely
- Don't let orbit zoom produce translation when it shouldn't
- Make base speed framerate-independent (and tweaked setting for that)
- Don't rely on camera for calculations because it no longer reflect immediate state
- Avoid potential divide-by-zero with zoom inertia
- Make speed/zoom relation optional (if enabled, speed is adjusted from zoom)
- Never change zoom distance when freelook is active
- Orbit inertia also applies on freelook
2017-10-10 02:38:17 +02:00
Przemysław Gołąb (n-pigeon)
a6ff281966 Fixed rotating in local space using 3D Gizmo. 2017-10-04 23:18:31 +02:00
Andreas Haas
5cd68abf88 Merge pull request #11478 from n-pigeon/scale_gizmo
Scale editing Gizmo for Spatial Editor
2017-10-03 00:03:01 +02:00
AndreaCatania
4537977d6d Renamed fixed_process to physics_process 2017-09-30 16:19:07 +02:00
Przemysław Gołąb (n-pigeon)
aad234d5ac Scale editing Gizmo for Spatial Editor
Added support for axis locked scaling with handles, supports both world and local space. Local space recommended for most editing tasks.
Also fixed some small bugs, polished Gizmo looks and cleaned up some dead code.
Happy scaling! :)
2017-09-26 20:39:41 +02:00
Daniel J. Ramirez
e2861a3b7c Removed transparency from spatial editor grid. 2017-09-25 21:45:53 -05:00
Rémi Verschelde
f577efd47e Merge pull request #11424 from groud/control_node_presets
Implements set_margins_preset(...)
2017-09-26 00:11:46 +02:00
Juan Linietsky
d3ea92257d -Fixed redraw always on 3D viewprot bug
-Changed manipulation inertia default values. Do not touch them again or I'll cut your fingers and eat them.
2017-09-23 17:28:28 -03:00
Gilles Roudiere
05bb8e0c10 Remove set_area_as_parent_rect and replace it by set_anchors_and_margins_preset(PRESET_WIDE) 2017-09-22 11:39:44 +02:00
Rémi Verschelde
2f82da7f72 Merge pull request #11222 from toger5/spatial_scrolling
Spatial scrolling update + better default inertia values
2017-09-21 10:35:25 +02:00
SaracenOne
3cecd0c6dc Box selection for MeshInstances and subscene nodes. 2017-09-20 14:04:18 +01:00
letheed
5ad9be4c24 Rename pos to position in user facing methods and variables
Rename user facing methods and variables as well as the corresponding
C++ methods according to the folloming changes:

* pos -> position
* rot -> rotation
* loc -> location

C++ variables are left as is.
2017-09-20 13:11:10 +02:00
SaracenOne
2e22c07f42 Added snapping to spatial drag and drop. 2017-09-20 01:54:01 +01:00
Rémi Verschelde
01e4d2672c Merge pull request #11327 from SaracenOne/drag_meshes
Drag and drop for meshes directly.
2017-09-19 23:38:10 +02:00
toger5
f328a356ae settings 'editors/3d' organized, sorted, new_defaults 2017-09-19 02:44:26 +02:00
toger5
117eb16adb update inertia/freelook settings values + renamed free_orbit... to
oribit...
2017-09-19 02:34:44 +02:00
toger5
1a8a80368e added precision scrolling to spatial editor zoom 2017-09-19 02:34:04 +02:00