@@ -11,29 +11,30 @@ namespace cEnsor
11
11
ui_max = 7 ;
12
12
> = 3 ;
13
13
14
- uniform float _Threshold <
15
- ui_label = "Search Threshold" ;
16
- ui_type = "slider" ;
17
- ui_min = 0.0 ;
18
- ui_max = 1.0 ;
19
- > = 0.1 ;
20
-
21
- uniform int _Select <
22
- ui_label = "Search Feature" ;
14
+ uniform int _DetectionMode <
15
+ ui_label = "Search Mode" ;
23
16
ui_type = "combo" ;
24
- ui_items = "HSV: Hue\0 HSV: Saturation\0 HSV: Value\0 HSL: Hue\0 HSL: Saturation\0 HSL: Lightness\0 HSI: Hue\0 HSI: Saturation\0 HSI: Intensity\0 " ;
25
- > = 2 ;
17
+ ui_items = "Color \0\ H SV: Hue\0 HSV: Saturation\0 HSV: Value\0 HSL: Hue\0 HSL: Saturation\0 HSL: Lightness\0 HSI: Hue\0 HSI: Saturation\0 HSI: Intensity\0 " ;
18
+ > = 0 ;
26
19
27
20
uniform int _Comparison <
28
21
ui_label = "Search Operator" ;
29
22
ui_type = "combo" ;
30
- ui_items = "Less Than\0 Greater Than\0 Equal\0 Not Equal\0 Less Than of Equal\0 Greater Than or Equal\0 " ;
23
+ ui_items = "Less Than\0 Greater Than\0 Equal\0 Not Equal\0 Less Than or Equal\0 Greater Than or Equal\0 " ;
31
24
> = 1 ;
32
25
33
- uniform bool _DisplayMask <
34
- ui_label = "Display Mask" ;
26
+ uniform float _Threshold <
27
+ ui_label = "Search Threshold" ;
28
+ ui_type = "slider" ;
29
+ ui_min = 0.0 ;
30
+ ui_max = 1.0 ;
31
+ > = 0.1 ;
32
+
33
+ uniform int _DisplayMode <
34
+ ui_label = "Display Mode" ;
35
35
ui_type = "radio" ;
36
- > = false ;
36
+ ui_items = "Output\0 Mask\0 " ;
37
+ > = 0 ;
37
38
38
39
CREATE_TEXTURE_POOLED (TempTex0_RGBA8, BUFFER_SIZE_0, RGBA8, 8 )
39
40
CREATE_SRGB_SAMPLER (SampleTempTex0, TempTex0_RGBA8, POINT, MIRROR )
@@ -49,36 +50,39 @@ namespace cEnsor
49
50
float4 Pixel = tex2Dlod (SampleTempTex0, float4 (Input.Tex0, 0.0 , _Blockiness));
50
51
51
52
// Initialize variables
52
- float Feature = 0.0 ;
53
- bool Mask = false ;
53
+ float4 Feature = 0.0 ;
54
+ bool4 Mask = false ;
54
55
55
- switch (_Select )
56
+ switch (_DetectionMode )
56
57
{
57
58
case 0 :
58
- Feature = CColor_GetHSVfromRGB ( Pixel.rgb).r ;
59
+ Feature = Pixel;
59
60
break ;
60
61
case 1 :
61
- Feature = CColor_GetHSVfromRGB (Pixel.rgb).g ;
62
+ Feature = CColor_GetHSVfromRGB (Pixel.rgb).r ;
62
63
break ;
63
64
case 2 :
64
- Feature = CColor_GetHSVfromRGB (Pixel.rgb).b ;
65
+ Feature = CColor_GetHSVfromRGB (Pixel.rgb).g ;
65
66
break ;
66
67
case 3 :
67
- Feature = CColor_GetHSLfromRGB (Pixel.rgb).r ;
68
+ Feature = CColor_GetHSVfromRGB (Pixel.rgb).b ;
68
69
break ;
69
70
case 4 :
70
- Feature = CColor_GetHSLfromRGB (Pixel.rgb).g ;
71
+ Feature = CColor_GetHSLfromRGB (Pixel.rgb).r ;
71
72
break ;
72
73
case 5 :
73
- Feature = CColor_GetHSLfromRGB (Pixel.rgb).b ;
74
+ Feature = CColor_GetHSLfromRGB (Pixel.rgb).g ;
74
75
break ;
75
76
case 6 :
76
- Feature = CColor_GetHSIfromRGB (Pixel.rgb).r ;
77
+ Feature = CColor_GetHSLfromRGB (Pixel.rgb).b ;
77
78
break ;
78
79
case 7 :
79
- Feature = CColor_GetHSIfromRGB (Pixel.rgb).g ;
80
+ Feature = CColor_GetHSIfromRGB (Pixel.rgb).r ;
80
81
break ;
81
82
case 8 :
83
+ Feature = CColor_GetHSIfromRGB (Pixel.rgb).g;
84
+ break ;
85
+ case 9 :
82
86
Feature = CColor_GetHSIfromRGB (Pixel.rgb).b;
83
87
break ;
84
88
default :
@@ -108,7 +112,7 @@ namespace cEnsor
108
112
break ;
109
113
}
110
114
111
- if (_DisplayMask )
115
+ if (_DisplayMode == 1 )
112
116
{
113
117
return Mask;
114
118
}
0 commit comments