Commit Graph
22 Commits
Author SHA1 Message Date
itsmattkc ce353ccbed timeline: various work to improve timeline behavior, particularly when dealing with transitions 2020-07-22 18:09:57 +10:00
itsmattkc d54d59fac6 transition: remove alpha channel requirement 2020-07-19 11:33:51 +10:00
itsmattkc 662d66ad10 transitions: extended transition logic
General code and functionality improvements. Moved more code out of the
OpenGL backend for portability. Implemented audio transitions.
Implemented basic transition animation curve settings.
2020-07-16 00:36:21 +10:00
itsmattkc ae62750d9d various: fix broken transition creation
It's now possible to create transitions! But they're still broken in
a multitude of other ways so plenty more work to do hahahahahahahahaha
2020-07-14 22:31:11 +10:00
itsmattkc 71ec148e76 renderer: moved all shader code into one solidified function
Makes texture-based optimizations easier when they're all in one place.
2020-06-10 01:54:02 +10:00
itsmattkc d49c6a059c nodes: optimize blocks so they don't unnecessarily change the hash 2020-05-06 16:14:23 +10:00
itsmattkc aecfa842c3 nodes: moved hashing to nodes so they can override behavior if they wish 2020-04-30 01:56:08 +10:00
itsmattkc a796cb2c13 nodeparamview: separated the NodeParamView body into a separate widget for nesting
Will allow display of NodeInputArrays.
2020-04-18 23:28:11 +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 5d8be03970 implemented support for trimming transitions 2020-01-07 01:47:58 +11:00
itsmattkc d3ed7f9863 hash the transition's progress
Since the transition progress directly affects the resulting image, it's
important to include it in the frame hash.
2020-01-06 17:25:38 +11:00
itsmattkc 8358d7d221 moved progress calculations from openglworker to transitionblock
These functions are universal transition functions that have use outside of
the OpenGL workers.
2020-01-06 16:35:45 +11:00
itsmattkc 8391a732b1 automatically store block connections in the transitionblock class
Convenience code that automatically returns valid blocks if they're connected.
2020-01-06 16:29:14 +11:00
itsmattkc dae09abf45 use speed value instead of media out value
This functions more or less identically to using a media out value, but the
desired speed is preserved through block length changes, even if the block's
length is reduced to zero (i.e. no rounding errors).
2020-01-06 15:21:27 +11:00
itsmattkc 7a512cc540 set some parameters to not-keyframable 2019-12-27 01:25:52 +11:00
itsmattkc c62b59965e updated nodes for new input structure
Since all NodeInputs will generally only need their data type and default
value set once, we place it all into the constructor for cleaner and easier
to manage code.
2019-12-26 16:29:56 +11:00
itsmattkc f616a0d123 ported dip to black transition to external type and reimplemented drop shadow shader 2019-12-18 01:18:31 +11:00
itsmattkc 4e6da87585 ported crossdissolve to external shader 2019-12-17 15:58:16 +11:00
itsmattkc 4ba024e3ae implemented media out value to allow speed changes in clips 2019-12-16 18:29:35 +11:00
itsmattkc 76c0399b75 implemented base transition support
While very much incomplete, transitions can now be created and will render
correctly.
2019-12-12 15:21:39 +11:00
itsmattkc 5affc37699 added custom category and data types to transition base class 2019-12-09 23:46:50 +11:00
itsmattkc 0c6ec926b6 started base transition type
Like the base "Block" type, the "Transition" type will not be a node used on its
own, it will have to be derived. This type defines some basic behavior for a
transition (e.g. how much it overlaps its "from" and "to" blocks).
2019-12-07 02:49:30 +11:00