Michael Fabian 'Xaymar' Dirks
39e6959c67
source-shader: Fix rendering and reapply parameters on change
2019-08-07 18:43:34 +02:00
Michael Fabian 'Xaymar' Dirks
181df6e3d9
filter-shader: Reapply parameters if there was a change
2019-08-07 18:43:19 +02:00
Michael Fabian 'Xaymar' Dirks
9be36d5ec4
gfx-effect-source: Add function to get "default" value
2019-08-07 18:42:54 +02:00
Michael Fabian 'Xaymar' Dirks
2b2f87e6fc
gfx-effect-source: Fix validity check
...
Had the check inverted oops.
2019-08-07 18:16:20 +02:00
Michael Fabian 'Xaymar' Dirks
c88535c7ab
gfx-effect-source: Remove/replace old defines
2019-08-07 18:11:46 +02:00
Michael Fabian 'Xaymar' Dirks
c670ab60a1
source-shader: Use custom draw video_render
2019-08-07 18:10:44 +02:00
Michael Fabian 'Xaymar' Dirks
8cb2ddaa82
source-shader, cmake: 'Shader' source
2019-08-07 18:06:48 +02:00
Michael Fabian 'Xaymar' Dirks
1b34e5210a
gfx-effect-source: Expose defines to set default file and technique
2019-08-07 18:06:24 +02:00
Michael Fabian 'Xaymar' Dirks
9ad93c0ee9
filter-shader: Rename from Custom shader
2019-08-07 18:05:49 +02:00
Michael Fabian 'Xaymar' Dirks
98a18480d0
gfx-effect-source: Fix UI mode detection
2019-08-07 17:45:32 +02:00
Michael Fabian 'Xaymar' Dirks
8ec8a22928
filter-custom-shader: Add new callbacks
2019-08-07 17:37:52 +02:00
Michael Fabian 'Xaymar' Dirks
335847945d
gfx-effect-source: Allow overriding value and visibility of parameters
2019-08-07 17:37:34 +02:00
Michael Fabian 'Xaymar' Dirks
ff4a556f3f
filter-custom-shader: Update to use new gfx::effect_source::effect_source
2019-08-07 17:15:46 +02:00
Michael Fabian 'Xaymar' Dirks
bde4e278bf
gfx-effect-source: Further work on rewrite
...
This partially implements most behavior to an acceptable degree for use right now.
2019-08-07 17:14:44 +02:00
Michael Fabian 'Xaymar' Dirks
845a2cbb21
gs-effect: Don't include the null character in strings
2019-08-07 17:14:14 +02:00
Michael Fabian 'Xaymar' Dirks
b88cc0fe01
gs-effect: Check correct size in get_default_string
2019-08-07 17:07:54 +02:00
Michael Fabian 'Xaymar' Dirks
8603fef897
gs-effect: Fix get_string and get_default_string
2019-08-07 16:41:26 +02:00
Michael Fabian 'Xaymar' Dirks
c6559d84ba
gs-effect: Check if effect is nullptr, not if its a valid ptr
...
Woops, that somehow went completely by me without checking.
2019-08-07 16:17:12 +02:00
Michael Fabian 'Xaymar' Dirks
7b0159947e
gs-effect: Add helpers and fix bad enable_shared_from_this
2019-08-07 16:11:09 +02:00
Michael Fabian 'Xaymar' Dirks
e59bc2fdd2
filter-custom-shader: Rewrite from scratch
2019-08-07 12:43:23 +02:00
Michael Fabian 'Xaymar' Dirks
1092dc1de1
gfx-effect-source: Complete rewrite from scratch
2019-08-07 12:42:25 +02:00
Michael Fabian 'Xaymar' Dirks
087cd79a7a
filter-color-grade: Always return something in get_width/get_height
2019-08-07 12:41:34 +02:00
Michael Fabian 'Xaymar' Dirks
f5b4c1f7a1
filter-color-grade: Fix crash if color-grade.effect is missing
2019-08-04 23:20:35 +02:00
Michael Fabian 'Xaymar' Dirks
71b223dcb5
gs-effect: Add ::create for shared_ptr and remove default constructor
2019-08-04 23:19:38 +02:00
Michael Fabian 'Xaymar' Dirks
9db7cd8da2
filter-displacement: Fix crash on nullptr file path
2019-08-04 23:14:43 +02:00
Michael Fabian 'Xaymar' Dirks
0c447f4055
gs-effect: Use std::shared_ptr and track effect lifetime
...
This fixes the case where the effect vanishes, but we still hold an invalid pointer to a parameter of that effect. With the new code, the effect will not vanish as long as an effect pointer exists.
However, all effects must be created either through std::shared_ptr or std::make_shared. If they were not made through one of those means, the code will crash on the ->shared_from_this() call.
2019-08-04 23:12:30 +02:00
Michael Fabian 'Xaymar' Dirks
ff6f4d5ddf
gs-effect: Add string support, get accessors and annotations
2019-08-04 22:44:46 +02:00
Michael Fabian 'Xaymar' Dirks
9be02e6f2b
project: Fix up previous commit
2019-08-04 20:29:04 +02:00
Michael Fabian 'Xaymar' Dirks
0e350415b3
project: Apply new coding guidelines
2019-08-04 16:20:26 +02:00
Michael Fabian 'Xaymar' Dirks
533de01061
filter-color-grade: Always return true in tool_modified
2019-08-04 12:34:54 +02:00
Michael Fabian 'Xaymar' Dirks
2ca15bb28c
source-mirror: Allow overriding audio layout
2019-08-04 12:34:42 +02:00
Michael Fabian 'Xaymar' Dirks
93ba39545f
filter-color-grade: Implement Tool selection for OBS Studio 24.x
2019-08-03 12:29:47 +02:00
Michael Fabian 'Xaymar' Dirks
721f2bdf8f
filter-color-grade: Fully feature Color Grading filter
...
Allows controlling Lift, Gamma, Gain, Offset, Tint and various Correction factors directly from within OBS without having to create a new LUT.
2019-08-02 23:49:18 +02:00
Michael Fabian 'Xaymar' Dirks
a6ce6c5860
utility: Add some extra functionality
2019-08-02 23:49:17 +02:00
Michael Fabian 'Xaymar' Dirks
ad270bc6ee
gs-effect: Fix uninitialized member variable
2019-08-02 23:49:17 +02:00
Michael Fabian 'Xaymar' Dirks
c716e75ba3
project: Fix various catch-by-value locations
2019-07-27 19:57:50 +02:00
Michael Fabian 'Xaymar' Dirks
e887a53463
filter-sdf-effects: Fix a crash due to failed rendering
...
For whatever reason, the initial render target render fails when an async source is being used.
2019-07-27 19:57:49 +02:00
Michael Fabian 'Xaymar' Dirks
2c94852ba8
source-mirror: Allow changing source alignment
...
Adds a new property to control the alignment of the source within the calculated boundary when rescaling the source. Also fixes the permanently left aligned mirror at the same time.
2019-05-28 20:04:26 +02:00
Michael Fabian 'Xaymar' Dirks
45728702ff
utility: Add recursive text lookup function
...
Similar to the one used in enc-amf, allows looking up string containing other strings, thus drastically simplifying the necessary time to build translated strings, while also caching them for future use.
2019-05-28 19:54:23 +02:00
Michael Fabian 'Xaymar' Dirks
95b1e81ee5
filter-dynamic-mask: Don't crash if a texture is missing
...
When copying or re-ordering filters, an occasional crash can be observed due to the rendering not being possible yet. With this, it will simply revert back to the original source instead of crashing.
2019-05-28 02:51:27 +02:00
Michael Fabian 'Xaymar' Dirks
ccc4c6ea22
filter-sdf-effects: Fix and improve effect rendering
...
Fixes the bug that rendering an outline would remove all other effects not directly under the outline, while also improving the rendering speed drastically by only initializing and clearing the rendertarget once instead of for each effect.
2019-05-28 02:51:27 +02:00
Michael Fabian 'Xaymar' Dirks
9e7894c9c3
filter-dynamic-mask: Implement Dynamic Mask filter
...
This filter allows the use of another source as a mask, allowing complex filter graphs and trippy effects, such as creating a text source with three animated videos, each using a different color channel as the mask.
Fixes #18 .
2019-04-27 17:56:10 +02:00
Michael Fabian 'Xaymar' Dirks
c46e881697
obs-source: Don't un/register audio capture with no source
...
Fixes the log spam if a source could not be found.
2019-04-27 16:08:54 +02:00
Michael Fabian 'Xaymar' Dirks
8bb1ca50ac
obs-source-tracker: Also keep track of sources being renamed
...
When a source was renamed, obs::source_tracker did not use the new name and instead relied on the old name. This caused source lists with this feature to slowly degrade over time as sources were renamed, until libobs was restarted.
With this fix the renamed sources are now properly tracked, updating as expected.
Related Issue: #64
2019-04-27 16:07:50 +02:00
Michael Fabian 'Xaymar' Dirks
f6687c7ed6
filter-displacement: Don't crash if the file can't be found
...
Fixes a user reported issue where obs-studio began crashing out of nowhere.
2019-04-23 17:20:18 +02:00
Michael Fabian 'Xaymar' Dirks
bbcde070f3
filter-displacement: Do not allow zero-length file names
...
Fixes a crash when using c_str() on an empty string, causing an unexpected crash.
2019-04-23 17:00:18 +02:00
Michael Fabian 'Xaymar' Dirks
f8e685cf42
project: Apply clang-format manually again
2019-04-19 20:40:07 +02:00
Michael Fabian 'Xaymar' Dirks
be4d42312d
project: Fix all remaining portability issues
...
Clang on Windows and Clang on Linux behave differently, and of course GCC on Windows (MinGW) and GCC on Linux do too. This is the point where using either compiler on either platform should successfully compile the project without any issues.
Clang and GCC have a ton of warnings however, which definitely need to be fixed in the near future. Some of them are great warnings, like old C style casts, others are non-sense like suggest brackets.
Fixes #47
Fixes #60
2019-04-19 14:18:29 +02:00
Michael Fabian 'Xaymar' Dirks
aac52f736d
project: Clang support
...
Lots and lots of errors and warnings fixed with this single commit, in the name of clang support.
Related #60 , #47 .
2019-04-19 09:42:15 +02:00
Michael Fabian 'Xaymar' Dirks
432b8e8c14
source-mirror: Automatically update hover text for Bounds Type
2019-04-19 08:20:33 +02:00