Commit Graph

12 Commits

Author SHA1 Message Date
Miikka Heikkinen
4908055937 Integrate Edit3D view into Creator
Edit3D view is now a tab alongside Form Editor.
Buttons were moved to a Creator side task bar on Edit 3D view.

Change-Id: Ia06107e4f855ba512ffea3e628a61558894e800e
Fixes: QDS-1570
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-02-24 12:18:53 +00:00
Miikka Heikkinen
3890bf4efb QmlDesigner: Add support for multiple views to 3D edit view
Any subtree of Nodes can be shown in 3D edit view.
Selecting any Node or their children, or View3D changes the
view in 3D edit view to the relevant scene.

Fixes: QDS-1494
Fixes: QDS-1565
Change-Id: I2d5a6f88bab2a20b74c347351235f79fb530519b
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-01-31 14:52:08 +00:00
Miikka Heikkinen
a793e96ed2 QmlDesigner: Fix single selection of multiselected light/camera
When a multiselected light/camera icon is clicked without ctrl pressed,
it now ends up as the single selection as it is supposed to instead
of clearing the entire selection.

Change-Id: Id785cc4cd4ed6100b9bde625e9ccb45646e43b7f
Fixes: QDS-1353
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-01-10 09:49:34 +00:00
Miikka Heikkinen
783e5d0a8d Use separate MouseArea3D to calculate drag vector
Using the MouseArea3D linked to gizmo to manage the drag leads to
slight unwanted drift on the drag plane, as it moves with the gizmo.
Fixed by using a helper MouseArea3D to calculate drag vector.
Helper area's transform is set at mouse press time and is not changed
during the drag.

Change-Id: I50d3f738277bd34005c977423d114abc8dbed520
Fixes: QDS-1312
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-12-11 10:59:21 +00:00
Miikka Heikkinen
8ff52e37a7 QmlDesigner: Implement multiselection for edit 3D view
Multiselection works in 3D edit view with ctrl-click just like it
does on the Design Studio.

Change-Id: I266f2de11758bed064f44dd97cd79189e3e1f831
Fixes: QDS-1265
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-11-28 14:43:49 +00:00
Miikka Heikkinen
c7120bde92 QmlDesigner: Implement axis helper on 3D edit view
Axis helper shows up on top right corner of 3D edit view.
Clicking on axis helper arms zooms camera on that side of the selected
object.

Change-Id: Ibd81a933036f7965f825e3dc97ad7156da62e14c
Fixes: QDS-1205
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-11-22 13:57:43 +00:00
Miikka Heikkinen
0b510f173e QmlDesigner: Implement selection box to 3D edit view
Change-Id: Ib0b13ecd7946e3b7da8ed06d4f5965e06e51a152
Fixes: QDS-1210
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-11-22 10:48:48 +00:00
Miikka Heikkinen
3dd5e089b1 QmlDesigner: Add UX approved light icons for 3D editview
Light icons have a color overlay that indicates light color.

Change-Id: I5f6d80f63d0916dd7cb7b2d5345d586aacd550ef
Fixes: QDS-1209
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-11-22 10:48:22 +00:00
Miikka Heikkinen
4c73b4629c QmlDesigner: Some fixes to edit 3D after UX review
- Slightly larger cam plane rotate ring to avoid overlap
- Scale tool is always local
- Little more transparent and borderless light/cam icons when selected
- Center light/cam icon on the object

Change-Id: Icb24d89fb3ea852b139677aebe797881a12e474a
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-11-22 10:48:08 +00:00
Miikka Heikkinen
db54919798 QmlDesigner: Finalize camera visualization in edit 3D view
Added the UX approved camera icons, which will now turn transparent
and ignore mouse events when camera is selected so they do not
interfere with transform gizmos. Frustum visualization also changes
color according to selection state.

Change-Id: Id77066d9abb2b54696fae833201236afa238486a
Fixes: QDS-1208
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-11-18 08:39:38 +00:00
Miikka Heikkinen
db7087225d QmlDesigner: Implement camera frustum visualization for edit 3D
Task-number: QDS-1208
Change-Id: I3241fcdc68d01666a2536df32f170cd898cbd7af
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-11-11 08:44:16 +00:00
Miikka Heikkinen
47f54dd101 QmlDesigner: Add camera and light gizmos to 3D edit view
A small icon and a placeholder mesh are displayed at the location of
the lights and cameras in the scene, to provide a way to see and
interact with them.

Change-Id: I1f90fce77a643cab2c3fda3ee2105af53dea57a9
Task-number: QDS-1177
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-10-29 12:57:06 +00:00