enricoturri1966
0bb56736a1
Tech ENABLE_NON_STATIC_CANVAS_MANAGER set as default
2020-05-06 12:19:34 +02:00
bubnikv
750e704b37
Merge remote-tracking branch 'remotes/origin/et_slope_shader'
2020-03-25 16:09:04 +01:00
enricoturri1966
f12b39be25
Fixed conflicts after merge with master
2020-03-25 14:41:47 +01:00
enricoturri1966
abcd01d64a
ENABLE_SLOPE_RENDERING - Do not apply slope shading to modifiers and small refactoring
2020-03-16 14:17:19 +01:00
enricoturri1966
b36051af82
New tech ENABLE_SLOPE_RENDERING - 1st installment of rendering objects colored by facets slope
2020-03-13 15:09:07 +01:00
Lukas Matena
87e77e20fa
Include cleanup in several files
...
src/slic3r/Config/Snapshot.cpp
src/slic3r/Config/Snapshot.hpp
src/slic3r/Config/Version.cpp
src/slic3r/Config/Version.hpp
src/slic3r/GUI/2DBed.cpp
src/slic3r/GUI/3DBed.cpp
src/slic3r/GUI/3DScene.cpp
src/slic3r/GUI/3DScene.hpp
src/slic3r/GUI/AboutDialog.cpp
src/slic3r/GUI/AboutDialog.hpp
src/slic3r/GUI/AppConfig.cpp
src/slic3r/GUI/BackgroundSlicingProcess.cpp
src/slic3r/GUI/BackgroundSlicingProcess.hpp
2020-03-03 15:47:02 +01:00
Enrico Turri
0b629eb905
GLCanvas3DManager moved from being a static member of _3DScene to be a normal member of GUI_App
2020-03-02 10:58:46 +01:00
bubnikv
f28d0ebc18
Implemented reload of original mesh volume in case the SLA hollowing
...
step is no more valid.
2020-02-03 15:17:18 +01:00
bubnikv
b12bc5c4d5
Optimization in GLCanvas3D::reload_scene():
...
Use sorting and binary search instead of linear search.
O(n log n) versus O(n^2)
2019-12-10 11:12:17 +01:00
bubnikv
272479826f
Refactoring of the G-code preview for lower memory allocation
...
and for separation of concerns:
The final G-code preview no more uses ExtrusionPaths structure
to hold the G-code path data extracted by parsing the G-code.
Instead, the ExtrusionPath class has been trimmed down back to
the original size before the G-code preview was introduced,
and a new GCodePreviewData::Extrusion::Path class was created to hold
the additional path data as the extruder ID, color change ID
and fan speed.
2019-09-30 16:25:26 +02:00
bubnikv
85d9a16563
Fixed a bug, where the GL context was not being activated with _set_current()
...
as _set_current() tested for visibility of the window on the screen.
Improved memory management by:
1) Allocating small (around 3MB) vertex buffers to be sent to the GPU.
2) Passing the small vertex buffers to the GPU as quickly as possible.
A bit of copy / paste refactoring into common functions.
2019-08-26 11:12:48 +02:00
bubnikv
0de566e2a2
Hopefully a workaround for crashes and hang ups at closing on Windows.
...
Release the OpenGL contexts not by a destructor of a static class,
but explicitely (predictively).
2019-08-22 20:03:17 +02:00
Enrico Turri
58473f84ee
Check for existence of gcode toolpaths that can be exported to obj file
2019-08-20 11:33:58 +02:00
Enrico Turri
730283a9e9
Export to obj file only toolpaths visible in 3D scene
2019-08-20 09:51:25 +02:00
Enrico Turri
1f6aab312b
1st installment of export of gcode toolpaths to obj file
2019-08-20 09:01:09 +02:00
YuSanka
0520da3241
Merge remote-tracking branch 'origin' into ys_printable_property
2019-08-06 10:31:17 +02:00
bubnikv
cf2f16d864
Fixed Model::convert_multipart_object() for STLs (regression from 8e2af5151dcf6f102b65981ff5aa56c2dfda5a2a).
...
Removed Model::s_auto_extruder_id and related, as it is a Perl interfacing legacy.
Fixed a typo in asserts introduced in the preceding commit.
2019-08-05 17:49:21 +02:00
bubnikv
731e5abd88
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
Enrico Turri
0647d3ac1e
Code cleanup
2019-07-31 11:12:50 +02:00
Enrico Turri
03820a38cf
Render non printable instances with a darker color
2019-07-31 11:01:50 +02:00
Lukas Matena
45db42ca3b
Merge branch 'lm_drop_to_bed'
2019-07-12 13:38:18 +02:00
Enrico Turri
4ba7dfb6dd
Refactoring of functions thick_lines_to_indexed_vertex_array() to reduce the amount of produced vertices while reducing visual artifacts in gcode toolpaths due to averaged normals
2019-07-08 15:30:59 +02:00
Enrico Turri
d15698e21e
GLVolume and GLIndexedVertexArray refactored to send data to gpu at the first render call
2019-07-02 12:55:55 +02:00
Enrico Turri
2356fe5a13
Added member BoundingBoxf3 m_bounding_box to GLIndexedVertexArray and removed member BoundingBoxf3 bounding_box from GLVolume
2019-07-01 13:26:06 +02:00
Enrico Turri
4269c8b23c
Removed GLVolume non-VBO rendering
2019-07-01 12:28:16 +02:00
Lukas Matena
3d8c3804fa
Added 'drop to bed' button into object manipulation panel
2019-06-19 11:04:12 +02:00
Enrico Turri
28dd52d88b
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_perspective_camera
2019-06-19 08:17:58 +02:00
Enrico Turri
ac8de0bcaf
Follow-up of 1a91add2e6
-> Improvements to tighter camera frustrum to reduce z-fighting
2019-06-14 15:37:29 +02:00
bubnikv
dbfa4e6c83
Fix of a smart pointer gymnastics from previous commit
2019-06-13 16:55:12 +02:00
bubnikv
0bb8ee149e
Sharing TriangleMesh objects between the front end (UI) and back end
...
(background processing)
2019-06-11 17:08:47 +02:00
Enrico Turri
efd429ea46
Detection of sla supports out of printbed in Preview and when sla gizmo is active
2019-05-10 10:43:39 +02:00
bubnikv
1c6006f657
Merge remote-tracking branch 'remotes/origin/master' into vb_wold_object_manipulation
2019-05-03 12:37:43 +02:00
bubnikv
0ab96ed6b5
Changed the "non-uniform scaling is not possible" message.
2019-05-03 12:36:26 +02:00
Enrico Turri
748a4438ba
Attempt to fix build on Linux
2019-04-25 13:35:24 +02:00
Enrico Turri
d2d06c9f73
Rectangle selection in 3D scene -> refactored GLVolume member varialbe for hovering
2019-04-25 10:21:24 +02:00
Enrico Turri
11490dfb06
Rectangle selection in 3D scene -> hovering detection
2019-04-25 09:46:26 +02:00
bubnikv
2cc7b00a7d
WIP: World / local transformations of an object instance from the side panel.
2019-04-24 19:03:05 +02:00
Enrico Turri
3e902ecfbd
Fixed conflicts after merge with master
2019-04-12 08:41:59 +02:00
Lukas Matena
678c513cb9
Merge branch 'master' into lm_sla_gizmo_clipping_plane
2019-04-10 13:43:02 +02:00
Enrico Turri
e61be7d260
Render picking pass renders volumes in the same order as the regular render pass
2019-04-10 11:20:09 +02:00
bubnikv
4904359399
Finished SLA print / material correction visualization.
2019-04-08 18:09:31 +02:00
Lukas Matena
eadf7daa37
Merge branch 'master' into lm_sla_gizmo_clipping_plane
2019-04-08 10:50:10 +02:00
Lukas Matena
9b7857aaab
SLA gizmo clipping plane logic moved to fragment shader
...
This means the clipping now works again with both legacy and modern OpenGL
2019-04-08 10:31:16 +02:00
Enrico Turri
89a0c84c83
Fixed conflicts after merge with master
2019-04-02 15:13:26 +02:00
bubnikv
086f11df98
Handling of left hand oriented coordinate systems:
...
is_left_handed() method on transformations and volumes
rendering of GLVolumes in left handed coordinate systems by glFrontFace(GL_CW);
SLA slicing on left hand oriented instances by flipping the mesh for SLAPrintObject in X.
rendering of the SLA cutting plane in left handed systems
resetting the SLA clipping planes on 3D preview invalidation
2019-04-02 13:47:49 +02:00
Enrico Turri
d87b478d60
Camera refactoring
...
1) All camera related OpenGL calls moved into class
2) The Camera class now stores the view matrix, the projection matrix and the viewport
3) The Camera class now exposes methods to get the camera orientation vectors, the camera position, the view matrix, the projection matrix and the viewport
4) All the code operating on the camera or requiring camera data has been modified to use the new methods
2019-04-01 10:00:10 +02:00
Enrico Turri
d0046283fa
Added #define glcheck() for the case HAS_GLSAFE not defined
2019-03-27 15:14:40 +01:00
Enrico Turri
d795f07e7b
Added glsafe() around OpenGL calls where missing
2019-03-27 14:42:09 +01:00
bubnikv
3987296b62
Improved glsafe macro to print out file name, line number and function
...
name on OpenGL assert.
2019-03-27 10:26:55 +01:00
Lukas Matena
df01af975a
SLA gizmo now forces objects to use their normal color (not SELECTED_COLOR)
2019-03-20 14:04:20 +01:00