From a5366f06edf5aa1b75328e26011989eba7c601ca Mon Sep 17 00:00:00 2001 From: Merov Linden Date: Thu, 13 Feb 2014 15:15:05 -0800 Subject: ACME-1277 : Final set of filters, added a SnapshotFiltersEnabled debug setting --- .../llimage_libtest/filters/heatwave.xml | 38 ++++++ .../llimage_libtest/filters/julesverne.xml | 20 ++++ .../llimage_libtest/filters/lensflare.xml | 45 +++---- .../llimage_libtest/filters/overcast.xml | 24 ++++ indra/llimage/llimagefilter.cpp | 2 + .../newview/app_settings/filters/Autocontrast.xml | 11 ++ indra/newview/app_settings/filters/Heatwave.xml | 38 ------ indra/newview/app_settings/filters/JulesVerne.xml | 20 ---- indra/newview/app_settings/filters/LensFlare.xml | 131 +++++++++++++++++++++ indra/newview/app_settings/filters/Miniature.xml | 118 +++++++++++++++++++ indra/newview/app_settings/filters/Overcast.xml | 24 ---- indra/newview/app_settings/filters/Spotlight.xml | 38 +++--- indra/newview/app_settings/filters/Toycamera.xml | 46 ++++++++ indra/newview/app_settings/settings.xml | 11 ++ indra/newview/llfloatersnapshot.cpp | 41 +++++-- .../skins/default/xui/en/floater_snapshot.xml | 4 +- indra/newview/skins/default/xui/en/strings.xml | 13 +- 17 files changed, 473 insertions(+), 151 deletions(-) create mode 100644 indra/integration_tests/llimage_libtest/filters/heatwave.xml create mode 100644 indra/integration_tests/llimage_libtest/filters/julesverne.xml create mode 100644 indra/integration_tests/llimage_libtest/filters/overcast.xml create mode 100755 indra/newview/app_settings/filters/Autocontrast.xml delete mode 100644 indra/newview/app_settings/filters/Heatwave.xml delete mode 100644 indra/newview/app_settings/filters/JulesVerne.xml create mode 100644 indra/newview/app_settings/filters/LensFlare.xml create mode 100755 indra/newview/app_settings/filters/Miniature.xml delete mode 100644 indra/newview/app_settings/filters/Overcast.xml create mode 100755 indra/newview/app_settings/filters/Toycamera.xml (limited to 'indra') diff --git a/indra/integration_tests/llimage_libtest/filters/heatwave.xml b/indra/integration_tests/llimage_libtest/filters/heatwave.xml new file mode 100644 index 0000000000..a99f41c833 --- /dev/null +++ b/indra/integration_tests/llimage_libtest/filters/heatwave.xml @@ -0,0 +1,38 @@ + + + + linearize + 0.1 + 1.0 + 1.0 + 1.0 + + + contrast + 0.8 + 1.0 + 1.0 + 1.0 + + + stencil + vignette + fade + 0.5 + 1.0 + 0.0 + 0.0 + 1.0 + 4.0 + + + colorize + 1.0 + 0.0 + 1.0 + 0.4 + 0.0 + 0.2 + + + diff --git a/indra/integration_tests/llimage_libtest/filters/julesverne.xml b/indra/integration_tests/llimage_libtest/filters/julesverne.xml new file mode 100644 index 0000000000..981e221da9 --- /dev/null +++ b/indra/integration_tests/llimage_libtest/filters/julesverne.xml @@ -0,0 +1,20 @@ + + + + linearize + 0.1 + 1.0 + 1.0 + 1.0 + + + grayscale + + + screen + line + 0.02 + 0.0 + + + diff --git a/indra/integration_tests/llimage_libtest/filters/lensflare.xml b/indra/integration_tests/llimage_libtest/filters/lensflare.xml index ec8afc8daa..0b5af9c82b 100644 --- a/indra/integration_tests/llimage_libtest/filters/lensflare.xml +++ b/indra/integration_tests/llimage_libtest/filters/lensflare.xml @@ -7,43 +7,36 @@ 1.0 1.0 - - brighten - 0.1 - 1.0 - 1.0 - 1.0 - stencil - vignette + gradient add + 1.0 0.0 - 0.4 - -0.5 - 0.5 - 0.15 - 20.0 + -1.0 + 1.0 + 1.0 + -1.0 colorize 1.0 1.0 1.0 - 0.15 - 0.15 - 0.15 + 0.1 + 0.1 + 0.0 stencil vignette add 0.0 - 0.4 - -0.5 - 0.5 - 0.20 - 20.0 + 1.0 + -1.0 + 1.0 + 1.5 + 5.0 colorize @@ -59,11 +52,11 @@ vignette add 0.0 - 0.5 - -0.7 - 0.7 - 0.10 - 20.0 + 1.0 + -1.0 + 1.0 + 1.0 + 5.0 colorize diff --git a/indra/integration_tests/llimage_libtest/filters/overcast.xml b/indra/integration_tests/llimage_libtest/filters/overcast.xml new file mode 100644 index 0000000000..dce5ab3e9e --- /dev/null +++ b/indra/integration_tests/llimage_libtest/filters/overcast.xml @@ -0,0 +1,24 @@ + + + + linearize + 0.1 + 1.0 + 1.0 + 1.0 + + + colorize + 1.0 + 1.0 + 1.0 + 0.0 + 0.3 + 0.0 + + + saturate + 0.35 + + + diff --git a/indra/llimage/llimagefilter.cpp b/indra/llimage/llimagefilter.cpp index 3d0c488768..6e9ea2f948 100755 --- a/indra/llimage/llimagefilter.cpp +++ b/indra/llimage/llimagefilter.cpp @@ -55,6 +55,7 @@ LLImageFilter::LLImageFilter(const std::string& file_path) : { // Load filter description from file llifstream filter_xml(file_path); + llinfos << "Merov : load filter : " << file_path << llendl; if (filter_xml.is_open()) { // Load and parse the file @@ -88,6 +89,7 @@ void LLImageFilter::executeFilter(LLPointer raw_image) { mImage = raw_image; + llinfos << "Merov : execute filter on image size " << mImage->getWidth() << "x" << mImage->getHeight() << llendl; //std::cout << "Filter : size = " << mFilterData.size() << std::endl; for (S32 i = 0; i < mFilterData.size(); ++i) { diff --git a/indra/newview/app_settings/filters/Autocontrast.xml b/indra/newview/app_settings/filters/Autocontrast.xml new file mode 100755 index 0000000000..ec3d7561bd --- /dev/null +++ b/indra/newview/app_settings/filters/Autocontrast.xml @@ -0,0 +1,11 @@ + + + + linearize + 0.01 + 1.0 + 1.0 + 1.0 + + + diff --git a/indra/newview/app_settings/filters/Heatwave.xml b/indra/newview/app_settings/filters/Heatwave.xml deleted file mode 100644 index a99f41c833..0000000000 --- a/indra/newview/app_settings/filters/Heatwave.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - linearize - 0.1 - 1.0 - 1.0 - 1.0 - - - contrast - 0.8 - 1.0 - 1.0 - 1.0 - - - stencil - vignette - fade - 0.5 - 1.0 - 0.0 - 0.0 - 1.0 - 4.0 - - - colorize - 1.0 - 0.0 - 1.0 - 0.4 - 0.0 - 0.2 - - - diff --git a/indra/newview/app_settings/filters/JulesVerne.xml b/indra/newview/app_settings/filters/JulesVerne.xml deleted file mode 100644 index 981e221da9..0000000000 --- a/indra/newview/app_settings/filters/JulesVerne.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - linearize - 0.1 - 1.0 - 1.0 - 1.0 - - - grayscale - - - screen - line - 0.02 - 0.0 - - - diff --git a/indra/newview/app_settings/filters/LensFlare.xml b/indra/newview/app_settings/filters/LensFlare.xml new file mode 100644 index 0000000000..0b5af9c82b --- /dev/null +++ b/indra/newview/app_settings/filters/LensFlare.xml @@ -0,0 +1,131 @@ + + + + linearize + 0.01 + 1.0 + 1.0 + 1.0 + + + stencil + gradient + add + 1.0 + 0.0 + -1.0 + 1.0 + 1.0 + -1.0 + + + colorize + 1.0 + 1.0 + 1.0 + 0.1 + 0.1 + 0.0 + + + stencil + vignette + add + 0.0 + 1.0 + -1.0 + 1.0 + 1.5 + 5.0 + + + colorize + 1.0 + 1.0 + 1.0 + 0.6 + 0.0 + 0.0 + + + stencil + vignette + add + 0.0 + 1.0 + -1.0 + 1.0 + 1.0 + 5.0 + + + colorize + 1.0 + 1.0 + 1.0 + 0.6 + 0.6 + 0.0 + + + stencil + vignette + add + 0.0 + 0.5 + 0.5 + -0.5 + 0.10 + 20.0 + + + colorize + 1.0 + 1.0 + 1.0 + 0.7 + 0.0 + 0.0 + + + stencil + vignette + add + 0.0 + 0.5 + 0.6 + -0.6 + 0.05 + 20.0 + + + colorize + 1.0 + 1.0 + 1.0 + 0.7 + 0.0 + 0.0 + + + stencil + vignette + add + 0.0 + 0.5 + 0.4 + -0.4 + 0.025 + 20.0 + + + colorize + 1.0 + 1.0 + 1.0 + 0.7 + 0.0 + 0.0 + + + diff --git a/indra/newview/app_settings/filters/Miniature.xml b/indra/newview/app_settings/filters/Miniature.xml new file mode 100755 index 0000000000..9aa8a87c6f --- /dev/null +++ b/indra/newview/app_settings/filters/Miniature.xml @@ -0,0 +1,118 @@ + + + + linearize + 0.02 + 1.0 + 1.0 + 1.0 + + + contrast + 1.02 + 1.0 + 1.0 + 1.0 + + + saturate + 1.2 + + + stencil + vignette + blend + 0.0 + 0.25 + 0.0 + 0.0 + 0.25 + 2.0 + + + sharpen + + + stencil + gradient + blend + 1.0 + 0.0 + 0.0 + -1.0 + 0.0 + -0.25 + + + blur + + + blur + + + blur + + + blur + + + blur + + + blur + + + blur + + + blur + + + blur + + + blur + + + stencil + gradient + blend + 1.0 + 0.0 + 0.0 + 1.0 + 0.0 + 0.25 + + + blur + + + blur + + + blur + + + blur + + + blur + + + blur + + + blur + + + blur + + + blur + + + blur + + + \ No newline at end of file diff --git a/indra/newview/app_settings/filters/Overcast.xml b/indra/newview/app_settings/filters/Overcast.xml deleted file mode 100644 index dce5ab3e9e..0000000000 --- a/indra/newview/app_settings/filters/Overcast.xml +++ /dev/null @@ -1,24 +0,0 @@ - - - - linearize - 0.1 - 1.0 - 1.0 - 1.0 - - - colorize - 1.0 - 1.0 - 1.0 - 0.0 - 0.3 - 0.0 - - - saturate - 0.35 - - - diff --git a/indra/newview/app_settings/filters/Spotlight.xml b/indra/newview/app_settings/filters/Spotlight.xml index 044b2c0b3a..0e2e0ad68c 100644 --- a/indra/newview/app_settings/filters/Spotlight.xml +++ b/indra/newview/app_settings/filters/Spotlight.xml @@ -2,47 +2,43 @@ linearize - 0.1 + 0.0 + 1.0 1.0 1.0 + + + stencil + vignette + add + 0.0 + 0.4 + 0.0 + 0.0 1.0 + 2.0 contrast - 0.8 1.0 1.0 1.0 - - - saturate - 1.5 + 1.0 stencil vignette - fade - 0.75 - 1.0 + add + -0.8 + 0.0 0.0 0.0 1.0 - 5.0 - - - saturate - 0.8 + 2.0 contrast - 1.1 - 1.0 - 1.0 1.0 - - - brighten - 0.1 1.0 1.0 1.0 diff --git a/indra/newview/app_settings/filters/Toycamera.xml b/indra/newview/app_settings/filters/Toycamera.xml new file mode 100755 index 0000000000..4e76f6b2fb --- /dev/null +++ b/indra/newview/app_settings/filters/Toycamera.xml @@ -0,0 +1,46 @@ + + + + stencil + vignette + fade + 0.0 + 1.0 + 0.0 + 0.0 + 1.2 + 3.0 + + + linearize + 0.05 + 1.0 + 1.0 + 1.0 + + + grayscale + + + contrast + 1.1 + 1.0 + 1.0 + 1.0 + + + stencil + vignette + blend + 1.0 + 0.0 + 0.0 + 0.0 + 0.5 + 2.0 + + + blur + + + \ No newline at end of file diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index afc4ac617c..43c82c3005 100755 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -11268,6 +11268,17 @@ Value 0 + SnapshotFiltersEnabled + + Comment + Enable filters in the Snapshot Advanced panel (experimental). + Persist + 1 + Type + Boolean + Value + 0 + SnapshotFormat Comment diff --git a/indra/newview/llfloatersnapshot.cpp b/indra/newview/llfloatersnapshot.cpp index 1d52ac5a69..8e48d35c1d 100755 --- a/indra/newview/llfloatersnapshot.cpp +++ b/indra/newview/llfloatersnapshot.cpp @@ -478,9 +478,6 @@ void LLFloaterSnapshot::Impl::updateControls(LLFloaterSnapshot* floater) previewp->setSnapshotType(shot_type); previewp->setSnapshotFormat(shot_format); previewp->setSnapshotBufferType(layer_type); - // Filters - //const std::string& filter_name = floater->getChild("filters_combobox")->getSimple(); - //previewp->setFilter(filter_name); } LLPanelSnapshot* current_panel = Impl::getActivePanel(floater); @@ -575,8 +572,17 @@ void LLFloaterSnapshot::Impl::onClickFilter(LLUICtrl *ctrl, void* data) LLFloaterSnapshot *view = (LLFloaterSnapshot *)data; if (view) { - checkAutoSnapshot(getPreviewView(view)); updateControls(view); + LLSnapshotLivePreview* previewp = getPreviewView(view); + if (previewp) + { + checkAutoSnapshot(previewp); + // Note : index 0 of the filter drop down is assumed to be "No filter" in whichever locale + LLComboBox* filterbox = static_cast(view->getChild("filters_combobox")); + std::string filter_name = (filterbox->getCurrentIndex() ? filterbox->getSimple() : ""); + previewp->setFilter(filter_name); + previewp->updateSnapshot(FALSE, TRUE); + } } } @@ -1078,16 +1084,25 @@ BOOL LLFloaterSnapshot::postBuild() getChild("auto_snapshot_check")->setValue(gSavedSettings.getBOOL("AutoSnapshot")); childSetCommitCallback("auto_snapshot_check", Impl::onClickAutoSnap, this); - // Update filter list - //std::vector filter_list = LLImageFiltersManager::getInstance()->getFiltersList(); - //LLComboBox* filterbox = getChild("filters_combobox"); - //for (U32 i = 0; i < filter_list.size(); i++) - //{ - // filterbox->add(filter_list[i]); - //} - //childSetCommitCallback("filters_combobox", Impl::onClickFilter, this); + // Filters + LLComboBox* filterbox = getChild("filters_combobox"); + if (gSavedSettings.getBOOL("SnapshotFiltersEnabled")) + { + // Update filter list if setting is on (experimental) + std::vector filter_list = LLImageFiltersManager::getInstance()->getFiltersList(); + for (U32 i = 0; i < filter_list.size(); i++) + { + filterbox->add(filter_list[i]); + } + childSetCommitCallback("filters_combobox", Impl::onClickFilter, this); + } + else + { + // Hide Filter UI if setting is off (default) + getChild("filter_list_label")->setVisible(FALSE); + filterbox->setVisible(FALSE); + } - LLWebProfile::setImageUploadResultCallback(boost::bind(&LLFloaterSnapshot::Impl::onSnapshotUploadFinished, _1)); LLPostCard::setPostResultCallback(boost::bind(&LLFloaterSnapshot::Impl::onSendingPostcardFinished, _1)); diff --git a/indra/newview/skins/default/xui/en/floater_snapshot.xml b/indra/newview/skins/default/xui/en/floater_snapshot.xml index 5e3c7d4e3d..771035b40d 100755 --- a/indra/newview/skins/default/xui/en/floater_snapshot.xml +++ b/indra/newview/skins/default/xui/en/floater_snapshot.xml @@ -381,7 +381,6 @@ top_pad="8" width="180" name="auto_snapshot_check" /> - diff --git a/indra/newview/skins/default/xui/en/strings.xml b/indra/newview/skins/default/xui/en/strings.xml index 92913f678d..51576f71a8 100755 --- a/indra/newview/skins/default/xui/en/strings.xml +++ b/indra/newview/skins/default/xui/en/strings.xml @@ -171,16 +171,17 @@ Please try logging in again in a minute. Black & White 1970's Colors - Heat Wave Intense - Jules Verne - Newspaper - Overcast + Newsprint Sepia Spotlight Video - - + Autocontrast + Lens Flare + Miniature + Toy Camera + + Person (no name) Owner: -- cgit v1.2.3