itsmattkc
b233aa5319
added signal for an edge changing that can ripple through the graph
...
Useful for detecting when a graph needs recompiling, in tandem with the
"InvalidateCache()" signal when necessary, this signal ripples through the
nodes when any of the connections change which will likely need handling by
the renderer.
2019-11-23 08:51:15 +09:00
itsmattkc
492c8f474a
added clone functions for nodes
...
Since nodes are are extremely derivative types, we use a clone/copy function
to produce new types of the derived class easily.
2019-11-22 16:53:30 +09:00
itsmattkc
073176a45d
added function for returning a block at a time
...
Assists with certain timeline-related functions.
2019-11-19 22:25:04 +09:00
itsmattkc
065fbc0428
return nullptr if a TrackReference references a track that doesn't exist
...
Fixes assert trying to access an array location that doesn't exist.
2019-11-19 22:24:23 +09:00
itsmattkc
9d154e1909
use different signals when the audio invalidates vs the video
...
Both audio and video renderers were working off the same invalidation signal
(i.e. changing audio would also trigger a re-render of the video). This is
obviously suboptimal and now they are separate.
2019-11-17 13:44:50 +09:00
itsmattkc
788502cd11
removed another unnecessary node function
2019-11-02 18:12:54 +11:00
itsmattkc
16ac2fc0e1
sweeping node graph changes for new rendering pipeline
...
The new rendering pipeline strives to simplify the nodes themselves as much
as possible and move much of the logic to an external rendering engine. This
change removes all of the responsibilities that no longer belong to the
nodes themselves and will soon be folded into the renderer.
2019-11-02 01:39:37 +11:00
itsmattkc
77bcb70dac
started porting renderer to new portable form
2019-10-31 19:14:58 +11:00
itsmattkc
d96395ea27
don't use track as the time chooser
...
This design, while not completely illogical, seems to betray the DAG design
and borders on impossible to actually recompile. The plan is to build this
functionality into the renderer instead.
2019-10-29 01:41:08 +11:00
itsmattkc
401aff52a8
attempts at folding opencl support in
2019-10-28 18:21:20 +11:00
itsmattkc
4d96ac9e39
don't police data type connections between nodes
...
Nodes were previously written to be "strongly typed" in that a parameter's
"type" enforced whether it could be connected to another. All code related
to that has now been removed since not only is it hard to maintain and
likely unnecessary, it's possible the nodes will work differently later on
anyway.
2019-10-25 00:44:14 +11:00
itsmattkc
7dec79ceaa
various changes to rendering flow and structure
2019-10-23 00:42:52 +11:00
itsmattkc
5f86b9b9c7
nodes are given a time range
2019-10-22 14:58:06 +11:00
itsmattkc
9da5e7c9be
added sample retrieve function
2019-10-22 13:29:11 +11:00
itsmattkc
f1e4e1c685
added samples type and duplicated video renderer
2019-10-22 13:22:30 +11:00
itsmattkc
b3e6f8bbee
connect length to viewer node for now
2019-10-20 21:47:46 +11:00
itsmattkc
1ded30c1d9
base support for multiple timeline sections
2019-10-11 18:26:56 +11:00
itsmattkc
e9f5d0d248
work towards shifting functions from timelineview to timelinewidget
2019-10-11 16:57:12 +11:00
itsmattkc
405f4e5e00
updated timeline tools to take custom mouse events
2019-10-11 09:35:11 +11:00
itsmattkc
31f11cd87d
timeline hierarchical length signalling
2019-10-07 02:33:52 +11:00
itsmattkc
f34eb0dfb6
added vertical alignment to timelineview
2019-10-05 08:27:07 +10:00
itsmattkc
3591f0c7b3
fixed crash when tracks are added
2019-10-05 07:44:11 +10:00
itsmattkc
3411e45774
preliminary support for multiple timeline sections
2019-10-05 07:33:27 +10:00
itsmattkc
ea4f6f43c4
added support for multiple timeline sections
2019-10-05 04:38:17 +10:00
itsmattkc
150afb6ebc
fixed hardcoded viewer size
2019-09-27 03:51:08 +10:00
itsmattkc
cf3e8d80d1
implemented 'ripple to' timeline actions
2019-09-24 22:45:30 +10:00
itsmattkc
9fa22938b9
work towards making timeline actions all undoable
2019-09-23 23:00:15 +10:00
itsmattkc
d0d4756129
some ripple behavior fixes
2019-09-21 01:01:15 +10:00
itsmattkc
389e723416
conformed viewer node/panel affinity
2019-09-20 05:12:34 +10:00
itsmattkc
814ee14c0b
minor improvements
2019-09-20 04:45:17 +10:00
itsmattkc
03d81c7003
flipped timeline node/panel affinity
2019-09-20 04:40:38 +10:00
itsmattkc
30be1b626d
further ripple progress
2019-09-19 17:05:41 +10:00
itsmattkc
5ab622ba81
track enhancements
2019-09-13 02:47:09 +10:00
itsmattkc
7b15a63e06
changed refresh system slightly and added include dirs for deps
2019-09-11 19:51:31 +10:00
itsmattkc
1879dac247
minor fixes and debug output
2019-09-11 17:35:45 +10:00
itsmattkc
ba7a10177f
fixed various caching issues when rapidly changing values
2019-09-09 04:07:51 +10:00
itsmattkc
6fcfd01c8f
fixed viewer flicker when rapidly changing parameters
2019-09-08 22:50:04 +10:00
itsmattkc
c2e59b0855
alpha over and opacity nodes are now functional
2019-09-06 15:45:12 +10:00
itsmattkc
371d0e2b37
some render cache adjustments
2019-09-04 10:58:50 +10:00
itsmattkc
12bc5839a6
fixed various caching issues
2019-09-02 22:58:44 +10:00
itsmattkc
3a9af58344
adjusted invalidatecache function
2019-09-02 20:11:42 +10:00
itsmattkc
e87ed9dd3d
finished hashing algorithm for cache
2019-09-02 19:51:31 +10:00
itsmattkc
f2972651af
several adjustments to node caching system
2019-09-02 11:29:50 +10:00
itsmattkc
deff114241
media node upgrades to reference pixel format
2019-08-29 12:30:42 +10:00
itsmattkc
7dc2290496
shift renderer prototype to new node structure
2019-08-28 02:40:44 +10:00
itsmattkc
5afe7d523c
shifted to new dependency structure
2019-08-28 01:24:50 +10:00
itsmattkc
b9ce02a0ec
separated setting time and processing node functions
2019-08-27 23:38:24 +10:00
itsmattkc
09a6a5a12a
completed prototype of background service that traverse the graph
2019-08-25 13:51:47 +10:00
itsmattkc
438e7081f9
foundations for background caching
2019-08-24 22:16:01 +10:00
itsmattkc
9439494c10
added basic razor tool
2019-08-23 12:12:13 +10:00