Commit graph

1522 commits

Author SHA1 Message Date
Leonardo Zide
a5207573bf Customizable object colors. 2021-11-24 15:20:08 -08:00
Leonardo Zide
94a5a5dc52 Moved blend to context. 2021-11-22 16:18:09 -08:00
Leonardo Zide
89c0b58592 Moved depth test to context. 2021-11-22 16:01:45 -08:00
Leonardo Zide
408dc6ff97 Moved texture upload to context. 2021-11-21 18:25:17 -08:00
Leonardo Zide
a9ab7c0c64 Removed GL calls in texfont. 2021-11-21 12:16:19 -08:00
Leonardo Zide
36dbcec238 Fixed macOS OpenGL deprecation warnings. 2021-11-20 19:56:52 -08:00
Leonardo Zide
30a911dad2
Update lc_colors.h 2021-11-17 19:06:18 -08:00
Leonardo Zide
2a24933fa8 Scoped enums. 2021-11-14 19:10:16 -08:00
Leonardo Zide
7d884e6b5f Static analysis fixes. 2021-11-14 18:34:24 -08:00
Leonardo Zide
5d558b38bb Warning fix. 2021-11-13 17:52:29 -08:00
Leonardo Zide
7c3968d785
Merge pull request #746 from j6t/unlimited-synth-ctrl-points
Almost unlimited control points in synthesized pieces
2021-11-06 10:44:18 -07:00
Johannes Sixt
31855d508f Permit an enormous number of control points. 2021-10-31 16:09:03 +01:00
Johannes Sixt
ba2cc70de8 Implement a piece's focused section as a simple index, not a bit mask.
It does not make sense to have a "focus" on more than one thing. Keep the
most recently focused section of a piece as a single index rather than a
bit mask. This removes a lot of implementation burden.
2021-10-31 15:51:58 +01:00
Johannes Sixt
b301b59f8f Implement GetSectionPosition() with computed, not enumerated indices.
This aligns the function with others, such as GetRotationCenter().
2021-10-31 15:50:57 +01:00
Johannes Sixt
d7ed7aaef4 Hold selection state in a separate variable, and treat all sections equal.
Notice that the selection state of individual piece sections are stored,
but never queried: the result of neither version of IsSelected() depends
on the section whose state is selected. Do not hold the state of
individual sections.

There is a theoretical change in behavior: Before, when a particular
section was unselected with SetSelected(Section, false), the focus state
of only the requested section was removed; now we remove the complete
focus. This change has no practical relevance, because there is no
user interface that can unselect individual piece sections.
2021-10-31 15:50:57 +01:00
Johannes Sixt
f81f949dc6 Hold states "hidden" and "pivot point valid" in separate variables.
In this way, the accesses are more natural than bit manipulations.
2021-10-31 15:50:57 +01:00
Leonardo Zide
c47eb30d90 Fixed menus in fullscreen mode on Windows. Fixes #739.
https://doc.qt.io/qt-5/windows-issues.html#fullscreen-opengl-based-windows
2021-10-17 17:16:10 -07:00
Leonardo Zide
4b9ecf4227 Slow down mouse wheel zoom when the shift key is down. 2021-10-02 17:40:21 -07:00
Leonardo Zide
d56e389ee4 Qt 5.4 fixes. 2021-07-05 17:07:24 -07:00
Leonardo Zide
e0b77b17bd Qt6 fixes. 2021-07-05 17:00:41 -07:00
Leonardo Zide
5decefcb73 Crash fix. 2021-06-27 12:44:05 -07:00
Leonardo Zide
5e3ca0e781 Fixed loading textures from cached pieces. 2021-06-27 12:42:53 -07:00
Leonardo Zide
a9971b0b1a Fixed rendering issues with missing textures. 2021-06-27 12:13:54 -07:00
Leonardo Zide
bad9bd5069 Fixed wrong texture mesh indices. Fixes #727. 2021-06-26 14:01:02 -07:00
Leonardo Zide
8dcc1bb970 Warning fix. Fixes #725. 2021-06-26 13:27:17 -07:00
Leonardo Zide
c236ea02bb Moved view manipulator to a separate class. 2021-06-20 11:40:16 -07:00
Leonardo Zide
bd12ad5842 Small cleanup. 2021-06-13 16:24:12 -07:00
Leonardo Zide
0fa195b334 Array cleanup. 2021-06-13 15:41:57 -07:00
Leonardo Zide
7162639295 Calculate texcoords at the end of the file load. Fixes #641. 2021-06-13 15:35:40 -07:00
Leonardo Zide
bf7a382dcc Store texture projection as part of the section while loading meshes. 2021-06-12 19:29:13 -07:00
Leonardo Zide
d84d8f1f3c Fixed lcArray::Add() not default initializing. 2021-06-12 19:23:12 -07:00
Leonardo Zide
ee5c551bc8 Refactored duplicate code. 2021-06-06 10:51:34 -07:00
Leonardo Zide
613bc91c4d Moved texture stack from function parameter to member variable. 2021-06-05 17:44:20 -07:00
Leonardo Zide
aa0106eedb Updated version. 2021-06-05 16:41:42 -07:00
Leonardo Zide
1e3f256cf2 Fix for Qt 5.4. Fixes #721. 2021-06-05 11:20:46 -07:00
Leonardo Zide
685cf78515 Added option to choose the axis icon location. Closes #638. 2021-05-30 11:52:13 -07:00
Leonardo Zide
f69ecf7fc0 Keep BFC disabled. Fixes #717. 2021-05-16 15:53:59 -07:00
Leonardo Zide
f1f2a8bd26 Reset view when creating a new submodel. Fixes #703. 2021-05-01 16:24:55 -07:00
Leonardo Zide
ccd9904c4c Fixed drawing the rotate overlay during in place submodel edits. 2021-04-25 12:02:57 -07:00
Leonardo Zide
371c248f10 Fixed moving pieces while editing submodels in place. 2021-04-25 11:36:35 -07:00
Leonardo Zide
249fa262f7 Disabled relative movement when moving pieces without using the arrows. 2021-04-24 10:15:13 -07:00
Leonardo Zide
cd588f64aa Don't enable relative transforms by default. 2021-04-24 10:03:33 -07:00
Leonardo Zide
a53fd42710 Removed triple error message boxes from preview. 2021-04-17 11:49:41 -07:00
Leonardo Zide
1a64a7876d Highlight missing parts in the timeline. Fixes #438. 2021-04-17 10:50:38 -07:00
Leonardo Zide
48c6fad09e Flush vertex attribs when the buffer object changes. Fixes #697. 2021-04-17 10:38:23 -07:00
Leonardo Zide
a93a119ee2 Small mesh loader cleanup. 2021-04-10 16:18:15 -07:00
Leonardo Zide
278e953b81 Rewrote vertex attribute cache. 2021-04-10 15:22:41 -07:00
Leonardo Zide
b6acab713d Removed redundant state changes. 2021-03-28 13:30:35 -07:00
Leonardo Zide
989373155f Draw timer on screen. 2021-03-28 11:50:28 -07:00
Leonardo Zide
c613ff6bb4 Added simple draw timer. 2021-03-27 19:19:29 -07:00