Bloom quality is now customizable in performance tab.

This commit is contained in:
Filippo Scognamiglio 2014-09-30 00:57:57 +02:00
parent cc72a28ee3
commit ba77e21817
3 changed files with 57 additions and 13 deletions

View File

@ -69,6 +69,8 @@ Item{
property real motion_blur: 0.40
property real bloom_strength: 0.65
property real bloom_quality: 1.0
property real chroma_color: 0.0
property real saturation_color: 0.0
@ -173,7 +175,8 @@ Item{
fontIndexes: fontIndexes,
frameReflections: _frameReflections,
showMenubar: showMenubar,
scanline_quality: scanline_quality
scanline_quality: scanline_quality,
bloom_quality: bloom_quality
}
return JSON.stringify(settings);
}
@ -245,6 +248,7 @@ Item{
showMenubar = settings.showMenubar !== undefined ? settings.showMenubar : showMenubar;
scanline_quality = settings.scanline_quality !== undefined ? settings.scanline_quality : scanline_quality;
bloom_quality = settings.bloom_quality !== undefined ? settings.bloom_quality : bloom_quality;
}
function loadProfileString(profileString){

View File

@ -303,14 +303,15 @@ Item{
// BLOOM ////////////////////////////////////////////////////////////////
Loader{
property real scaling: shadersettings.bloom_quality
id: bloomEffectLoader
active: mBloom != 0
anchors.fill: parent
width: parent.width * scaling
height: parent.height * scaling
sourceComponent: FastBlur{
radius: 48
radius: 48 * scaling
source: kterminal
transparentBorder: true
smooth: false
}
}
Loader{
@ -319,7 +320,7 @@ Item{
sourceComponent: ShaderEffectSource{
sourceItem: bloomEffectLoader.item
hideSource: true
smooth: false
smooth: true
}
}

View File

@ -50,7 +50,7 @@ Tab{
value: shadersettings.fps !== 0 ? shadersettings.fps : 60
}
Text{text: slider.value}
Text{text: qsTr("Texture quality")}
Text{text: qsTr("Texture Quality")}
Slider{
Layout.fillWidth: true
id: txtslider
@ -77,13 +77,12 @@ Tab{
property var valsStrings: [
qsTr("Low"),
qsTr("Medium"),
qsTr("High"),
qsTr("Very high")
qsTr("High")
]
onValsIndexChanged: shadersettings.scanline_quality = vals[valsIndex];
Text{text: qsTr("Scanline quality")}
Text{text: qsTr("Scanlines Quality")}
Slider{
id: scanlineQualitySlider
Layout.fillWidth: true
@ -105,16 +104,56 @@ Tab{
}
}
}
GroupBox{
title: qsTr("Bloom")
Layout.fillWidth: true
anchors.left: parent.left
anchors.right: parent.right
GridLayout{
id: bloomQualityContainer
anchors.fill: parent
columns: 3
property alias valsIndex: bloomQualitySlider.value
property var vals: [0.25, 0.50, 1.00]
property var valsStrings: [
qsTr("Low"),
qsTr("Medium"),
qsTr("High")
]
onValsIndexChanged: shadersettings.bloom_quality = vals[valsIndex];
Text{text: qsTr("Bloom Quality")}
Slider{
id: bloomQualitySlider
Layout.fillWidth: true
onValueChanged: parent.valsIndex = value;
stepSize: 1
Component.onCompleted: {
minimumValue = 0;
maximumValue = 2;
value = parent.vals.indexOf(shadersettings.bloom_quality);
}
Connections{
target: shadersettings
onBloom_qualityChanged:
bloomQualityContainer.valsIndex = bloomQualityContainer.vals.indexOf(shadersettings.bloom_quality);
}
}
Text{
text: parent.valsStrings[parent.valsIndex];
}
}
}
GroupBox{
title: qsTr("Frame")
Layout.fillWidth: true
anchors.left: parent.left
anchors.right: parent.right
CheckBox{
checked: !shadersettings._frameReflections
text: qsTr("Disable reflections")
onCheckedChanged: shadersettings._frameReflections = !checked
enabled: shadersettings.reflectionsAllowed
checked: shadersettings._frameReflections
text: qsTr("Frame Reflections")
onCheckedChanged: shadersettings._frameReflections = checked
}
}
}