Commit Graph
49 Commits
Author SHA1 Message Date
itsmattkc 3ef119c0ab removed shaders.qrc
Accidentally got merged in on this branch.
2020-05-06 23:22:49 +10:00
itsmattkc 1ceefb6dba Merge branch 'master' into gizmos 2020-05-06 16:35:40 +10:00
itsmattkc fb625cb76e nodes: removed XML infrastructure 2020-05-06 15:06:37 +10:00
itsmattkc 0d0d35f025 Merge branch 'ire_lines' of https://github.com/ThomasWilshaw/olive into ThomasWilshaw-ire_lines 2020-05-06 00:12:37 +10:00
itsmattkc 74d252c5c0 nodes: use defined categories rather than arbitrary string based 2020-05-05 22:12:15 +10:00
Thomas Wilshaw 1e81969fca Waveform fixes
- Due to a floating point division error not all the bars on the waveform were
  being drawn.
- Fix ratio in the fragment shader
2020-05-05 11:29:15 +01:00
itsmattkc c387ce1cd7 polygon node: early crude implementation 2020-05-05 00:22:49 +10:00
itsmattkc 544a8855d3 waveform: update for glsl 150 2020-04-29 15:56:46 +10:00
Troy James Sobotka 4af10b2b5c Update Waveform Output
Updates:
 * Added IRE text on 20% increments
 * Added waveform lines that work
 * Scaled waveform to a subsection of the surface
2020-04-28 15:06:22 -07:00
Troy James Sobotka b9a62eb1aa Add lines
Adding waveform lines. Still requires scaling to
fit in arbitrary range.
2020-04-28 15:06:22 -07:00
Troy James Sobotka 5dd999b406 First working pass of Waveform
Remove the sum, add some commments, and
make it scale to the full window.

TODO:
 * Hook up CM.
 * Add UI for intensity
 * Add lines at 20% increments, plus under /
    overshoot?
 * Add UI for increments.
2020-04-28 15:06:22 -07:00
Troy James Sobotka f82bd39f0e Minor tweaks
Cleanup.
2020-04-28 15:06:22 -07:00
Troy James Sobotka c0b4cb28e0 Temp waveform work. 2020-04-28 15:06:22 -07:00
itsmattkc e7e895739b Merge pull request #1138 from olive-editor/BrimsonBhin-patch-1
Gaussian Blur: Use straight multiply
2020-04-29 04:52:22 +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
BrimsonBhin 0703a5851b Gaussian Blur: Use straight multiply
Results are identical (tested with Olive 0.1.x). Using a straight multiply is faster if the compiler doesn't optimize pow(). It's also safer because with pow(), [the result is undefined if x<0 or if x=0 and y≤0](https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/pow.xhtml).
2020-04-23 22:02:47 -07:00
Simran Brucherseifer 5da9848de7 Upgrade shaders from GLSL 110 to 150 (OpenGL 3.2) 2020-04-22 11:28:33 +02:00
itsmattkc 258f83d5d3 node: fixed bug that failed to load some default values from shader xml 2020-04-22 18:13:53 +10:00
itsmattkc 6f4bf70d3e scope: implemented waveform scope 2020-04-20 22:58:29 +10:00
itsmattkc cb14af326c removed opacity node
This node has been superseded by the math node since it essentially functions
as a multiply.
2020-04-20 17:48:35 +10:00
itsmattkc fa0afb74c8 solid: updated default value to use new syntax
Using ':' instead of ',' should avoid any potential internationalization issues
regarding languages that use ',' for decimals rather than '.'
2020-04-19 00:03:05 +10:00
itsmattkc a93b06b7a2 Revert "solid shader: moved from generator to input category"
This reverts commit 07dfe1c364.
2020-04-16 23:15:19 +10:00
itsmattkc 8656b79319 opacitynode: switch view to percent rather than as a normal number 2020-04-16 14:54:46 +10:00
itsmattkc b4795c0222 blur: merged box and gaussian blurs into one node
While these are two separate blur effects, merging them into one node will
allow quick swapping of blur methods.
2020-04-16 13:17:30 +10:00
itsmattkc 07dfe1c364 solid shader: moved from generator to input category 2020-04-15 02:52:12 +10:00
itsmattkc c538f2a421 solid: fixed erroneous shader reference in XML file 2020-04-04 03:47:34 +11:00
itsmattkc f3290003be colordialog/wheel/gradient: implemented basic UI components for color picking 2020-04-02 13:02:30 +11:00
itsmattkc d427d48ab1 stroke effect: implemented 'inner' option 2020-03-12 12:04:19 +11:00
itsmattkc 4914182206 stroke: fixed duplicate id 2020-02-20 16:38:46 +11:00
itsmattkc 97dadace1f shaders: added stroke shader 2020-02-14 19:13:30 +11:00
itsmattkc 0bee4b2e14 boxblur: added 'repeat edge pixels' parameter 2020-02-14 14:56:09 +11:00
itsmattkc 721ec1fe9b gaussianblur: added 'repeat edge pixels' parameter 2020-02-14 14:52:09 +11:00
itsmattkc d66425c324 prepared gl improvements for merge 2020-02-14 02:35:10 +11:00
itsmattkc 6a47b05ab8 work on oslworker 2020-02-14 02:13:38 +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 46b3f9db48 moved alphaover to external file format 2019-12-15 03:41:37 +11:00
itsmattkc ae7c9597e2 ported solid color generator to external shader 2019-12-15 03:07:10 +11:00
itsmattkc 965519e9cf ported opacity node to external file format
The plan is to port all nodes that can be external to the external file format.
This should help keep things maintainable.
2019-12-15 02:51:28 +11:00
itsmattkc fdd7474a99 fixed bugs in the blur shaders 2019-12-15 02:38:55 +11:00
itsmattkc 23905f1eee added external blur files to the shader resource file 2019-12-15 00:38:36 +11:00
itsmattkc b5b6ffa0a1 reimplemented blur shaders with new format xml metadata
These could be reimplemented almost wholesale, however the code has been
cleaned up and documented and the XML metadata has been updated to support
international translations.
2019-12-15 00:37:44 +11:00
itsmattkc 62120f4943 cross dissolve: improved algorithm
Multiplying by alpha twice turned out to be unnecessary.
2019-12-12 19:04:28 +11:00
itsmattkc 526f07ba08 implemented demonstrative dip to black transition 2019-12-12 19:00:49 +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 da3ff98774 alphaover: return black if no textures are enabled
Not doing this appeared to corrupt the composited buffer somehow and return a
black image if there were two empty texture connections daisychained together
on two AlphaOver instances.
2019-12-10 01:33:48 +11:00
itsmattkc 92776b877d implement texture null check flag on shaders
Sets a flag if the texture being sent to the shader is null
2019-12-10 01:20:57 +11:00
itsmattkc 2fb4047e6f moved all shader code out of C++ source and into external shader files
General code cleanup and easier maintenance.
2019-12-10 00:10:00 +11:00
itsmattkc daafcbfc95 began external shader files that can be compiled into the program
Helps write shaders rather than embedding them into the C++ code.
2019-12-09 23:49:44 +11:00