changelog.txt

changeset 777
b863b727c321
parent 776
624131d0163d
child 780
b0d84fb70ea5
equal deleted inserted replaced
776:624131d0163d 777:b863b727c321
1 =================================================
2 == Changes in version 0.3
3 =================================================
4 - OpenGL renderer largely reworked to use VBO-based rendering instead of immediate mode. This plus additional
5 optimizations speed up LDForge considerably.
6 - Multiple files can now be kept open at the same time. A new list widget is on the left to contain the list
7 of currently open files.
8 - Added close, close all and save all actions.
9 - Added ability to download parts from the Parts Tracker or from a custom-specified URL. If the resulting
10 file contains references to unknown files, LDForge attempts to recursively download all of them.
11 - Added a new editing mode for drawing circles.
12 - Major corrections to the primitive generator:
13 - Fixed: "Hi-Res" was not prepended to the names of 48/ primitives.
14 - Fixed: Checking the Hi-Res option would not allow segment values over 16.
15 - Added support for multiple spaces before the ring number.
16 - Added an action for quickly subfiling the group of selected objects.
17 - Added random colors mode.
18 - Vertex snapping is now smarter, prefers vertices closer to the camera and is less likely to pick irrelevant vertices.
19 - Coordinate rounding now works properly, figures scientific notation and rounds subfile position and matrix.
20 Values are also now properly rounded instead of just floored, 1.2348 now rounds to 1.235 and not 1.234.
21 Subfile matrix values are rounded to 4 decimals, everything else to 3 decimals.
22 - Implicitely-opened documents are now closed automatically when rendered unused, hopefully reducing memory
23 usage somewhat.
24 - Configuration is now always situated and read from the application working directory
25 - LDraw code parser no longer complains about scientific notation.
26 - Changing to draw mode while in free camera now causes the camera to be changed to top.
27 - When drawing polygons, line lengths are now displayed. Added a configuration option to toggle this behavior.
28 - Added an option for drawing line angles similarly.
29 - Added config fields for default name/username/license. This data will be automatically filled
30 into forms that require such information.
31 - Upon first start the configuration prompt pops up on its own, defaulting on the profile tab. This
32 way the user can fill in the profile data on the first start and get that out of the way (and
33 gives the opportunity to see the other config fields)
34 - Now recognizes "8\" as a special subdirectory alongside "48\" and "s\"
35 - Added new action "Add History Line" for quickly inserting 0 !HISTORY lines to headers
36 - Added new action "Go to line", default shortcut Ctrl-G. It should be obvious what it does.
37 - Added new actions "Hide" and "Reveal" which allow direct setting of objects' visibility setting instead of
38 toggling it.
39 - Added support for logoed studs, this should satisfy Steffen. :p
40 - Added support for '0 BFC CLIP' and '0 BFC NOCLIP' and added auto-correction from errorneous MLCAD
41 syntax ('0 BFC CERTIFY CLIP').
42 - Increased the amount of recent file slots from 5 to 10.
43 - Added Ball Joint-8 primitives to the primitive categories.
44 - Fixed: Configuration window did not allow for grid angle values higher than 99.99
45 - The viewport now uses 7 sets of rotation/pan/zoom values, one for each camera. Changing these values
46 in one camera no longer affects other cameras.
47 - When an external program is attempted to be used without a binary path defined, one will be asked
48 with an input dialog instead of being told to go to configuration to set the path.
49 - When adding edges with Intersector (which is done with Isecalc), the user is prompted for Isecalc's
50 path now as well if necessary instead of just ignoring it and not adding the edgelines.
51 - Added a configuration option for line anti-aliasing.
52 - Added a configurable selected color to blend to objects when they are selected, instead of a simple
53 light-up. Defaults to a blue color.
54 - BFC red/green view and black edges no longer default to true.
55 - When the background is dark, the "black edges" option actually means "white edges" now.
56 - If the vertex snapper finds a vertex closer than 4 pixels, it likely is the vertex being looked for
57 and the algorithm can terminate early, hopefully this will save a few cycles on large parts.
58 - The camera icons now draw real tooltips instead of emulated ones.
59 - Color icon border now reflects the color's edge color.
60 - Changed the default color toolbar to have a wider range of colors. No need for transparent ones.
61 - Fixed: When rotating subfiles, the scale was treated incorrectly due to bad operand order in matrix
62 multiplication, causing unwanted morphing.
63 - [Linux] Fixed: If an external program is attempted to be launched requiring Wine but with Wine missing,
64 there was no error message and instead LDForge took this as no output from the program.
65 - Fixed: LDForge would sometimes crash during startup over uninitialized data in the GL renderer.
66 - Fixed: The message log was still written with black text with dark backgrounds.
67 1
68 - Selecting an invertnext'd object now also selects the invertnext.
69 2
70 ================================================= 3
71 == Changes in version 0.2.1 4 Changes in version 0.3
72 ================================================= 5
6
7
8 +* - Added support for holding multiple documents open at once, adding a tab bar of open documents.
9 +* - OpenGL renderer upgraded to use VBOs instead of display lists. This results in a massive speed-up and paves way for additional features such as random colors and correct BFC red/green view. This plus additional optimizations speed up LDForge by an order of magnitude.
10 +* - Various other optimizations to speed LDForge up considerably.
11
12 + - Added an action for creating a new, blank file without any headers.
13 + - Added action "download from" which allows the download of part files from the LDraw Parts Tracker. Comfy rework jobs++.
14 + - Added action "add history line" for adding new history entries
15 + - Added "Go to line" action, renamed the config classes to proper camelcase
16 + - Added support for logoed studs.
17 + - Added support for '0 BFC CLIP' and '0 BFC NOCLIP' and added auto-correction from errorneous MLCAD syntax ('0 BFC CERTIFY CLIP').
18 + - Added configuration fields for default name/username/license alĂ  DATHeader. This data will be automatically filled into the new part prompt. The auto-subfiler also uses this.
19 + - Upon first start the configuration prompt pops up on its own. This way the user can fill in the profile data on the first start and get that out of the way, and gives the opportunity to see the other config fields.
20 + - Added a third edit mode for adding circles, rings and discs. Uses a ring finder algorithm to automatically find a suitable ring configuration.
21 + - (Linux-only) Added a crash catcher which calls GDB and tries to get a backtrace. Also integrated assertion failure handling to this new system.
22 + - Added a configuration option for line anti-aliasing
23 + - Added new actions "Hide" and "Reveal" which allow direct setting of objects' visibility setting instead of toggling it.
24 + - Added the INSTALL document with compilation details.
25 + - Line lengths are now displayed when drawing
26 + - Added an action which auto-subfiles the current selection(!). It will find the first suitable s/<current_name>s##.dat, present the user an option to save elsewhere and then create the subfile.
27 + - Added option for visible angles when drawing
28 + - Now recognizes the p\8\ subdirectory
29 + - Added a configurable select color blend.
30 + - Added Ball Joint-8 stuff to primitive categories.
31 + - Added time of commit to window title.
32 + - Added random color support.
33 + - Vertex snapping is now smarter, does a depth comparison to favor vertices closer to camera. Selecting a vertex very close with the cursor still allows selecting vertices far away from the camera. This makes it less likely to pick irrelevant vertices which caused problems in part files.
34 + - Added a selection hover effect to the renderer, making selecting objects a lot more convenient.
35 + - Selecting an invertnext'd object now also selects the invertnext.
36
37 - - The camera is now changed to the top one if switching to draw mode while using the free camera instead of disabling the draw mode.
38 - - The color selector now uses the color's edge color for the borders instead of black.
39 - - Fixed: LDForge would sometimes crash during startup over uninitialized data in the GL renderer.
40 - - Primitive generator: added support for multiple spaces before primitive numbers, add "Hi-Res" to the names of 48/ primitives.
41 - - Implicitely-opened documents are now closed automatically when rendered unused, hopefully reducing memory usage somewhat.
42 - - Fixed: checking the hi-res option in the primitive generator would not allow segment values over 16.
43 - - Fixed: The message log was still written with black text with dark backgrounds.
44 - - Fixed: couldn't open larger files because of a type mismatch in moc method calling, leading into runtime problems
45 - - When an external program is attempted to be used without a binary path defined the user will be asked with an input dialog for the path. When adding edges while using Intersector (which is done with Isecalc), the user is prompted for Isecalc's path now as well if necessary instead of just ignoring it and not adding the edgelines.
46 - - Coordinate rounding now works properly, figures scientific notation and rounds subfile position and matrix. Values are also now properly rounded instead of just floored, 1.2348 now rounds to 1.235 and not 1.234. Subfile matrix values are rounded to 4 decimals, everything else to 3 decimals.
47 - - Fixed: Hi-res cones with 3 digit numbers wouldn't go to the "Cones (48)" category properly
48 - - Fixed: overlay images are now explicitly to ARGB32 format, otherwise they might not be able to be made translucent properly
49 - - (Linux-only) Fixed: external programs requiring wine now properly display an error prompt if wine is missing
50 - - LDraw code parser no longer complains about scientific notation.
51 - - Now compiles with clang.
52 - - Fixed: the configuration dialog did not accept values past 99.99 for grid angles
53 - - Fixed: subfile rotation did matrix multiplication with operands the wrong way around. This caused scaled subfiles to become morphed when rotated.
54 - - Comment texts are no longer simplified (i.e. removed extra whitespace from).
55 - - Selecting an invertnext'd object now also selects the invertnext.
56
57 ! - Removed the GUI toolbar icon size slider (always 22x22 now).
58 ! - Made the configuration dialog use a list widget for navigation instead of a tab bar.
59 ! - Made rotation/pan/zoom values camera-dependant (so now there's 7 sets of them instead of 1)
60 ! - Removed the version monikers, new version is now just 0.3 instead of 0.3-alpha. The first mature version will be 1.0 anyway.
61 ! - Bumped max amount of recent files from 5 to 10
62 ! - "Black edges" now actually mean white edges when the background is dark.
63 ! - The configuration file is now always located at and read from the application working directory.
64 ! - The toolbar was somewhat reorganized. Color toolbar defaults rearranged to include full hue range.
65 ! - Changed build system from qmake to CMake.
66 ! - Toned down BFC red/green view colors and axis colors a tad.
67 ! - Moved the uncolorize action into the color toolbar, replacing Main and Edge colors there.
68 ! - Changed `<anonymous>` to `untitled`.
69 ! - Grids now have a single coordinate snap value instead of individual X, Y and Z values.
70
71
72
73 Changes in version 0.2.1
74
75
76
73 - Fixed: File loading would skip every 300th line (don't ask me how this managed to happen). 77 - Fixed: File loading would skip every 300th line (don't ask me how this managed to happen).
74 78
75 ================================================= 79
76 == Changes in version 0.2 80
77 ================================================= 81 Changes in version 0.2
82
83
78 84
79 - Completely rewrote history (undo/redo) code, making it a LOT stabler in the process. 85 - Completely rewrote history (undo/redo) code, making it a LOT stabler in the process.
80 - Added ability to snap to pre-existing vertices while drawing. 86 - Added ability to snap to pre-existing vertices while drawing.
81 - Replaced the radial type with a single action to generate primitives. 87 - Replaced the radial type with a single action to generate primitives.
82 - Replaced parts list in subfile item list with a primitive listing. Listing is generated either if 88 - Replaced parts list in subfile item list with a primitive listing. Listing is generated either if

mercurial