Commit Graph

65 Commits

Author SHA1 Message Date
bubnikv
b0fc0cf49f Fixed a regression issue where excessive memory was allocated
for the GLVolumes before sending to the GPU driver. The following commits
were partially reverted:

4269c8b23c Removed GLVolume non-VBO rendering
d15698e21e GLVolume and GLIndexedVertexArray refactored to send data to gpu at the first render call

Namely, the GLVolume buffers are "shrink to size"'d before sending their
content to the OpenGL driver, and the vertex buffers are populated
as quickly as possible from the GLVolume, so that the same buffer is not
kept twice in RAM on systems, where the RAM is shared with the graphics
card.

Also the memory allocation reporting was improved for the GLVolumes.
2019-08-05 14:30:32 +02:00
bubnikv
a04690cc88 Not taking the snapshot with non-empty Redo stack will likely be more confusing than losing the Redo stack.
Let's wait for user feedback.
2019-08-01 15:25:35 +02:00
Enrico Turri
eb40cdef49 Code cleanup 2019-07-26 11:32:44 +02:00
Enrico Turri
450ae17d59 Add remove all from selection command to undo/redo stack only when the redo stack is empty 2019-07-24 13:51:39 +02:00
Enrico Turri
58c862e742 Do not store into undo/redo stack remove all from selection command 2019-07-24 09:47:01 +02:00
Enrico Turri
d14e0d2c90 1st installment for selection's undo/redo snapshots 2019-07-23 15:14:08 +02:00
Enrico Turri
459dd8f1af Fixed use of translate macros 2019-07-17 14:13:50 +02:00
bubnikv
e8e35579dd Merge remote-tracking branch 'remotes/origin/vb_undo_redo' 2019-07-15 11:34:18 +02:00
Enrico Turri
3bd9bb360e Modified logic to add snapshots to undo/redo stack using GLCanvas::do_xxxxxx() methods 2019-07-09 10:18:57 +02:00
Enrico Turri
85e9318081 Fixed conflicts after merge with master 2019-07-08 09:23:37 +02:00
bubnikv
445cd20919 Undo / Redo fixes 2019-07-05 19:06:19 +02:00
bubnikv
d98aa0f91d Merge remote-tracking branch 'origin/master' into vb_undo_redo 2019-07-04 20:22:15 +02:00
YuSanka
0f682282bf Update object list after undo/redo 2019-07-04 19:46:46 +02:00
bubnikv
ef9495150e WIP Undo / Redo : serialization / deserialization of object selection. 2019-07-04 14:35:04 +02:00
bubnikv
07e2066dd3 WIP Undo / Redo: Serializing the configs of ModelObject / ModelVolume
/ ModelMaterial as separate objects to conserve memory.
2019-07-03 13:43:54 +02:00
Enrico Turri
4d7f4d1313 View dependent order of rendering for layers editing visual hints to keep the correct transparency 2019-07-02 15:49:18 +02:00
Enrico Turri
e9909eb95e Removed GLVolume non-VBO rendering 2019-07-01 12:28:16 +02:00
YuSanka
e4efd22731 Some code improvements 2019-06-27 16:07:32 +02:00
Enrico Turri
f89e573037 Added visual hints in 3D scene for layers editing 2019-06-27 13:42:50 +02:00
YuSanka
fa7f07fffc Merge remote-tracking branch 'origin/master' into ys_new_features 2019-06-24 13:56:35 +02:00
Enrico Turri
0e95ed9aab Do not allow to copy/paste volumes when using sla printer 2019-06-24 13:21:05 +02:00
Enrico Turri
6d37e444da #2428
1) Reworked logic for pasting volumes

2) Fixed paste of volumes into different objects

3) Do not apply offset when pasting into the copied object

4) Keep source transformation matrix and relative positions when copy/pasting volumes into another object
2019-06-24 12:26:11 +02:00
bubnikv
436b9c40fe Integrated the new layer height spans with configs into the backend.
Fixed some compiler warnings.
2019-06-20 16:15:09 +02:00
YuSanka
cb2051e25c Merge remote-tracking branch 'origin/master' into ys_new_features 2019-06-13 16:18:39 +02:00
Enrico Turri
37714a78cb Fixed conflicts after git cherry-picking 39cfe819daeb7dd71bae5ff20edfbe6396dffbe8 2019-06-12 10:57:20 +02:00
YuSanka
6787854cf9 Experiments with updating layer_config_ranges from UI
+ Fixed OSX build
2019-06-05 11:50:59 +02:00
Enrico Turri
7f98277577 Code cleanup 2019-05-24 15:22:27 +02:00
Enrico Turri
88d3813997 Fixed conflicts after cherry-picking 844e99f84e 2019-05-24 14:42:46 +02:00
Enrico Turri
0095a194d6 Fixed debug technology ENABLE_RENDER_SELECTION_CENTER 2019-05-20 15:59:54 +02:00
Enrico Turri
8a3870d66e Fixed position of instances after paste object 2019-05-20 10:33:49 +02:00
bubnikv
123427b6f9 Fix of a regression bug - joint rotation of multiple instances.
The bug was likely introduced with b89e95aea7
2019-05-15 15:22:18 +02:00
Enrico Turri
f14a203953 Merge branch 'lm_arrange_wipe_tower' of https://github.com/prusa3d/Slic3r 2019-05-10 11:14:42 +02:00
bubnikv
21bc798fd6 World / local coordinates: Fixed wrong scaling of a group selection,
changed the "anisotropic scaling" - "embed vertices" message,
fixed scaling in the world coordinate system, so it does not count
the modifiers into the bounding box size.
2019-05-07 15:43:53 +02:00
Lukas Matena
5fa55fc51f Allow wipe tower rotation by the rotation gizmo 2019-05-06 08:14:45 +02:00
bubnikv
50758c4cd0 Changed the "non-uniform scaling is not possible" message. 2019-05-03 12:36:26 +02:00
bubnikv
b0830d062b WIP: Transformation of instances in world coordinate space:
Ulocking the "anisotropic" scaling checkbox will bake the transformation
into meshes to allow for scaling in world axes.

Optimized and templated the stl_transform functions, now also available for 3x3 matrices.
The Canvas3D::reload_scene() now maintains selection even if all volumes of an instance changed their IDs.
2019-04-26 17:28:31 +02:00
bubnikv
fbf6dd5af9 WIP: Transformations of an instance in world coordinate system
from the side panel.
2019-04-24 11:01:59 +02:00
Enrico Turri
42a1f617c9 Fixed selection when right-clicking in the 3D scene to show the context menu 2019-04-15 10:27:40 +02:00
bubnikv
2104503794 Fixed copying of some object's attributes into the clipboard
(layer height profile, layer height table etc)
Added public Plater::schedule_background_process()
2019-04-12 18:29:47 +02:00
Enrico Turri
6b84f44bd1 Offset used to place newly added volumes and instances proportional to the bed max size 2019-04-12 15:31:33 +02:00
Enrico Turri
379bf9e074 Copy and paste -> Fixed paste for multivolumes copies 2019-04-12 11:28:24 +02:00
Enrico Turri
3f427366e1 Copy and paste -> Disabled paste of instances when selection is in Volume mode 2019-04-12 08:49:24 +02:00
Enrico Turri
1f6d671abb Fixed conflicts after merge with master 2019-04-12 08:41:59 +02:00
Enrico Turri
415f66144e Copy and paste -> Disabled paste of volumes when nothing is selected and fixed enabling/disabling of paste item in toolbar and edit menu 2019-04-11 14:21:08 +02:00
Enrico Turri
00f92ec2e8 Copy and paste -> Added offset to pasted objects/volumes 2019-04-11 11:27:15 +02:00
Enrico Turri
d276653a97 Copy and paste -> Fixed copy of multiple instances and volumes insertion into objects list 2019-04-11 11:09:32 +02:00
Enrico Turri
81a5b161c1 Copy and paste -> prototype of copy and paste for objects 2019-04-10 15:55:32 +02:00
Enrico Turri
3450691d45 Copy and paste -> Clipboard refactored to accept more than one object 2019-04-10 14:03:40 +02:00
Enrico Turri
8bd3c6ec5c 1st installment of copy and paste -> prototype for volumes copy and paste 2019-04-10 08:40:58 +02:00
Enrico Turri
952bbf4259 Tweaks to selection from 3D scene 2019-04-09 15:42:00 +02:00