itsmattkc
1b9bf6d92c
switched many QLists for QVectors
...
Minor optimization
2020-11-16 16:17:43 +11:00
itsmattkc
1dd7e24920
merge: removed debug line
2020-11-16 02:01:51 +11:00
itsmattkc
bb1f16c8e1
merge: don't merge if the blend texture is RGB
2020-11-15 22:47:10 +11:00
itsmattkc
0429e70fe0
merged all drawing functions into a single shader processing function
2020-11-10 15:50:13 +11:00
itsmattkc
f9af69ca81
mathbase: use sample indices and copy rather than zeroing out
2020-09-21 04:15:52 +10:00
itsmattkc
6309b8fbb7
math: fixed power function
...
Corrected shader code and fixed bug in widget bridge that reported an
incorrect index.
2020-07-17 12:33:28 +10:00
itsmattkc
ab74c1579e
mathnode: temporarily disable identity matrix detection
...
This code was faulty and needs extra functionality elsewhere to
actually work correctly.
2020-06-19 02:44:26 +10:00
itsmattkc
282824ac49
volume: base off math node
...
Shares code with math node rather than having it twice.
2020-06-13 18:13:07 +10:00
itsmattkc
af5097bf5f
nodes: revert shader ID to string
...
Much easier to manage this way and fixes a compile issue on several
platforms.
2020-06-12 16:02:29 +10:00
itsmattkc
7b9764254d
math: generate alpha channel only if multiplying a texture by a matrix
2020-06-12 03:44:23 +10:00
itsmattkc
e2e8a6859c
renderer: updated audio to work with minor node overhaul
2020-06-12 03:28:43 +10:00
itsmattkc
dd7af0e6bd
nodes: minor overhaul to functionality
...
The nodes now have more control over how their accelerated shaders/sample
functions are run, as well as how items are popped off the value tables.
This allows for various optimizations that we didn't have access to before.
2020-06-12 00:54:15 +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
430561e2ac
sequence: made divider a sequence parameter rather than a viewer parameter
...
Doing this makes the preview resolution an explicit project setting rather
than a temporary UI setting. This will allow more consistency when caching.
2020-06-08 14:41:35 +10:00
itsmattkc
c2e47a296c
timeline: heavily optimized and improved nearly all timeline optimizations
...
Features a lot of timeline-related cache optimizations as well as general
optimizations and improvements in timeline behavior. Should improve
usability significantly.
2020-06-01 04:42:59 +10:00
itsmattkc
25b35725f6
nodes: added more default values to nodes
2020-05-09 18:55:42 +10:00
itsmattkc
78e305a593
mergenode: optimize so null textures (gaps, etc.) don't affect the hash
2020-05-06 16:14:27 +10:00
itsmattkc
fb625cb76e
nodes: removed XML infrastructure
2020-05-06 15:06:37 +10:00
itsmattkc
74d252c5c0
nodes: use defined categories rather than arbitrary string based
2020-05-05 22:12:15 +10:00
itsmattkc
ac3f49a845
nodes: moved matrix input on "video input" elsewhere
...
Rather than plugging a matrix into the video input node, the matrix is now
multiplied by the video input using a math node. This is probably more
sensible from a user perspective.
This also means the renderer is tolerant of texture sizes that are not equal
to the sequence size, however most nodes will downsample the texture to the
sequence size (and if not, it will be downsampled once it is cached). Textures
will still *always* be in reference space and the sequence's format. This seems
like the best compromise between backend and frontend congruity.
2020-04-27 04:11:24 +10:00
Simran Brucherseifer
5da9848de7
Upgrade shaders from GLSL 110 to 150 (OpenGL 3.2)
2020-04-22 11:28:33 +02:00
itsmattkc
db117e0780
mathnode: increased decimal places
...
Also includes general improvements to the slider widget such as an optional
"autotrim" function to cut off trailing zeroes, a "format" string that's easier
to internationalize, and general tidiness.
2020-04-22 17:49:32 +10:00
itsmattkc
2f80be437a
node: fixed issue with "taking" values from input tables
...
As opposed to simply leaving all values in the table, nodes can now "take"
values that they use to free up memory (e.g. "taking" input buffers if they're
used to produce an output buffer).
This is a fairly large change, expect regressions.
2020-04-16 23:12:05 +10:00
itsmattkc
cb6c054b8d
trigonometrynode: implemented trigonometry node
2020-04-15 02:41:20 +10:00
itsmattkc
c761403ba4
mathnode: override texture x matrix op
2020-04-15 02:07:48 +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
e5ac9d48a6
mathnode: added path for math between a texture and a matrix
2020-04-14 23:07:00 +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
0752b75682
mathnode: disable method keyframing and connecting
...
There's probably no situation where these would need keyframing/connecting.
2020-04-04 04:12:16 +11:00
itsmattkc
1363d2b94c
mathnode: expanded math node
...
Implemented handling of various different types.
2020-04-01 05:21:50 +11:00
itsmattkc
2544c5e832
mathnode: added support for adding samples together
2020-03-29 03:29:18 +11:00
itsmattkc
7100d00060
nodes: made changes to the node system to allow for context sensitive shader code
...
Primarily implemented for the math node so a new shader can be generated and
compiled based on what inputs the node is receiving.
2020-03-29 03:11:30 +11:00
itsmattkc
52acb272bf
mathnode: added parameters
2020-03-29 00:22:44 +11:00
itsmattkc
938527b9fe
mathnode: began math node
2020-03-28 17:51:35 +11:00