From 6b30674254546a23aeebd47aa5fb93c700058a9d Mon Sep 17 00:00:00 2001 From: brunoherbelin Date: Mon, 27 Apr 2020 19:40:08 +0200 Subject: [PATCH] Implementation of masks (double texturing ImageShader) for sources. --- CMakeLists.txt | 9 ++++++++- ImGuiVisitor.cpp | 21 +++++++++++++++++++++ ImageShader.cpp | 19 ++++++++++++++++++- ImageShader.h | 7 +++++++ Source.cpp | 2 +- rsc/images/mask_circle.dds | Bin 0 -> 87536 bytes rsc/images/mask_halo.dds | Bin 0 -> 87536 bytes rsc/images/mask_linear_bottom.dds | Bin 0 -> 87536 bytes rsc/images/mask_linear_left.dds | Bin 0 -> 87536 bytes rsc/images/mask_linear_right.dds | Bin 0 -> 87536 bytes rsc/images/mask_linear_top.dds | Bin 0 -> 87536 bytes rsc/images/mask_roundcorner.dds | Bin 0 -> 87536 bytes rsc/images/mask_vignette.dds | Bin 0 -> 87536 bytes 13 files changed, 55 insertions(+), 3 deletions(-) create mode 100644 rsc/images/mask_circle.dds create mode 100644 rsc/images/mask_halo.dds create mode 100644 rsc/images/mask_linear_bottom.dds create mode 100644 rsc/images/mask_linear_left.dds create mode 100644 rsc/images/mask_linear_right.dds create mode 100644 rsc/images/mask_linear_top.dds create mode 100644 rsc/images/mask_roundcorner.dds create mode 100644 rsc/images/mask_vignette.dds diff --git a/CMakeLists.txt b/CMakeLists.txt index 3add2b9..05b2504 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -238,7 +238,14 @@ set(VMIX_RSC_FILES ./rsc/fonts/Roboto-Italic.ttf ./rsc/fonts/fa-regular-400.ttf ./rsc/fonts/fa-solid-900.ttf - ./rsc/images/mask_vignette.png + ./rsc/images/mask_vignette.dds + ./rsc/images/mask_halo.dds + ./rsc/images/mask_circle.dds + ./rsc/images/mask_roundcorner.dds + ./rsc/images/mask_linear_top.dds + ./rsc/images/mask_linear_bottom.dds + ./rsc/images/mask_linear_left.dds + ./rsc/images/mask_linear_right.dds ./rsc/images/v-mix_256x256.png ./rsc/images/rgb.png ./rsc/images/busy.png diff --git a/ImGuiVisitor.cpp b/ImGuiVisitor.cpp index 65d4505..07f7ddc 100644 --- a/ImGuiVisitor.cpp +++ b/ImGuiVisitor.cpp @@ -1,5 +1,8 @@ #include "ImGuiVisitor.h" +#include +#include + #include #include #include @@ -133,7 +136,25 @@ void ImGuiVisitor::visit(Shader &n) void ImGuiVisitor::visit(ImageShader &n) { + ImGui::PushID(n.id()); + // get index of the mask used in this ImageShader + int item_current = 9; // default to Custom mask (i.e. not in the list) + auto it{ find(ImageShader::mask_presets.begin(), ImageShader::mask_presets.end(), n.mask) }; + if ( it != std::end(ImageShader::mask_presets)) { + item_current = std::distance(ImageShader::mask_presets.begin(), it); + } + + if (ImGuiToolkit::ButtonIcon(10, 3)) n.mask = ImageShader::mask_presets[0];; + ImGui::SameLine(0, 10); + ImGui::SetNextItemWidth(RIGHT_ALIGN); + // combo list of masks + if ( ImGui::Combo("Mask", &item_current, ImageShader::mask_names, ImageShader::mask_presets.size()) ) + { + n.mask = ImageShader::mask_presets[item_current]; + } + + ImGui::PopID(); } void ImGuiVisitor::visit(ImageProcessingShader &n) diff --git a/ImageShader.cpp b/ImageShader.cpp index f454ce5..98b04e8 100644 --- a/ImageShader.cpp +++ b/ImageShader.cpp @@ -7,9 +7,26 @@ ShadingProgram imageShadingProgram("shaders/image.vs", "shaders/image.fs"); +const char* ImageShader::mask_names[10] = { "None", "Vignette", "Halo", "Circle", "Round", "Top", "Botton", "Left", "Right", "Custom" }; +std::vector< uint > ImageShader::mask_presets; + ImageShader::ImageShader() { + // first initialization + if ( mask_presets.empty() ) { + mask_presets.push_back(Resource::getTextureWhite()); + mask_presets.push_back(Resource::getTextureDDS("images/mask_vignette.dds")); + mask_presets.push_back(Resource::getTextureDDS("images/mask_halo.dds")); + mask_presets.push_back(Resource::getTextureDDS("images/mask_circle.dds")); + mask_presets.push_back(Resource::getTextureDDS("images/mask_roundcorner.dds")); + mask_presets.push_back(Resource::getTextureDDS("images/mask_linear_top.dds")); + mask_presets.push_back(Resource::getTextureDDS("images/mask_linear_bottom.dds")); + mask_presets.push_back(Resource::getTextureDDS("images/mask_linear_left.dds")); + mask_presets.push_back(Resource::getTextureDDS("images/mask_linear_right.dds")); + } + // static program shader program_ = &imageShadingProgram; + // reset instance reset(); } @@ -37,7 +54,7 @@ void ImageShader::reset() program_->enduse(); // default mask (channel1) - mask = Resource::getTextureWhite(); + mask = mask_presets[0]; // no stippling stipple = 0.f; diff --git a/ImageShader.h b/ImageShader.h index a9df308..e1ad2a4 100644 --- a/ImageShader.h +++ b/ImageShader.h @@ -1,6 +1,9 @@ #ifndef IMAGESHADER_H #define IMAGESHADER_H +#include +#include + #include "Shader.h" class ImageShader : public Shader @@ -14,8 +17,12 @@ public: void reset() override; void accept(Visitor& v) override; + uint mask; float stipple; + + static const char* mask_names[]; + static std::vector< uint > mask_presets; }; #endif // IMAGESHADER_H diff --git a/Source.cpp b/Source.cpp index d5426e6..7e73dd2 100644 --- a/Source.cpp +++ b/Source.cpp @@ -206,7 +206,7 @@ void MediaSource::init() (*node)->scale_.x = mediaplayer_->aspectRatio(); } -// mixingshader_->mask = Resource::getTextureImage("images/mask_vignette.png"); +// mixingshader_->mask = ImageShader::mask_presets["Halo"]; // done init once and for all initialized_ = true; diff --git a/rsc/images/mask_circle.dds b/rsc/images/mask_circle.dds new file mode 100644 index 0000000000000000000000000000000000000000..1965d040a1af9084d9384ef094298052ad1f2005 GIT binary patch literal 87536 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�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 Q@TSM#p84}>^{*cPf5}o|MF0Q* literal 0 HcmV?d00001 diff --git a/rsc/images/mask_halo.dds b/rsc/images/mask_halo.dds new file mode 100644 index 0000000000000000000000000000000000000000..8c42ca976b5759e85514a77e6189c2635f80460f GIT binary patch literal 87536 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 literal 0 HcmV?d00001 diff --git a/rsc/images/mask_linear_bottom.dds b/rsc/images/mask_linear_bottom.dds new file mode 100644 index 0000000000000000000000000000000000000000..9c6d42ec819fb304e7c9637d0a70f33db37d91dc GIT binary patch literal 87536 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 HwMzd0TH^5E literal 0 HcmV?d00001 diff --git a/rsc/images/mask_linear_left.dds b/rsc/images/mask_linear_left.dds new file mode 100644 index 0000000000000000000000000000000000000000..463e2764fcab063057337ec45efeadb8af3f3f4b GIT binary patch literal 87536 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 literal 0 HcmV?d00001 diff --git a/rsc/images/mask_linear_top.dds b/rsc/images/mask_linear_top.dds new file mode 100644 index 0000000000000000000000000000000000000000..53e649086e89a0d0b2a8b176450c271c618fb028 GIT binary patch literal 87536 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 E9~V}7c>n+a literal 0 HcmV?d00001 diff --git a/rsc/images/mask_vignette.dds b/rsc/images/mask_vignette.dds new file mode 100644 index 0000000000000000000000000000000000000000..50d2f1951c993147e3c791d9f06bcf814d959e31 GIT binary patch literal 87536 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 O_