Commit graph

768 commits

Author SHA1 Message Date
Leonardo Zide
1cae41162c Removed lcPartSelectionFilterModel. 2017-07-11 18:09:15 -07:00
Leonardo Zide
f5f98994bb Added option for alternate mouse shortcuts with defaults that match LDD. 2017-07-11 14:25:06 -07:00
Leonardo Zide
50256d5378 Fixed unlit textures not drawing. 2017-07-08 09:44:53 -07:00
Leonardo Zide
3d7bfdafb0 New LDD importer. 2017-07-08 09:29:35 -07:00
Leonardo Zide
91fa2ec9dd Temporarily removed LDD importer. 2017-07-04 22:32:29 -07:00
Leonardo Zide
77a70758f8 Fixed static analysis warnings. 2017-07-02 20:12:17 -07:00
Leonardo Zide
bb5a703f51 Replaced HTML parts list table with image. 2017-07-02 16:10:30 -07:00
Leonardo Zide
0784cbc857 Updated version number to 17.07. 2017-07-01 17:47:40 -07:00
Leonardo Zide
bca9b205af Support loading textures from the same folder of the model being loaded. 2017-07-01 17:12:09 -07:00
Leonardo Zide
81e260a6f9 PLI improvements. 2017-06-30 08:22:42 -07:00
leozide
bd33085ca3 Fixed Qt4. 2017-06-29 11:12:37 -07:00
Leonardo Zide
de37b8abf9 Initial parts list image implementation. 2017-06-29 10:02:00 -07:00
leo
476182a1f8 Fixes for Qt4. 2017-06-26 07:30:36 -07:00
Leonardo Zide
f0eb8bde96 Added LDD importer. Closes #29. 2017-06-25 18:20:34 -07:00
leozide
b615cf669b Fixed conditional lines. 2017-06-22 18:45:45 -07:00
Leonardo Zide
9c996579f2 Updated pch location. 2017-06-22 08:03:23 -07:00
Leonardo Zide
4de9600a98 Disable parts list icon mode if FBOs are not supported. 2017-06-21 21:40:26 -07:00
Alistair Buxton
82204944ab When copying the camera position, also copy the ortho state. 2017-06-21 18:51:43 +01:00
Alistair Buxton
9aea871fe0 Add --viewpoint and --orthographic.
Use to set up the view using the built-in defaults. Note that they are
mutually exclusive with --camera.
2017-06-21 07:55:48 +01:00
Alistair Buxton
aac367ecfd Document version and help options. 2017-06-21 06:54:24 +01:00
Alistair Buxton
b4e55d1b49 Remove accidental duplicated help line. 2017-06-21 06:33:21 +01:00
Leonardo Zide
f024007157 Keep camera name as a c string for now. 2017-06-20 21:43:39 -07:00
Alistair Buxton
d7275358d6 Don't zoom extents when using a named camera. 2017-06-20 21:33:59 -07:00
Alistair Buxton
b2e4d85324 Add help for new command line options. 2017-06-20 21:31:39 -07:00
Alistair Buxton
240c8f68a5 Add command line options to set submodel and camera. 2017-06-20 21:25:27 -07:00
leozide
164031ffa4 Re-enabled --highlight command line option. 2017-06-20 11:32:48 -07:00
Leonardo Zide
05104162e9 Only highlight new pieces when the option is enabled. 2017-06-20 08:20:59 -07:00
Alistair Buxton
2de2e2c187 Highlight parts added in the current step. 2017-06-20 07:47:31 -07:00
leozide
7daf13b51e Fixed loading camera positions. Fixes #50. 2017-06-19 14:08:54 -07:00
Leonardo Zide
e872ec4a63 Added List Mode option to the parts list. Closes #43. 2017-05-29 14:03:46 -07:00
Leonardo Zide
05e3d7846c Update file functions to support multibyte strings. Fixes #46. 2017-05-29 13:32:45 -07:00
Leonardo Zide
82a4afb7a9 OpenGL ES cleanup. 2017-04-26 22:24:54 -07:00
leozide
8da318037d Removed fog options. 2017-04-21 14:17:03 -07:00
leozide
a219c281f2 Qt4 fix. 2017-04-20 18:56:35 -07:00
leozide
0381a0c74f Static analysis fixes. 2017-04-20 17:53:42 -07:00
Leonardo Zide
16bf9c7502 Merge pull request #44 from j6t/master
Fortify against random control points in imported files.
2017-04-16 19:03:19 -07:00
leo
f03ddb634e Compile fix. 2017-04-15 16:25:47 -07:00
Leonardo Zide
f2be79e4ed Changes to get older gcc versions working. 2017-04-15 15:54:17 -07:00
Johannes Sixt
2448a47071 Fortify against random control points in imported files.
It can happen (accidentally or maliciously) that control points are
imported from a file for pieces that cannot be synthesized. In such a case,
a click on the control point indicator leads to a NULL pointer access.
Insert checks so that the click is effectively ignored.
2017-04-15 16:41:32 +02:00
leozide
d0de0fbf65 Removed deprecated header. 2017-04-14 18:14:16 -07:00
leozide
07bdf56a2b Static assert compiler test. 2017-04-14 16:45:55 -07:00
leozide
dc7f640bc9 Enum compiler test. 2017-04-13 18:12:10 -07:00
leozide
f7d61f33ce Updated code to use nullptr and override. 2017-04-13 17:26:40 -07:00
leozide
35050efe3a Compiler feature test. 2017-04-13 17:07:29 -07:00
Leonardo Zide
c34810c084 Static analysis fixes. 2017-04-02 17:15:09 -07:00
Leonardo Zide
b9726a2a99 Reorganized scene and context classes. 2017-04-01 16:53:54 -07:00
leozide
a77a8e1485 Fixed main window icon. 2017-03-29 11:04:04 -07:00
Leonardo Zide
8990d04782 Increased default far plane. Fixes #40. 2017-03-28 22:51:28 -07:00
leozide
e1e0a0b812 Fixed warning. 2017-03-27 12:16:44 -07:00
Leonardo Zide
6491d15bb3 Fixed AA setting not being applied to the first view. 2017-03-26 23:12:05 -07:00
Leonardo Zide
49a88e1ab4 Fixed synth parts adding the wrong mesh to the scene when in a submodel. Fixes #42. 2017-03-26 18:28:31 -07:00
Leonardo Zide
ba9a2532a0 Avoid deleting all GL contexts. Fixes #41 and maybe fixes #33. 2017-03-26 18:14:08 -07:00
Leonardo Zide
7bd3abf6b4 Fixed issues splitting views. 2017-03-26 10:28:58 -07:00
Leonardo Zide
57b8732ed6 Context state cleanup. 2017-03-25 12:29:28 -07:00
Leonardo Zide
155fa7cdc2 Removed redundant glBlendFunc calls. 2017-03-25 00:03:17 -07:00
leozide
eb7a8a86de Removed SetTextureMode. 2017-03-24 18:36:58 -07:00
leozide
6eb252f531 Removed unused debug code. 2017-03-24 16:36:48 -07:00
Leonardo Zide
c85f0f7eea Disable normals for unlit passes. 2017-03-24 09:34:53 -07:00
Leonardo Zide
f99a093c7a Draw edge lines unlit. 2017-03-22 23:35:02 -07:00
leozide
48f5b28b85 Fixed warning. 2017-03-20 13:03:31 -07:00
Leonardo Zide
50b9ab1984 Faster mesh sorting. 2017-03-19 22:59:55 -07:00
Leonardo Zide
8023f868cd Support loading parts from the 'unofficial' folder. 2017-03-19 13:12:24 -07:00
Johannes Sixt
64cae0b849 Fix regular file check again.
The previous Windows fix accidentally reverted the logic of the check for
a regular file. As a consequence, ZIP files are not recognized anymore.
2017-03-19 11:38:35 +01:00
Leonardo Zide
5ddd5b4e86 Dynamically resize rows and columns in the color list. Closes #21. 2017-03-18 18:31:04 -07:00
Leonardo Zide
9b933b6c57 Fixed comments in saved files being moved in some cases. Fixes #35, #36. 2017-03-18 17:42:34 -07:00
Leonardo Zide
29aae2b6be Merge pull request #38 from j6t/master
Synthesize power functions linear actuators.
2017-03-18 10:19:04 -07:00
Leonardo Zide
657df22db7 Fixed Windows build. 2017-03-18 10:17:32 -07:00
Johannes Sixt
8ee94ac310 Synthesize power functions linear actuators.
Power function linear actuators can be treated almost the same as shock
absorbers. The only difference is the orientation of the part: The parts
are extended is along the Y axis instead of the Z axis.
2017-03-18 14:58:11 +01:00
leozide
d6efc97089 Removed SetLightingMode. 2017-03-17 15:53:26 -07:00
Johannes Sixt
ba280bc1a7 Determine file size only of regular files.
lcDiskfile::Open() uses fopen() to open a file. On Linux, this can open
a directory just fine (at least for reading). This is slightly problematic
when it is attempted to open the parts library $(sharedir)/library.bin
and the library is an unzipped directory hierarchy. It is first attempted
to open the path as a ZIP file. While opening the directory as a file is
successful, subsequent navigation in the open "file" fails.

Pretend that a directory is an empty file so that the ZIP file reader is
not tempted to navigate around in the "file" and so reports failure in a
deterministic manner.

We could have inserted the check for regular files in lcDiskFile::Open(),
but this burdens every file open request, which can happen thousands of
times when the parts library is extracted instead of in a ZIP file.
2017-03-17 08:15:05 +01:00
Leonardo Zide
acd5a485f0 Added a decal material to fix the texmap extension. 2017-03-12 13:51:14 -07:00
Leonardo Zide
e645228128 Fixed stud grid color. 2017-03-12 12:40:59 -07:00
Leonardo Zide
61e803c161 Added fake lighting shader. 2017-03-11 16:47:21 -08:00
leozide
0677dcfd02 Moved Duplicate to the Piece Menu. 2017-03-08 15:57:24 -08:00
leozide
8125ee8f74 Moved Duplicate to the Piece Menu. 2017-03-08 15:55:38 -08:00
leozide
cf65201095 Added Duplicate Piece action. 2017-03-08 15:49:57 -08:00
Leonardo Zide
043246fbe6 Changed normal format for compatibility. 2017-03-05 22:14:50 -08:00
leozide
4d844dd90a Added normals to cube mesh. 2017-03-03 18:04:52 -08:00
Leonardo Zide
c833912f78 Merge pull request #31 from j6t/master
Draw a dark gray border around color indicators in the time line.
2017-03-03 16:11:04 -08:00
leozide
3e4063f962 Set lighting for minifigs. Fixes #32. 2017-03-03 16:08:39 -08:00
Johannes Sixt
d393cf83b3 Draw a dark gray border around color indicators in the time line.
This makes white, yellow and other colors more visible. In particular,
white entries do not look like absent against a white window background.

Due to the border, the circle must now be smaller by one pixel.
2017-03-04 00:06:01 +01:00
leozide
f7aa4890ee Remove empty steps when moving pieces to a new model. 2017-03-03 12:14:32 -08:00
leozide
1794e8c9c2 Fixed invalid bounding box when no pieces are visible. 2017-03-03 12:07:04 -08:00
Leonardo Zide
4096d4a325 Fixed normal calculation. 2017-03-01 08:36:51 -08:00
leozide
37327277e8 Fixed mesh generation bug. 2017-02-28 17:14:29 -08:00
leozide
7e3f572b8e Added shaders for each material/lighting combination. 2017-02-28 15:20:34 -08:00
leozide
9978230506 Calculate mesh normals. 2017-02-27 16:03:12 -08:00
leozide
e09d9cae3f Fixed warning. 2017-02-21 12:57:25 -08:00
Leonardo Zide
6df1ceb165 Parse BFC statements in parts. 2017-02-21 08:09:13 -08:00
Leonardo Zide
3d1efcabec Added room in the meshes for normals. 2017-02-18 11:12:35 -08:00
Leonardo Zide
641f4803e2 Added select by color dialog. Closes #18. 2017-02-16 22:57:11 -08:00
Leonardo Zide
dd223856c9 Use alpha from color when exporting obj. 2017-02-15 09:01:38 -08:00
doyousketch2
d7a21c6265 Update project.cpp
Oh yeah, I didn't end up needing to use string compare, because I found the (Color->Translucent) property.
2017-02-14 19:57:41 -05:00
doyousketch2
199b56d5ac Include transparency values 2017-02-14 19:48:19 -05:00
Leonardo Zide
6094899dc2 Fixed clang analyzer warnings. 2017-02-12 18:05:20 -08:00
Leonardo Zide
5875284d5d Updated version number. 2017-02-11 17:51:57 -08:00
Leonardo Zide
b2cb923e28 Fixed shaders on desktop GL. 2017-02-11 12:43:47 -08:00
Leonardo Zide
6b3869ce90 Fixes for iOS. 2017-02-11 12:41:00 -08:00
Leonardo Zide
0f2e808477 Fixed printing. 2017-02-11 09:46:21 -08:00
Leonardo Zide
cfdfe30b40 Replaced GL_QUAD calls. 2017-02-11 08:30:57 -08:00