Commit Graph
45 Commits
Author SHA1 Message Date
itsmattkc 4b366a9b73 update copyright year to 2022 2022-05-10 10:38:56 -07:00
itsmattkc 239a019690 many improvements and reimplementations 2021-11-29 21:22:49 -08:00
itsmattkc a6af473f53 reimplemented node positioning and deleting 2021-11-17 12:09:41 -08:00
itsmattkc 93be94bc2c more work 2021-11-16 23:58:34 -08:00
itsmattkc 67c7c71ca2 implemented "value hints" for choosing output values to use 2021-09-17 20:56:53 -07:00
itsmattkc b07bccb7dc nodes: revert to single output 2021-09-07 22:01:36 -07:00
itsmattkc fac8dbbc19 nodegraph: use qhash instead of qmap
Qt says this is better
2021-07-23 22:09:00 -07:00
itsmattkc d83087a4ef nodegraph: added more helper functions for contexts 2021-07-08 18:48:02 -07:00
itsmattkc 2162e9d8f8 nodeview: improved user manual positioning 2021-05-28 13:29:51 +10:00
itsmattkc 4b14352bcb save new node contexts to project file 2021-05-27 15:14:03 +10:00
itsmattkc f876240443 use nodes as context rather than void 2021-05-27 13:32:32 +10:00
itsmattkc 3c17ecc94e more work 2021-05-21 12:28:52 +10:00
itsmattkc 8e9859b2b3 initial commit 2021-05-16 09:58:57 +10:00
itsmattkc 77d4b18a60 updated copyright year for 2021 [skip ci] 2021-04-17 18:56:50 +10:00
itsmattkc e89e348f6e nodegraph: delete nodes bottom to top when clearing 2021-04-11 12:59:25 +10:00
itsmattkc 500fb58d49 arranged items so they are inputs of folder rather than outputs 2021-03-12 12:22:19 +11:00
itsmattkc b21271534f added UI for editing video parameters in nodes 2021-02-20 13:27:56 +11:00
itsmattkc d7c5ac4b44 implement entire project in nodes
Project items are now represented directly in nodes opening up more versatility and possibilities. This is the first iteration of this and will be buggy. Need to test thoroughly.
2021-02-15 21:31:57 +11:00
itsmattkc 81c1922911 use strings to connect nodes
This makes the node system somewhat more high-level with the intent of making
working with them far more flexible and stable. By making the architecture more
abstracted, it becomes far less rigid which should allow us to do even more
with it and make it much less crash prone.
2021-02-09 15:48:37 +11:00
itsmattkc 2af776b110 fixed various caching update issues 2021-01-22 14:33:30 +11:00
itsmattkc b83677e319 moved input signals to graph to prevent signal desyncs 2021-01-14 10:32:42 +11:00
itsmattkc 181235f6ce began new infrastructure
Yep, this is another one of my "famous" sweeping rewrites. Expect things to break.

Goals for this are:
- Greatly simplify node connections (particularly with arrays) so the code requires less maintenance/is more stable
- Redesign node structure to address issues where UI would stall for lengthy periods of time
- Less reliance on shared ptrs/greater reliance on QObject system for inheritance/memory management
- General code cleanup and improvements
2021-01-05 11:20:38 +11:00
itsmattkc e12013e2fb don't use shared ptrs for project items 2020-12-16 10:28:43 +11:00
itsmattkc 75d4cd899b use hardcoded namespace
The macro defined namespaces confused the hell out of lupdate and more or less broke translations permanently. Looks like the only way we can do it is to have a hardcoded namespace, which goes against my instinct, but honestly how likely is it that we'll change the namespace anyway (I guess forks might want to do it, but that's their problem ;) )
2020-11-17 20:24:42 +11:00
itsmattkc d241090a9f finally updated the copyright year 2020-11-17 20:13:22 +11:00
itsmattkc 2fb7066155 nodes: allow stalling graph signals until an operation is over 2020-10-02 13:25:49 +10:00
itsmattkc a0a7d106dc mathnode: implemented add/subtract/multiply/divide/power functions
Includes implementing combobox UI for the NodeParamViewWidgetBridge.
2020-04-15 01:52:24 +10:00
itsmattkc 1aa87cbda6 various: encapsulate all code in the olive namespace to avoid name collisions
Large-scale code cleanup. Also adds a license to the top of all files that were
missing it.
2020-04-06 15:29:53 +10:00
itsmattkc bb57884cac added save functions to various classes
Each class is responsible for its own saving and loading from the XML data
in order to reduce the complexity of the save code.
2020-01-12 18:36:31 +11:00
itsmattkc 323718bc11 moved timeline undoable commands to using the new NodeAddCommand
Previous iteration used some "magic code" that added clips automatically to the
timeline. This was functional but ultimately outside of the undo commands'
control meaning nodes could be infinitely added and abandoned. This makes the
add process part of the undo command which means it's all undoable as the user
would expect.
2019-12-14 00:04:57 +11:00
itsmattkc 26b3993b9d made vast improvements to rendering engine and node structure
This was many changes that were largely fundamentally related. They included:
- More const modifiers to enforce read only node graphs
- Support for fragment and vertex shaders from the nodes
- Support for node code loaded externally (embedded into the binary)
- Fixed issue preventing two textures from being used in a shader
- Removed several unused functions and cleaned up code
- Fixed video media node misreading its matrix input
2019-12-09 23:50:52 +11:00
itsmattkc b1535b73b7 implemented clear() function for nodegraphs
Added a convenient (destructive) way of emptying a NodeGraph completely.
2019-11-23 08:48:59 +09:00
itsmattkc 3411e45774 preliminary support for multiple timeline sections 2019-10-05 07:33:27 +10:00
itsmattkc 371d0e2b37 some render cache adjustments 2019-09-04 10:58:50 +10:00
itsmattkc 4f4737a395 added some more timeline functions 2019-08-13 21:50:39 +10:00
itsmattkc 737442e513 added takenode function to graph 2019-08-13 18:40:39 +10:00
itsmattkc 03a0c64e15 some timeline work 2019-08-13 18:14:36 +10:00
itsmattkc e9702aeb52 added some basic timeline functionality 2019-08-12 23:24:58 +10:00
itsmattkc 9b63cc7755 inserting blocks through the timeline implemented 2019-08-11 17:30:27 +10:00
itsmattkc f8830beac7 created new sequence dialog 2019-07-21 18:21:40 -07:00
itsmattkc 9f6d0f9dc7 documented new node classes 2019-07-17 03:05:25 -04:00
itsmattkc a78cc3950a various node UI improvements 2019-07-16 13:25:38 -04:00
itsmattkc dc2101938e began node viewer for dag insight 2019-07-15 03:52:44 -04:00
itsmattkc f0bf51e4a6 began work on node view panel 2019-07-14 10:14:57 -04:00
itsmattkc 60b04f98b4 began new node infrastructure 2019-07-10 03:00:35 -05:00