-
Notifications
You must be signed in to change notification settings - Fork 0
/
FSRCNNX_x2_8-0-4-1.glsl
411 lines (398 loc) · 68.9 KB
/
FSRCNNX_x2_8-0-4-1.glsl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!DESC feature map 1
//!BIND LUMA
//!SAVE FEATURE1
//!COMPONENTS 4
vec4 hook()
{
vec4 res = vec4(-0.1509746015071869,-0.0135558079928160,0.0067616454325616,-0.2848519682884216);
res += vec4(-0.0037598882336169,0.0614504106342793,-0.0002959038829431,0.0036728407721967) * float(LUMA_texOff(vec2(-2,-2)));
res += vec4(0.0071421819739044,-0.0254413057118654,-0.0068537630140781,-0.0069990768097341) * float(LUMA_texOff(vec2(-2,-1)));
res += vec4(0.0568017549812794,0.1957543939352036,-0.0222231913357973,-0.0549908876419067) * float(LUMA_texOff(vec2(-2,0)));
res += vec4(-0.0012381756678224,-0.0187490638345480,0.0206905454397202,0.0035073466133326) * float(LUMA_texOff(vec2(-2,1)));
res += vec4(0.0098362052813172,0.0057854773476720,-0.0041487300768495,-0.0152947865426540) * float(LUMA_texOff(vec2(-2,2)));
res += vec4(-0.0189282279461622,-0.0807115808129311,-0.0299318879842758,0.0287063755095005) * float(LUMA_texOff(vec2(-1,-2)));
res += vec4(0.0249533280730247,0.1917327642440796,0.0229102019220591,-0.0328125134110451) * float(LUMA_texOff(vec2(-1,-1)));
res += vec4(0.0036545787006617,-0.0931302905082703,-0.0035518202930689,-0.0716555491089821) * float(LUMA_texOff(vec2(-1,0)));
res += vec4(0.0312809608876705,-0.1189801245927811,-0.0282735470682383,-0.0536981821060181) * float(LUMA_texOff(vec2(-1,1)));
res += vec4(-0.0323902070522308,0.0716715604066849,0.0152344889938831,0.0438132621347904) * float(LUMA_texOff(vec2(-1,2)));
res += vec4(-0.0277053173631430,0.1135088726878166,0.1162345707416534,0.0978962406516075) * float(LUMA_texOff(vec2(0,-2)));
res += vec4(-0.1162458062171936,-0.0401261895895004,-0.4834267795085907,0.1004458293318748) * float(LUMA_texOff(vec2(0,-1)));
res += vec4(1.1068447828292847,0.0626810044050217,0.0089028999209404,0.8890707492828369) * float(LUMA_texOff(vec2(0,0)));
res += vec4(0.1201625615358353,0.1673810482025146,0.5650558471679688,-0.1634792387485504) * float(LUMA_texOff(vec2(0,1)));
res += vec4(-0.0128123862668872,-0.3098227679729462,-0.1615206897258759,0.0421420000493526) * float(LUMA_texOff(vec2(0,2)));
res += vec4(0.0039666970260441,-0.1251176893711090,0.0052549242973328,-0.0006292918697000) * float(LUMA_texOff(vec2(1,-2)));
res += vec4(-0.0960166230797768,-0.0515756346285343,-0.0100744133815169,0.1348678767681122) * float(LUMA_texOff(vec2(1,-1)));
res += vec4(0.0043543158099055,-0.1486229300498962,0.0065605705603957,0.0219576414674520) * float(LUMA_texOff(vec2(1,0)));
res += vec4(0.0288588572293520,0.1939568966627121,-0.0258098207414150,-0.0573631897568703) * float(LUMA_texOff(vec2(1,1)));
res += vec4(0.0070200306363404,0.0631003975868225,0.0442556552588940,-0.0129602896049619) * float(LUMA_texOff(vec2(1,2)));
res += vec4(-0.0175674892961979,-0.0087839104235172,-0.0001106700074160,0.0325451157987118) * float(LUMA_texOff(vec2(2,-2)));
res += vec4(-0.0057956059463322,0.0926996394991875,-0.0150334453210235,-0.0065397387370467) * float(LUMA_texOff(vec2(2,-1)));
res += vec4(-0.0939300730824471,-0.0326769575476646,-0.0057285595685244,0.1896656304597855) * float(LUMA_texOff(vec2(2,0)));
res += vec4(-0.0203150436282158,-0.1911219060420990,0.0051789507269859,0.0267475824803114) * float(LUMA_texOff(vec2(2,1)));
res += vec4(-0.0036441595293581,0.0591833665966988,-0.0090797655284405,0.0110706342384219) * float(LUMA_texOff(vec2(2,2)));
return res;
}
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!DESC feature map 2
//!BIND LUMA
//!SAVE FEATURE2
//!COMPONENTS 4
vec4 hook()
{
vec4 res = vec4(0.0541787967085838,0.0120136886835098,-0.0096567748114467,-0.0094489278271794);
res += vec4(0.0184792112559080,0.0136690614745021,0.0058442442677915,-0.0099522806704044) * float(LUMA_texOff(vec2(-2,-2)));
res += vec4(0.0219498351216316,-0.0216886978596449,0.0320411846041679,0.0948653221130371) * float(LUMA_texOff(vec2(-2,-1)));
res += vec4(-0.1750338971614838,0.1136583536863327,-0.2008614242076874,-0.0499890074133873) * float(LUMA_texOff(vec2(-2,0)));
res += vec4(0.0266360323876143,-0.0303857438266277,0.0121428770944476,-0.0020902391988784) * float(LUMA_texOff(vec2(-2,1)));
res += vec4(0.0081525733694434,-0.0125904576852918,0.0093008270487189,-0.0021994127891958) * float(LUMA_texOff(vec2(-2,2)));
res += vec4(0.0205022636801004,0.0325898118317127,0.0110427504405379,0.1037379875779152) * float(LUMA_texOff(vec2(-1,-2)));
res += vec4(0.1099926233291626,-0.0823785662651062,-0.0107855703681707,0.0055436980910599) * float(LUMA_texOff(vec2(-1,-1)));
res += vec4(0.4112021923065186,0.1359078884124756,0.6936535835266113,0.0914536863565445) * float(LUMA_texOff(vec2(-1,0)));
res += vec4(0.1075170710682869,-0.0304633509367704,-0.0206621568650007,-0.1588809192180634) * float(LUMA_texOff(vec2(-1,1)));
res += vec4(0.0254670437425375,0.0036090235225856,0.0238041263073683,0.0449189729988575) * float(LUMA_texOff(vec2(-1,2)));
res += vec4(-0.1222435683012009,0.0890526250004768,-0.0151765551418066,-0.2669847011566162) * float(LUMA_texOff(vec2(0,-2)));
res += vec4(0.4851113557815552,0.0263010896742344,0.0277495700865984,-0.1271323114633560) * float(LUMA_texOff(vec2(0,-1)));
res += vec4(-1.9192758798599243,-0.2477061748504639,0.0274293571710587,-0.3749051988124847) * float(LUMA_texOff(vec2(0,0)));
res += vec4(0.6472831368446350,-0.0755768343806267,-0.0517080873250961,0.4422555267810822) * float(LUMA_texOff(vec2(0,1)));
res += vec4(-0.2022986412048340,-0.0590564534068108,0.0131811536848545,0.0504300333559513) * float(LUMA_texOff(vec2(0,2)));
res += vec4(0.0105082271620631,-0.0040961871854961,-0.0362351462244987,-0.0504910945892334) * float(LUMA_texOff(vec2(1,-2)));
res += vec4(0.1012665480375290,0.2559980750083923,0.0301113147288561,-0.0152765307575464) * float(LUMA_texOff(vec2(1,-1)));
res += vec4(0.2848424017429352,-0.4166705012321472,-0.7385643124580383,0.2595581114292145) * float(LUMA_texOff(vec2(1,0)));
res += vec4(0.0907168462872505,-0.0188500117510557,0.0305166300386190,-0.1908629387617111) * float(LUMA_texOff(vec2(1,1)));
res += vec4(0.0538988150656223,-0.0034666310530156,0.0004272823862266,-0.0216222237795591) * float(LUMA_texOff(vec2(1,2)));
res += vec4(0.0185288917273283,0.0345742516219616,0.0000267560826614,0.0097738523036242) * float(LUMA_texOff(vec2(2,-2)));
res += vec4(0.0525976382195950,0.0446186028420925,0.0097536100074649,0.0514103621244431) * float(LUMA_texOff(vec2(2,-1)));
res += vec4(-0.1153732314705849,0.2050881534814835,0.1450416445732117,0.1768003553152084) * float(LUMA_texOff(vec2(2,0)));
res += vec4(0.0016675911610946,0.1342236995697021,-0.0333153307437897,-0.0940694212913513) * float(LUMA_texOff(vec2(2,1)));
res += vec4(0.0151546653360128,-0.0330587327480316,0.0042342385277152,0.0297497119754553) * float(LUMA_texOff(vec2(2,2)));
return res;
}
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!DESC mapping 1_1
//!BIND FEATURE1
//!BIND FEATURE2
//!SAVE MODEL21
//!COMPONENTS 4
vec4 hook()
{
vec4 res = vec4(-0.0452743545174599,-0.7737042903900146,-0.0043352008797228,-0.2513844668865204);
res += mat4(0.1589078158140182,-0.0467162430286407,0.2073607295751572,0.2234642654657364,-0.0834981352090836,-0.0070660104975104,-0.1287210732698441,0.0809417366981506,-0.0796080529689789,-0.0753151029348373,-0.1091800481081009,0.3848945796489716,-0.1664465218782425,-0.0439221411943436,0.0914947092533112,-0.0781081467866898) * FEATURE1_texOff(vec2(-1,-1));
res += mat4(-0.0689597502350807,0.0539563558995724,0.3200047016143799,0.0981027036905289,-0.3445762097835541,-0.1214470788836479,0.0288346856832504,0.0562641806900501,0.0052195386961102,0.1030749604105949,0.0598287545144558,-0.2350935041904449,-0.0293557122349739,-0.1810972094535828,-0.1621305495500565,-0.1864541620016098) * FEATURE2_texOff(vec2(-1,-1));
res += mat4(0.0933479964733124,-0.0172324012964964,0.3026179969310760,0.0564954876899719,0.5954855680465698,-0.1879310905933380,-0.5111328363418579,-0.0598416514694691,0.6147844791412354,-0.0428325720131397,-0.8502849340438843,-0.1915386915206909,-0.0582077242434025,-0.0349113009870052,-0.1353366971015930,-0.0330252572894096) * FEATURE1_texOff(vec2(-1,0));
res += mat4(-0.2540763914585114,0.1325411498546600,0.8136953115463257,-0.2215363681316376,0.1766147017478943,0.5234133601188660,0.1001175791025162,-0.1731569916009903,-0.1253602504730225,-0.4737440645694733,-1.2733485698699951,0.0450870580971241,-0.2801612317562103,0.0910555273294449,0.2545292377471924,-0.0309695433825254) * FEATURE2_texOff(vec2(-1,0));
res += mat4(0.0122816842049360,-0.2234273999929428,0.0195859111845493,0.3529818654060364,0.2605769038200378,0.3399239480495453,0.4733481407165527,-0.2559757232666016,-0.0748921558260918,0.1091625988483429,-0.6069173812866211,-0.2188397347927094,-0.0625736489892006,0.2759097218513489,-0.1617750972509384,-0.2809991538524628) * FEATURE1_texOff(vec2(-1,1));
res += mat4(-0.0201505720615387,0.0821481719613075,0.2021976560354233,-0.0328934714198112,0.2181531041860580,-0.5061808228492737,-1.0750364065170288,-0.0066138142719865,0.5227681398391724,0.0878994986414909,0.0389457345008850,-0.0255476050078869,0.1582612246274948,-0.0155039010569453,-0.0662331134080887,-0.1568329185247421) * FEATURE2_texOff(vec2(-1,1));
res += mat4(0.0293578393757343,0.2162541151046753,-0.1011446565389633,-0.1825613230466843,-0.1876162737607956,0.0413508452475071,0.0420276634395123,0.2295992970466614,0.1307498067617416,0.7205982208251953,0.0965216308832169,-0.0042030825279653,-0.0044212667271495,-0.0115328812971711,0.0461373217403889,0.0421709902584553) * FEATURE1_texOff(vec2(0,-1));
res += mat4(0.1305582225322723,0.0240202024579048,-0.2705288827419281,-0.1829632818698883,-0.0006808443577029,-0.3648712635040283,-0.8378824591636658,-0.0509168840944767,-0.2520502805709839,-0.7483316659927368,0.3777253925800323,-0.0533601380884647,0.0576758459210396,0.3025455772876740,-0.0032723147887737,-0.2953406572341919) * FEATURE2_texOff(vec2(0,-1));
res += mat4(-0.5132640600204468,0.5542367100715637,0.0787968933582306,-0.8264530301094055,-0.3231813907623291,-0.2137864828109741,-0.0671812072396278,0.4974828362464905,1.2674243450164795,-0.7385908365249634,1.4834556579589844,-0.3905152976512909,0.1086511462926865,0.6852389574050903,-0.3045935928821564,-0.3111937344074249) * FEATURE1_texOff(vec2(0,0));
res += mat4(0.7705498337745667,-0.0381696410477161,-0.0951596051454544,1.6320108175277710,0.1905073225498199,-0.0947012603282928,1.5937736034393311,0.1758241951465607,0.0784776359796524,-0.3702231049537659,1.0724834203720093,-0.2784453928470612,0.1904574930667877,-0.3195404708385468,-0.1795736253261566,0.5995727181434631) * FEATURE2_texOff(vec2(0,0));
res += mat4(-0.5385479331016541,-0.1875318735837936,0.2716562151908875,-0.1477950215339661,-0.3925490081310272,0.1834059953689575,-0.2801915109157562,-0.1366681754589081,0.0118164690211415,-0.4390906989574432,-0.3368979096412659,0.1315898448228836,0.3428115844726562,0.1215748861432076,0.1494996994733810,-0.1410061120986938) * FEATURE1_texOff(vec2(0,1));
res += mat4(-0.0710507705807686,0.2156861126422882,0.4100387096405029,-0.1931686550378799,-0.3886110782623291,0.5996405482292175,0.1684583276510239,-0.0297941360622644,-0.4478571116924286,-0.4062708020210266,-0.3983869850635529,0.1279487311840057,0.2150515466928482,0.0020545844454318,0.0465856343507767,0.2574361860752106) * FEATURE2_texOff(vec2(0,1));
res += mat4(0.1931444704532623,-0.2348867952823639,-2.6289799213409424,-0.1872940510511398,0.2246735841035843,-0.1978641450405121,-0.3906482458114624,-0.1101277172565460,0.1574941724538803,0.2592659890651703,0.5765943527221680,0.2494676113128662,-0.2056511342525482,-0.0004532634629868,1.3538817167282104,0.0350535102188587) * FEATURE1_texOff(vec2(1,-1));
res += mat4(-0.0262365117669106,0.0298269763588905,-0.6972071528434753,-0.0970231071114540,0.3845966756343842,0.2413074225187302,-1.8877784013748169,0.0475531332194805,-0.2164962589740753,0.0108927991241217,0.4250757992267609,0.2008266597986221,0.1340677738189697,0.1458901166915894,0.0432816557586193,0.0527057498693466) * FEATURE2_texOff(vec2(1,-1));
res += mat4(0.1774498373270035,0.0910393148660660,-0.0739985778927803,-0.3056291043758392,0.2493161261081696,0.0327782109379768,-0.3446145355701447,-0.0407629720866680,0.3177764415740967,0.0436120517551899,0.5451704859733582,0.0332397893071175,-0.0479518137872219,0.1812400668859482,-0.2539929449558258,-0.0047620139084756) * FEATURE1_texOff(vec2(1,0));
res += mat4(0.5052930116653442,0.0961866974830627,-1.1356906890869141,-0.3774253427982330,0.1404987275600433,0.0431307442486286,-0.0994259268045425,-0.0832455456256866,-0.0651258975267410,0.7372122406959534,-0.0353675261139870,0.0542434938251972,-0.4436488449573517,-0.4416591227054596,-0.1309857368469238,-0.3337882459163666) * FEATURE2_texOff(vec2(1,0));
res += mat4(0.1666868925094604,-0.1615426987409592,0.1336248070001602,-0.0370919369161129,-0.2176368087530136,0.1897179931402206,0.0345338135957718,-0.0323585197329521,-0.3513357937335968,-0.3251895606517792,0.0181038584560156,-0.0796460881829262,0.0585270710289478,0.1208555847406387,-0.0673353970050812,0.2433563768863678) * FEATURE1_texOff(vec2(1,1));
res += mat4(0.7108100056648254,0.1390120387077332,0.0817940980195999,-0.1629430204629898,-0.1061920300126076,-0.3055068552494049,0.1638684719800949,-0.1071514934301376,0.2484579682350159,0.3708961009979248,-0.3470214307308197,0.2594919204711914,0.1205633953213692,0.2482945919036865,-0.2095223367214203,-0.1047516167163849) * FEATURE2_texOff(vec2(1,1));
res = max(res, vec4(0.0)) + vec4(1.0408123731613159,0.1023607999086380,0.0886593610048294,0.0472911037504673) * min(res, vec4(0.0));
return res;
}
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!DESC mapping 1_2
//!BIND FEATURE1
//!BIND FEATURE2
//!SAVE MODEL22
//!COMPONENTS 4
vec4 hook()
{
vec4 res = vec4(0.0768956169486046,-0.1460417658090591,-0.0062406626529992,0.0235804524272680);
res += mat4(-0.0872487872838974,-0.1298694312572479,-0.0698781162500381,0.0549505129456520,0.0059861177578568,0.1220942437648773,-0.2900528609752655,-0.4822047650814056,0.1288974434137344,-0.0027072769589722,-0.0693329423666000,-0.3169730007648468,0.0078697996214032,0.0501138269901276,-0.0185764692723751,-0.0591485016047955) * FEATURE1_texOff(vec2(-1,-1));
res += mat4(0.1555106043815613,-0.0083466339856386,0.1024751961231232,0.0946626663208008,0.0510551407933235,-0.3695095181465149,0.2315458357334137,-0.1145460009574890,-0.0128550035879016,-0.0186438988894224,-0.2012758851051331,0.1454962641000748,-0.1439885795116425,0.1474403291940689,-0.0426309518516064,-0.0510785803198814) * FEATURE2_texOff(vec2(-1,-1));
res += mat4(-0.0423544161021709,0.2172163724899292,0.0563768111169338,0.1128659844398499,-0.0870366618037224,0.3808702826499939,0.4603576064109802,0.2344146221876144,-0.3489927649497986,0.0516141541302204,0.2467864751815796,-0.1020329073071480,0.1418838202953339,0.0597412101924419,0.0061432654038072,-0.1183865144848824) * FEATURE1_texOff(vec2(-1,0));
res += mat4(0.3013050258159637,0.4316013455390930,0.0487066954374313,0.0620453096926212,0.4538179337978363,-0.0163833443075418,0.1053267270326614,0.3347252309322357,-0.1972877085208893,-0.0408539213240147,0.0808979496359825,-0.2371507287025452,0.4654107391834259,-0.2988391220569611,-0.1857631653547287,0.3485815525054932) * FEATURE2_texOff(vec2(-1,0));
res += mat4(-0.0528658032417297,-0.1358958929777145,-0.2465055882930756,0.0719801932573318,-0.0296913739293814,0.0847417488694191,-0.0840649008750916,-0.0790594816207886,-0.1837938725948334,-0.2219027280807495,0.3485139012336731,-0.1552775949239731,0.0310121476650238,-0.1079743131995201,0.1548121571540833,-0.0252014473080635) * FEATURE1_texOff(vec2(-1,1));
res += mat4(0.1290702074766159,0.0220040064305067,0.0247040521353483,-0.0333725735545158,0.1147301867604256,0.0765398442745209,0.3412538170814514,-0.2192483395338058,-0.4409129321575165,-0.0566915869712830,-0.0083323949947953,-0.1033551916480064,-0.0006615837919526,0.4846527278423309,-0.0796155557036400,0.3711148798465729) * FEATURE2_texOff(vec2(-1,1));
res += mat4(-0.2485114336013794,0.0504177436232567,0.3105762004852295,-0.0268028136342764,0.0498577244579792,0.1702960431575775,-0.3471982777118683,-0.3560937643051147,0.4919846355915070,-0.1506134122610092,0.1742928326129913,0.7121704220771790,0.2521021664142609,-0.0725562721490860,-0.3548195362091064,-0.0064909690991044) * FEATURE1_texOff(vec2(0,-1));
res += mat4(0.0700112506747246,0.0757739469408989,0.2237766832113266,0.2135815173387527,-0.1471729874610901,0.4211229085922241,0.0244796052575111,-0.3369590640068054,-0.0978589355945587,-0.2040650397539139,0.2179063409566879,-0.2687382400035858,-0.0639133453369141,0.1011230275034904,0.2787832021713257,-0.3398675918579102) * FEATURE2_texOff(vec2(0,-1));
res += mat4(-0.1827321201562881,-0.4613777697086334,0.4138762950897217,0.1056525260210037,0.0108041986823082,-0.5957619547843933,0.2938109040260315,0.1136276349425316,-0.6728047132492065,-0.8402149677276611,0.6289898157119751,-1.4222831726074219,0.0892316773533821,-0.4140413999557495,-0.1067809239029884,0.2490266710519791) * FEATURE1_texOff(vec2(0,0));
res += mat4(2.1550047397613525,0.3389005362987518,-0.7138993740081787,-0.4919975399971008,-0.2986942529678345,0.8358812928199768,-0.7589544057846069,0.4503022134304047,0.1842116862535477,1.1278806924819946,1.1338578462600708,1.4383541345596313,-0.3711380958557129,-0.7056380510330200,-0.1706199645996094,-0.6620675325393677) * FEATURE2_texOff(vec2(0,0));
res += mat4(-0.1091756448149681,0.1478075534105301,0.2514287233352661,-0.2073339819908142,-0.2044165432453156,0.1138084158301353,-0.1741017401218414,0.5192852616310120,-0.0074753193184733,-0.0312587358057499,-0.0253719352185726,0.4232962131500244,0.3019977211952209,-0.3143487870693207,-0.2479774802923203,-0.1207192093133926) * FEATURE1_texOff(vec2(0,1));
res += mat4(0.0315413773059845,0.3575184047222137,0.1308461278676987,-0.2180818617343903,0.3164284229278564,0.2018950283527374,-0.0247195046395063,-0.0624660067260265,0.1268971115350723,0.8093144297599792,0.1316860169172287,-0.1253946125507355,0.3411116302013397,0.0838127732276917,0.0886839106678963,-0.2002663016319275) * FEATURE2_texOff(vec2(0,1));
res += mat4(-0.1923704743385315,-0.1050108820199966,0.0598437525331974,-0.2413118630647659,-0.0889708846807480,0.2103639692068100,0.4331704676151276,0.3487502932548523,-0.2006836980581284,0.1304136216640472,-0.0304283294826746,0.0206174869090319,0.1527952700853348,0.0544542260468006,0.1180009320378304,0.2499498873949051) * FEATURE1_texOff(vec2(1,-1));
res += mat4(-0.0284705460071564,0.0029818087350577,0.0721286237239838,0.0560192652046680,-0.0467523075640202,0.1690399050712585,-0.1048235744237900,0.0216949936002493,-0.1276771128177643,0.3630679845809937,0.0378565900027752,-0.1320662647485733,-0.1650677025318146,0.1172833964228630,0.0003059599548578,0.3721223473548889) * FEATURE2_texOff(vec2(1,-1));
res += mat4(-0.0238619782030582,-0.2455882132053375,0.0190900266170502,0.0713610127568245,0.1525544077157974,-0.3566334247589111,-0.0479829646646976,-0.1825138330459595,-0.1183577105402946,-0.6739791631698608,0.2822116911411285,-0.0524367764592171,0.0092617031186819,-0.0129339182749391,-0.1394946277141571,-0.3225293457508087) * FEATURE1_texOff(vec2(1,0));
res += mat4(-0.7468954324722290,0.1317645460367203,0.2565933763980865,0.0111176706850529,0.2047275155782700,-0.3252566158771515,0.1201066151261330,-0.3213990032672882,-0.2975398898124695,-0.2445526123046875,0.1418895125389099,0.2306181788444519,0.0533845201134682,-0.3423732221126556,0.2776606678962708,-0.2265405803918839) * FEATURE2_texOff(vec2(1,0));
res += mat4(-0.2043980807065964,0.1931100338697433,-0.1295392960309982,0.1670256555080414,0.1645681709051132,0.0958901047706604,-0.1415763944387436,-0.0852059647440910,0.0435185469686985,-0.0328792855143547,-0.0462588928639889,0.0999711975455284,0.0152863729745150,0.2642010450363159,0.1177629753947258,0.0948430374264717) * FEATURE1_texOff(vec2(1,1));
res += mat4(-0.0587063059210777,0.1132131591439247,0.0881500467658043,-0.0138335032388568,-0.1663987785577774,-0.3364221751689911,-0.0538316071033478,0.1316082775592804,-0.1181058958172798,0.3363447487354279,-0.2434223592281342,-0.3212656676769257,-0.0843391865491867,-0.0916209593415260,-0.0028905302751809,-0.0193154178559780) * FEATURE2_texOff(vec2(1,1));
res = max(res, vec4(0.0)) + vec4(0.7098640203475952,0.0766931846737862,0.3637206256389618,-1.0320047140121460) * min(res, vec4(0.0));
return res;
}
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!DESC mapping 2_1
//!BIND MODEL21
//!BIND MODEL22
//!SAVE MODEL1
//!COMPONENTS 4
vec4 hook()
{
vec4 res = vec4(0.0170852672308683,0.1754768192768097,-0.0627137199044228,0.0302415024489164);
res += mat4(-0.0931400209665298,-0.0237767789512873,0.0855837464332581,-0.1704553067684174,0.0129925645887852,-0.0822458118200302,-0.1219799220561981,-0.0601306557655334,-0.0594861879944801,-0.0183524042367935,0.0934688523411751,-0.2627011835575104,-0.0636424720287323,-0.1815307885408401,-0.0725213587284088,0.2355831414461136) * MODEL21_texOff(vec2(-1,-1));
res += mat4(0.1586687117815018,0.0477125458419323,0.1191117987036705,0.0885237306356430,-0.0693194717168808,-0.3822860717773438,-0.3097383081912994,-0.1164323017001152,-0.0672268941998482,-0.0349455587565899,0.1080945730209351,0.0402903184294701,0.0970795527100563,-0.0055673788301647,0.1673126667737961,0.0011124406009912) * MODEL22_texOff(vec2(-1,-1));
res += mat4(0.1263304799795151,0.3918160498142242,-0.0310626626014709,0.2236307859420776,-0.1696615517139435,0.0825140103697777,0.0123340934514999,-0.0439517907798290,-0.5731655359268188,0.1721436530351639,0.4841386973857880,0.1342666149139404,-0.4224555492401123,-0.3453077971935272,0.1269877254962921,-0.0241462811827660) * MODEL21_texOff(vec2(-1,0));
res += mat4(0.0936025679111481,0.3407166004180908,0.1189747974276543,0.1681626886129379,-0.0740653425455093,-0.0269140899181366,-0.2643758356571198,-0.4025750458240509,-1.2157027721405029,0.0141306081786752,0.1667129397392273,0.0317809544503689,-0.0372435189783573,-0.1464998275041580,-0.1486196666955948,0.2854102849960327) * MODEL22_texOff(vec2(-1,0));
res += mat4(0.2344607859849930,-0.0437070950865746,0.1104629784822464,0.0181616060435772,-0.0374027714133263,0.0843154937028885,0.1492912769317627,0.0290796123445034,0.2762812674045563,-0.3372839093208313,-0.7284433841705322,0.1208302751183510,-0.0275538712739944,-0.1273225545883179,0.0373889580368996,-0.1029275581240654) * MODEL21_texOff(vec2(-1,1));
res += mat4(-0.0658589303493500,-0.0235890019685030,-0.1662779599428177,0.0337554998695850,-0.0301105044782162,-0.0232451315969229,0.1063458472490311,-0.0921287536621094,-0.1864383369684219,-0.1079948619008064,-0.1556737273931503,-0.0972463414072990,-0.0956818684935570,-0.0370033904910088,-0.1714497506618500,0.0671783015131950) * MODEL22_texOff(vec2(-1,1));
res += mat4(0.5518049597740173,0.3054741621017456,0.4884301424026489,0.2052321583032608,0.0554423928260803,-0.2306884229183197,-0.3487419784069061,0.1733721196651459,0.2059731036424637,-0.0815041884779930,0.0157276317477226,-0.1844915151596069,0.0940944850444794,-0.0187225975096226,-0.6224091649055481,0.2105529755353928) * MODEL21_texOff(vec2(0,-1));
res += mat4(-0.3309973180294037,0.1998492777347565,0.4053513705730438,0.1465968340635300,-0.5744234323501587,-0.1534476727247238,-0.1628714352846146,-0.1142760068178177,-0.1416776478290558,-0.2358237057924271,0.0357218384742737,-0.2465225011110306,0.0415220148861408,-0.0204985402524471,0.1452716737985611,0.2796818614006042) * MODEL22_texOff(vec2(0,-1));
res += mat4(-0.2862755060195923,-0.2560610771179199,-0.1548099368810654,-0.0013100239448249,0.0446441359817982,0.3339889049530029,-0.0998727530241013,-0.3175982236862183,0.4485007822513580,0.6848791837692261,0.7224821448326111,0.2956418693065643,-0.1925158649682999,-0.0955462753772736,-0.6139006614685059,-0.2369281500577927) * MODEL21_texOff(vec2(0,0));
res += mat4(-0.2898988127708435,-1.6114324331283569,-0.6497008800506592,-0.9161678552627563,-0.1294765472412109,0.2167941927909851,0.0852003544569016,-1.1330174207687378,-0.0520029030740261,0.3535615503787994,0.4347914457321167,-0.1785785406827927,-0.0162681266665459,-0.3837141692638397,-0.2281536757946014,0.5625996589660645) * MODEL22_texOff(vec2(0,0));
res += mat4(0.0016091616125777,0.1848176270723343,0.0971201434731483,0.0476905778050423,0.0907942056655884,0.0670004040002823,0.4161639213562012,0.0226902849972248,-0.0815638229250908,0.0852723494172096,-0.1269616484642029,0.1503992378711700,-0.0042979470454156,-0.1023452207446098,0.4321777522563934,-0.1758938729763031) * MODEL21_texOff(vec2(0,1));
res += mat4(-0.0263243932276964,-0.0069954907521605,-0.0154204443097115,-0.1056053787469864,-0.0933614373207092,-0.0158285237848759,0.1006969884037971,0.2852162122726440,-0.2413168698549271,-0.2138358950614929,-0.0675798058509827,-0.0901125967502594,0.0245993416756392,-0.1903851926326752,-0.1932047605514526,0.0820922628045082) * MODEL22_texOff(vec2(0,1));
res += mat4(-0.0577091686427593,-0.0598438680171967,0.0697890818119049,0.1319416314363480,-0.0054704342037439,-0.0452299080789089,-0.0168627519160509,0.0805051326751709,-0.0391492284834385,0.0598545372486115,0.0536216758191586,0.0556527078151703,0.0907164514064789,0.0427277833223343,-0.1744621098041534,0.0604149885475636) * MODEL21_texOff(vec2(1,-1));
res += mat4(0.1369765251874924,0.0725676268339157,0.0216140300035477,-0.0474567748606205,0.1260448843240738,-0.0171130504459143,0.0028061545453966,-0.0481070056557655,0.1716193258762360,0.0221426580101252,0.0267592072486877,-0.1099357903003693,-0.0535003803670406,-0.0689668506383896,0.0656930506229401,0.0978998914361000) * MODEL22_texOff(vec2(1,-1));
res += mat4(-0.1035909578204155,-0.2226496487855911,-0.1903141438961029,0.0017070659669116,0.0793713405728340,-0.0010820962488651,-0.0107912234961987,0.0693624392151833,-0.0736127495765686,-0.1524748355150223,0.1226568073034286,0.0990220680832863,0.2857215106487274,0.1066748276352882,-0.1393123418092728,-0.1454365849494934) * MODEL21_texOff(vec2(1,0));
res += mat4(0.1245167329907417,-0.0028252182528377,-0.0940304324030876,-0.3640029132366180,0.0347177311778069,-0.0187527481466532,-0.0822448283433914,0.1278963088989258,0.1492267847061157,0.1060213446617126,0.1648002862930298,-0.0813168436288834,-0.0807213038206100,-0.2454172372817993,-0.1133850738406181,0.1994516551494598) * MODEL22_texOff(vec2(1,0));
res += mat4(0.0289496872574091,-0.0847750827670097,-0.0586284920573235,-0.1127424016594887,0.0581536702811718,-0.0530946478247643,0.0264044813811779,0.0131464423611760,-0.1284686177968979,-0.2353171259164810,-0.2685572504997253,-0.0976479724049568,0.0581594705581665,-0.0104323895648122,0.1011395603418350,-0.0416379123926163) * MODEL21_texOff(vec2(1,1));
res += mat4(0.0621624402701855,0.1550001055002213,0.0538265220820904,0.1827560365200043,-0.0107104340568185,-0.1418752521276474,-0.0798636451363564,-0.0977272018790245,0.0990920141339302,-0.2121141552925110,-0.1391585767269135,-0.1540260761976242,-0.0604653060436249,-0.0552443675696850,-0.0668276846408844,-0.0156545545905828) * MODEL22_texOff(vec2(1,1));
res = max(res, vec4(0.0)) + vec4(-0.2318671345710754,0.7420083284378052,-0.0778856053948402,-0.0301342587918043) * min(res, vec4(0.0));
return res;
}
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!DESC mapping 2_2
//!BIND MODEL21
//!BIND MODEL22
//!SAVE MODEL2
//!COMPONENTS 4
vec4 hook()
{
vec4 res = vec4(-0.0277962964028120,-0.1985717415809631,-0.1073290854692459,0.0024779480881989);
res += mat4(0.0811279267072678,0.0074660247191787,-0.1123609691858292,-0.1698360890150070,0.0887257382273674,0.0695393756031990,-0.0230618994683027,0.0425623953342438,-0.0402214825153351,-0.0494129322469234,0.0075045302510262,-0.1391221880912781,0.0254898946732283,0.4202036559581757,0.0169367715716362,0.1162970736622810) * MODEL21_texOff(vec2(-1,-1));
res += mat4(-0.0802845284342766,0.1618342101573944,0.0214038863778114,-0.2994922995567322,0.0226798132061958,0.2954163253307343,-0.0215967521071434,-0.5252735614776611,0.0696822255849838,0.2052475959062576,-0.0265055596828461,-0.3944848477840424,-0.0293094571679831,-0.1143697351217270,-0.2332055270671844,0.0820663794875145) * MODEL22_texOff(vec2(-1,-1));
res += mat4(-0.1305592358112335,0.1524927467107773,-0.1609038710594177,0.0517596006393433,-0.1367315053939819,-2.1721241474151611,-0.0425806902348995,-0.5179468393325806,-0.3222553730010986,-0.0723694413900375,-0.1671267896890640,-0.1768694370985031,0.0145429829135537,1.2765067815780640,0.0857309028506279,-0.1213190108537674) * MODEL21_texOff(vec2(-1,0));
res += mat4(-0.0878979638218880,-0.1144944056868553,-0.0365805886685848,-0.1373428404331207,-0.5292419195175171,0.2898582518100739,0.4178947806358337,-0.3772258162498474,0.1027076691389084,-1.1238411664962769,-0.0285698007792234,-0.2039057314395905,-0.0069273989647627,-0.2929974794387817,-0.1790267378091812,-0.1915181130170822) * MODEL22_texOff(vec2(-1,0));
res += mat4(-0.0027788090519607,0.1994122415781021,-0.0658224076032639,-0.0885038822889328,0.0192358922213316,-0.3080857992172241,0.0648125559091568,-0.0109508289024234,0.4696615040302277,0.8840224146842957,0.4751364588737488,0.4315017461776733,-0.0338732637465000,0.1475903391838074,0.0496989339590073,0.3155167400836945) * MODEL21_texOff(vec2(-1,1));
res += mat4(0.2046297043561935,-0.0113510843366385,-0.1336063444614410,0.0946211144328117,0.2006236314773560,-0.6351781487464905,-0.0755926892161369,-0.1520015448331833,-0.0999751240015030,0.2593304514884949,0.0965519472956657,0.2498497962951660,-0.0299775637686253,0.1339000463485718,0.0341237075626850,-0.1136132776737213) * MODEL22_texOff(vec2(-1,1));
res += mat4(0.2127998173236847,-0.0665372312068939,-0.0486807338893414,-0.1437880396842957,0.0497845709323883,0.0425300449132919,0.3046301007270813,-0.4497503638267517,-0.0195727851241827,0.0320491380989552,0.0940830633044243,-0.3503444790840149,0.1265476793050766,0.0284851286560297,0.1494453102350235,-0.1369292140007019) * MODEL21_texOff(vec2(0,-1));
res += mat4(0.0193372890353203,-0.0583674572408199,0.0966557711362839,-0.0055422247387469,-0.2081770449876785,-0.2165530174970627,-0.2706160545349121,-0.2146805375814438,-0.0813463777303696,-0.0948553904891014,0.2122844904661179,-0.1930102258920670,-0.0226625949144363,0.0802941769361496,-0.0844247564673424,-0.2097038626670837) * MODEL22_texOff(vec2(0,-1));
res += mat4(0.3460392951965332,0.1599349826574326,0.6250801682472229,0.3714946210384369,-0.2429305166006088,-0.3126616179943085,-0.2521853744983673,0.6393439173698425,0.8533813357353210,-0.0008887434378266,-0.1081943884491920,0.0141481142491102,-0.2327625900506973,0.5992668271064758,0.1654740422964096,0.2001186907291412) * MODEL21_texOff(vec2(0,0));
res += mat4(-0.3201945126056671,0.2158686816692352,0.4808782339096069,0.3057269752025604,-0.0329684093594551,-0.1631115376949310,-0.2552576959133148,0.9101773500442505,0.3970953226089478,0.1502509266138077,-1.0378246307373047,0.5801510214805603,-0.0599720627069473,0.3526532053947449,-0.1161249279975891,-1.0023722648620605) * MODEL22_texOff(vec2(0,0));
res += mat4(-0.2168209403753281,0.0998821482062340,-0.1336549669504166,-0.0789565145969391,-0.0151122109964490,-0.0596244931221008,-0.1091464981436729,-0.4192503094673157,-0.6139240860939026,0.1908052265644073,0.2090514600276947,-0.9000411033630371,-0.0499179288744926,0.0016722747823223,0.0995322465896606,-0.0792622715234756) * MODEL21_texOff(vec2(0,1));
res += mat4(0.1512538343667984,-0.2905358672142029,0.2784178853034973,0.1258104890584946,0.0470921844244003,-0.2929796874523163,-0.1228972077369690,-0.2208275347948074,0.1874402612447739,-0.2628239393234253,-0.2582434415817261,0.1609193980693817,-0.0752650573849678,0.3131484985351562,0.0215509850531816,-0.3643134832382202) * MODEL22_texOff(vec2(0,1));
res += mat4(-0.5330864787101746,0.0843170583248138,0.1725275665521622,-0.1399286836385727,0.0505804196000099,0.1321723610162735,0.0438907966017723,-0.0251032691448927,-0.1317399144172668,0.0904046818614006,0.0580981522798538,0.2780447900295258,0.2909097969532013,-0.2710727155208588,0.1846283972263336,0.2557875812053680) * MODEL21_texOff(vec2(1,-1));
res += mat4(0.1052682772278786,0.0152548532932997,-0.0724217891693115,-0.1686895936727524,0.0116551164537668,-0.0006738404044881,-0.1962697654962540,-0.1504792273044586,-0.2718438506126404,0.1645846813917160,-0.0128216696903110,-0.2176218032836914,-0.0822013542056084,0.1193229258060455,0.0228683147579432,-0.5918979048728943) * MODEL22_texOff(vec2(1,-1));
res += mat4(0.5001649260520935,0.1525778472423553,-0.2781682014465332,0.3029212355613708,-0.0253654718399048,0.1450597494840622,-0.1043521687388420,0.1034010127186775,-0.3055011928081512,0.1234659999608994,0.0118490746244788,-0.2236849963665009,-0.1850311309099197,-0.2264277487993240,0.0382909364998341,0.3111994862556458) * MODEL21_texOff(vec2(1,0));
res += mat4(-0.0652613714337349,-0.0636309683322906,0.0623881965875626,-0.4115606546401978,-0.0362407267093658,-0.0758407562971115,-0.0237175114452839,-0.1603217720985413,-0.0034343234729022,-0.0568042472004890,0.1311943382024765,-0.0911655426025391,-0.0415358208119869,0.1019693464040756,0.0110998479649425,-0.8333273530006409) * MODEL22_texOff(vec2(1,0));
res += mat4(-0.1385643035173416,0.0797013565897942,0.0755145698785782,-0.1554726809263229,0.0761961191892624,0.0178027655929327,-0.0201916396617889,-0.0088773984462023,0.2822583615779877,0.1116631478071213,-0.1677276343107224,0.1308263391256332,-0.0420431457459927,-0.1551911383867264,-0.0575244240462780,-0.0716035813093185) * MODEL21_texOff(vec2(1,1));
res += mat4(-0.0768667981028557,-0.0895799547433853,0.0320499837398529,0.0852961093187332,-0.0108671924099326,0.0238100197166204,0.1119633167982101,-0.1320123374462128,-0.0117039503529668,-0.0743943154811859,0.2794823646545410,-0.3045157492160797,-0.0511143058538437,0.1158826500177383,-0.0150672988966107,-0.1828779727220535) * MODEL22_texOff(vec2(1,1));
res = max(res, vec4(0.0)) + vec4(-0.6132344007492065,-0.1048434227705002,0.2299597710371017,0.3570503592491150) * min(res, vec4(0.0));
return res;
}
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!DESC mapping 3_1
//!BIND MODEL1
//!BIND MODEL2
//!SAVE MODEL21
//!COMPONENTS 4
vec4 hook()
{
vec4 res = vec4(-0.0223876163363457,-0.1060141399502754,-0.0375914238393307,-0.0862116292119026);
res += mat4(0.1013671904802322,-0.0008966500754468,-0.0194363538175821,0.0293231215327978,-0.2108464688062668,0.1387624591588974,0.2029845416545868,0.2638971507549286,0.0770234093070030,-0.0712974220514297,-0.1913846135139465,-0.1378045678138733,0.0712766721844673,-0.1582399159669876,-0.1504500806331635,-0.2732931673526764) * MODEL1_texOff(vec2(-1,-1));
res += mat4(-0.0748330578207970,0.1360757201910019,0.1096481382846832,0.2175049185752869,-0.0683394894003868,-0.0237707924097776,-0.0299128498882055,-0.0306253079324961,-0.1490836739540100,0.0788012593984604,0.3392792344093323,0.2738935053348541,-0.0176930949091911,-0.1533411741256714,0.0104268807917833,-0.0417343936860561) * MODEL2_texOff(vec2(-1,-1));
res += mat4(0.1430606544017792,-0.0952415987849236,-0.0850753188133240,0.1663968563079834,-0.5190618634223938,0.1381558626890182,-0.0927182435989380,0.0211467109620571,-0.0103359837085009,-0.2416747361421585,0.1547979712486267,0.0550021231174469,0.6593996882438660,-0.0052760266698897,0.1669664382934570,-0.1481335610151291) * MODEL1_texOff(vec2(-1,0));
res += mat4(-0.1292387545108795,0.0806952938437462,0.1296790540218353,0.1629347801208496,0.0034854845143855,0.0114065753296018,-0.0582312010228634,0.1158575117588043,-0.0298857595771551,0.1987122148275375,0.0519650056958199,0.0971973165869713,-0.0489671379327774,0.0091792531311512,-0.0470198020339012,0.5538328886032104) * MODEL2_texOff(vec2(-1,0));
res += mat4(0.1522281914949417,-0.0830676928162575,-0.0427808649837971,0.1645870953798294,-0.1834830194711685,0.1507919579744339,-0.0869903713464737,0.2409375011920929,0.3105009198188782,-0.0797038674354553,0.0481293871998787,0.1739223003387451,0.2889033854007721,-0.0481913201510906,0.0193167831748724,-0.2335342168807983) * MODEL1_texOff(vec2(-1,1));
res += mat4(-0.1339087784290314,0.0135729340836406,0.0017057523364201,0.1232617646455765,0.0936431288719177,-0.0061019957065582,0.0483435392379761,0.0358846895396709,0.0329014733433723,0.0080857872962952,0.0264126416295767,0.1091407164931297,0.0051449947059155,0.0459520667791367,0.2559313178062439,0.0254027042537928) * MODEL2_texOff(vec2(-1,1));
res += mat4(0.2763945162296295,-0.1671462655067444,-0.4170847535133362,-0.0646260008215904,0.0370063446462154,0.2403483241796494,0.3464761972427368,0.4420733153820038,0.1046821698546410,-0.1590311229228973,-0.3228488266468048,-0.3738996684551239,-0.1320944428443909,0.0989339128136635,0.2841468453407288,0.0361787155270576) * MODEL1_texOff(vec2(0,-1));
res += mat4(-0.1898700892925262,-0.1074944883584976,0.1685077250003815,0.1985697895288467,0.0775568783283234,0.0569792352616787,0.0296473111957312,0.1420489847660065,0.1281145811080933,-0.0312079358845949,-0.0475365631282330,0.2561178207397461,0.0888698995113373,0.2041971385478973,0.0536539517343044,0.1834559142589569) * MODEL2_texOff(vec2(0,-1));
res += mat4(0.8149192333221436,-0.1549599319696426,-0.0398781448602676,0.1907377243041992,0.5374071598052979,0.3798620700836182,-0.8058248162269592,-0.4151621460914612,-0.1357343643903732,0.1275762319564819,0.1624598950147629,0.1195950731635094,0.0608592294156551,-0.1190541386604309,0.3604308366775513,-0.1245594546198845) * MODEL1_texOff(vec2(0,0));
res += mat4(0.0132273323833942,-0.0871523097157478,0.2945240736007690,0.3798495829105377,-0.3759584724903107,0.1892248541116714,-0.1873332411050797,-0.1617792844772339,0.3424457609653473,-0.6391636133193970,0.1942865252494812,-0.1862158477306366,0.1946611702442169,-0.6375469565391541,0.1491231173276901,-0.4260959029197693) * MODEL2_texOff(vec2(0,0));
res += mat4(0.1746832281351089,-0.0017380628269166,-0.1237998753786087,0.2028179317712784,0.2590698599815369,-0.0494076348841190,-0.1398809403181076,-0.2654671669006348,-0.0890956223011017,-0.0703305453062057,0.8770728707313538,0.2524497807025909,-0.1574884057044983,0.0695457831025124,-0.0433092303574085,0.1632892340421677) * MODEL1_texOff(vec2(0,1));
res += mat4(-0.1302398443222046,-0.0040268478915095,-0.1021594405174255,0.2535715103149414,-0.1323277950286865,0.1275873929262161,-0.0125783141702414,-0.1065506339073181,0.2126190364360809,-0.0716433450579643,-0.1399456411600113,-0.1613145619630814,0.0611384660005569,0.1994681358337402,0.0071717957034707,0.3500899672508240) * MODEL2_texOff(vec2(0,1));
res += mat4(0.1338834315538406,0.4561931192874908,-0.3260883390903473,-0.0752537846565247,-0.0519016571342945,-0.3868822753429413,0.0857315957546234,0.0304831005632877,0.0825385004281998,0.1934611946344376,-0.0811349377036095,-0.0652359500527382,-0.0335477814078331,0.0300130043178797,-0.0105781471356750,-0.0197946280241013) * MODEL1_texOff(vec2(1,-1));
res += mat4(-0.0731661468744278,0.0308893136680126,0.0310089495033026,0.0473398417234421,-0.0115999020636082,-0.2099719643592834,0.1937284916639328,-0.0073863309808075,-0.1198604255914688,-0.3530882596969604,-0.0697741732001305,0.1949538886547089,-0.0272669252008200,0.0460121221840382,0.0147004248574376,0.1585798114538193) * MODEL2_texOff(vec2(1,-1));
res += mat4(-0.1022168323397636,0.7095627784729004,-0.2185215055942535,0.2094996720552444,-0.1721526831388474,-0.6260859370231628,-0.5178827643394470,0.5061489939689636,-0.0798222795128822,-0.1110334396362305,0.0856799781322479,-0.0311204418540001,0.4083582460880280,0.2862063944339752,0.2614927589893341,-0.5276373028755188) * MODEL1_texOff(vec2(1,0));
res += mat4(-0.1420304775238037,0.0572568885982037,0.3356675207614899,0.2554636895656586,0.0592874400317669,-0.5449101328849792,-0.4398454427719116,0.0600654222071171,-0.1661207824945450,-0.1341700553894043,-0.2126734405755997,0.2419272810220718,0.1610593050718307,0.6282448768615723,0.2777999937534332,-0.0905571207404137) * MODEL2_texOff(vec2(1,0));
res += mat4(0.0298360809683800,0.1987157464027405,-0.1374524235725403,0.1534184962511063,0.0158272013068199,-0.1292124241590500,-0.0387871898710728,-0.1102364882826805,-0.0054649654775858,0.0611486248672009,0.2487671375274658,0.1022587195038795,-0.0555493459105492,0.0559154413640499,-0.0502201877534389,-0.0482881888747215) * MODEL1_texOff(vec2(1,1));
res += mat4(-0.1757578998804092,0.0737955793738365,-0.1124436780810356,0.1969589740037918,0.0451212599873543,-0.1802255362272263,0.0657186284661293,-0.0965084135532379,-0.0404272116720676,-0.0456601753830910,-0.0886195003986359,0.0086781838908792,-0.0186991002410650,-0.0061616031453013,0.1062913164496422,0.2349348962306976) * MODEL2_texOff(vec2(1,1));
res = max(res, vec4(0.0)) + vec4(0.1609187573194504,-0.0946575552225113,-0.0790160596370697,0.1213655844330788) * min(res, vec4(0.0));
return res;
}
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!DESC mapping 3_2
//!BIND MODEL1
//!BIND MODEL2
//!SAVE MODEL22
//!COMPONENTS 4
vec4 hook()
{
vec4 res = vec4(0.0064181881025434,-0.0259227696806192,0.0406666919589043,0.0599326454102993);
res += mat4(-0.0039523728191853,-0.0166944731026888,0.1361859589815140,-0.0201154630631208,0.0942757576704025,-0.1183404922485352,-0.2264956831932068,0.0679138749837875,-0.0542402677237988,-0.0026190269272774,0.0963397398591042,0.0989206135272980,-0.1445381492376328,0.0698397532105446,0.1937166750431061,-0.0864010825753212) * MODEL1_texOff(vec2(-1,-1));
res += mat4(0.0150467175990343,-0.0312143526971340,-0.1048866659402847,-0.2127760201692581,0.0351309441030025,-0.0012529657687992,0.0341468080878258,-0.0028853572439402,0.1041057184338570,-0.0196230970323086,-0.3013583719730377,0.1678945571184158,-0.0668827295303345,0.0897152796387672,0.1255217045545578,-0.1349137872457504) * MODEL2_texOff(vec2(-1,-1));
res += mat4(0.0176613666117191,0.0787993520498276,0.1570415347814560,-0.2253918200731277,0.0039341864176095,-0.0495097376406193,-0.1900888532400131,-0.2414494454860687,0.0237120874226093,-0.0472709573805332,0.2651004195213318,-0.1512611955404282,-0.0996168330311775,-0.0312318522483110,0.1397448033094406,0.5598028302192688) * MODEL1_texOff(vec2(-1,0));
res += mat4(0.1033441573381424,0.0357948578894138,0.0066860495135188,-0.3447679877281189,0.0209082979708910,0.0074101840145886,-0.0075660115107894,-0.0895587205886841,-0.0044016228057444,0.2342877388000488,-0.4525326788425446,-0.8056878447532654,0.2871247231960297,-0.2533628046512604,0.1330502927303314,-0.2711409032344818) * MODEL2_texOff(vec2(-1,0));
res += mat4(0.0583821088075638,0.0204717628657818,0.1192677393555641,-0.0600049458444118,0.0843947380781174,-0.0753051564097404,-0.2268095910549164,-0.2611580193042755,0.2172089070081711,0.1219054833054543,-0.0993994548916817,0.0905438512563705,-0.0409951210021973,0.1742875427007675,0.2137323915958405,0.2096306979656219) * MODEL1_texOff(vec2(-1,1));
res += mat4(-0.0397010035812855,0.0251092258840799,0.0135528091341257,-0.1557388156652451,0.0413166508078575,-0.0047097569331527,0.0505524128675461,0.0224600080400705,0.0564471706748009,-0.0251139067113400,-0.0540590249001980,0.2744260728359222,0.1302299052476883,0.3032833337783813,0.1519231945276260,-0.3402486443519592) * MODEL2_texOff(vec2(-1,1));
res += mat4(-0.0285596437752247,-0.0276553630828857,0.4868887960910797,-0.4238637983798981,0.3947734236717224,0.1251066476106644,-0.5504105091094971,0.1018530502915382,-0.0729319527745247,-0.0388933569192886,0.1533280014991760,-0.2760451734066010,0.0876579135656357,-0.2336451560258865,0.1346376091241837,0.1064044833183289) * MODEL1_texOff(vec2(0,-1));
res += mat4(-0.1357216387987137,-0.1224066168069839,-0.0470801629126072,-0.1234838292002678,-0.0294233579188585,0.1328788548707962,-0.1545499563217163,-0.0000642365994281,0.2182460725307465,0.1404720246791840,-0.2252583205699921,-0.0620441175997257,-0.1656052023172379,-0.0115656917914748,0.3748327493667603,0.0667838007211685) * MODEL2_texOff(vec2(0,-1));
res += mat4(0.0323339067399502,0.1893317997455597,0.5513858795166016,0.1013554707169533,-0.6044452786445618,0.8673651814460754,-0.5931649208068848,-0.3769782781600952,-0.2771540582180023,-0.1378411352634430,-0.4137916266918182,0.1723879426717758,0.5354951620101929,0.2126991301774979,0.2443658560514450,-0.0116818901151419) * MODEL1_texOff(vec2(0,0));
res += mat4(0.3901599645614624,-0.0600736550986767,-0.1424410343170166,-0.5579664111137390,-0.1640415042638779,-0.2058803737163544,-0.2200153321027756,0.1915101855993271,-0.4552527368068695,-0.4645490348339081,-0.3845494687557220,-0.1247850656509399,-0.0977618470788002,-0.4014683365821838,0.9994732141494751,0.1317824721336365) * MODEL2_texOff(vec2(0,0));
res += mat4(0.1280290782451630,-0.0382165834307671,0.1509062200784683,-0.1547142714262009,-0.2374099791049957,-0.1576380282640457,-0.0476975589990616,0.2468438446521759,0.4687332510948181,-0.0778920948505402,-0.0896032452583313,-0.1789693683385849,0.1652538627386093,0.3148133754730225,0.0339899696409702,0.0225938688963652) * MODEL1_texOff(vec2(0,1));
res += mat4(0.0260912012308836,0.0463759563863277,-0.0895745158195496,-0.4719817340373993,-0.0984568670392036,0.0127850100398064,-0.2087419927120209,-0.0011450822930783,0.1505791991949081,0.0494427233934402,-0.1376535594463348,-0.0050549805164337,0.1307158023118973,0.2804140746593475,0.1087402924895287,-0.4842006862163544) * MODEL2_texOff(vec2(0,1));
res += mat4(-0.0245725456625223,0.1157737150788307,-0.1305489689111710,-0.2341742664575577,-0.0085867978632450,0.0217456500977278,0.1095358431339264,0.2995744943618774,0.0353404842317104,-0.0478601306676865,0.1008872538805008,-0.2372021228075027,0.0912027508020401,-0.0460772588849068,-0.0647807717323303,0.0256041679531336) * MODEL1_texOff(vec2(1,-1));
res += mat4(-0.1079787760972977,-0.0873825103044510,0.0202728714793921,-0.1394625753164291,-0.0651071518659592,0.1187325865030289,-0.0126405786722898,0.1127787902951241,0.1432453244924545,-0.0489304624497890,0.1141109019517899,0.2113149315118790,0.1943181455135345,-0.0201897267252207,-0.1323021799325943,-0.2091996222734451) * MODEL2_texOff(vec2(1,-1));
res += mat4(-0.3917024731636047,0.0635988339781761,-0.2040501087903976,0.1099524125456810,0.5731406211853027,-0.1218973547220230,0.2559791207313538,-0.2311069816350937,-0.4361894726753235,-0.0275644734501839,-0.1601174473762512,0.0153250126168132,-0.3946089446544647,0.1204118654131889,0.0164085868746042,0.0389540232717991) * MODEL1_texOff(vec2(1,0));
res += mat4(-0.0099905598908663,-0.0527591370046139,-0.1892661005258560,-0.1289718598127365,0.0783784911036491,-0.1491151750087738,0.5096955299377441,0.3531769812107086,0.0478162728250027,0.1140898466110229,0.1271728277206421,-0.4512892365455627,-0.3271526098251343,-0.0411172397434711,0.0192377734929323,-0.1060684397816658) * MODEL2_texOff(vec2(1,0));
res += mat4(-0.1808445304632187,0.0439403019845486,0.0046319882385433,-0.0107918214052916,-0.0387498624622822,-0.1656891405582428,0.1761767268180847,-0.1364894211292267,0.1131881847977638,-0.0269920863211155,-0.0969191715121269,0.3675734698772430,-0.0277221314609051,0.2383823692798615,-0.1321512162685394,0.0091815656051040) * MODEL1_texOff(vec2(1,1));
res += mat4(0.0388181433081627,0.0435212217271328,-0.0346373878419399,-0.2265397012233734,0.0378025285899639,0.0081948498263955,0.1107296943664551,-0.1417375653982162,0.0815773829817772,-0.0735603570938110,-0.0326302200555801,0.0479511842131615,0.0689493268728256,0.1757876574993134,-0.0191873144358397,-0.1522977501153946) * MODEL2_texOff(vec2(1,1));
res = max(res, vec4(0.0)) + vec4(0.7232648730278015,0.9874973893165588,-0.0601831488311291,0.0691924914717674) * min(res, vec4(0.0));
return res;
}
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!DESC mapping 4_1
//!BIND MODEL21
//!BIND MODEL22
//!SAVE MODEL1
//!COMPONENTS 4
vec4 hook()
{
vec4 res = vec4(-0.1219381392002106,-0.0790507122874260,-0.3221280276775360,0.0397348254919052);
res += mat4(-0.1017600074410439,0.0495688579976559,-0.0654498636722565,-0.0167406126856804,-0.0007491247961298,0.1112839952111244,0.1065567061305046,-0.0225107502192259,0.2274755239486694,-0.0061609148979187,0.0719428509473801,0.0340589769184589,-0.2152699679136276,0.0420854240655899,-0.0334651134908199,0.0491120442748070) * MODEL21_texOff(vec2(-1,-1));
res += mat4(0.1571779996156693,-0.0577792786061764,0.0097382329404354,0.0158820338547230,0.2712175846099854,-0.1488136202096939,0.1924094259738922,-0.0046032452955842,0.0637685656547546,-0.1152549237012863,0.0239769611507654,0.0751061886548996,0.2221538424491882,-0.0220860783010721,0.0449791625142097,-0.1009933352470398) * MODEL22_texOff(vec2(-1,-1));
res += mat4(-0.0844984054565430,0.2636422216892242,0.0016927721444517,-0.0643225610256195,0.0337424241006374,0.4673462808132172,-0.6024654507637024,-0.0573053732514381,0.2988144159317017,0.0445896126329899,-0.0025431730318815,-0.1122468411922455,0.1105892434716225,-0.2006048411130905,0.1512571573257446,0.4046979248523712) * MODEL21_texOff(vec2(-1,0));
res += mat4(-0.2191342264413834,0.1729478687047958,-0.4474693536758423,-0.0645105540752411,0.0259194243699312,-0.4066369831562042,0.0902574956417084,-0.0233057383447886,-0.0850830376148224,-0.0999078750610352,0.1487859487533569,0.0047223321162164,-0.0726208835840225,-0.1409423053264618,0.0899705886840820,-0.0766842514276505) * MODEL22_texOff(vec2(-1,0));
res += mat4(0.1522485911846161,0.0448191352188587,-0.0241916012018919,0.1664255112409592,0.1005667597055435,0.3434527814388275,-0.0714822784066200,-0.2706309258937836,-0.1499702334403992,-0.1239210069179535,0.1764265000820160,-0.0681393072009087,-0.1617824137210846,-0.3176426589488983,0.0605716407299042,0.1052706092596054) * MODEL21_texOff(vec2(-1,1));
res += mat4(0.2158439308404922,0.3614296019077301,-0.1488258391618729,-0.0626114830374718,-0.2261502742767334,-0.1595045328140259,-0.0628331452608109,-0.2174367755651474,-0.0012300200760365,-0.1403118968009949,0.0617400258779526,-0.0249802377074957,-0.0224191546440125,0.0074916360899806,0.0069430666044354,-0.0695253387093544) * MODEL22_texOff(vec2(-1,1));
res += mat4(-0.0086935386061668,0.0023433216847479,-0.2092096805572510,0.0669924542307854,-0.2418711334466934,0.0315426290035248,-0.0542691163718700,0.0512491054832935,0.4985096752643585,-0.1108386516571045,0.1504421383142471,-0.0614218115806580,-0.3575291931629181,-0.0276890080422163,-0.0340618230402470,0.0840372964739799) * MODEL21_texOff(vec2(0,-1));
res += mat4(-0.0347293987870216,0.1257031857967377,0.1808818429708481,-0.1229549273848534,0.1569978445768356,0.0310060828924179,0.0239518359303474,-0.0614995360374451,0.1544884443283081,-0.0836841315031052,0.0540530718863010,0.0833408832550049,-0.6157820224761963,0.1228396669030190,-0.1128233522176743,-0.1479846984148026) * MODEL22_texOff(vec2(0,-1));
res += mat4(-0.2854860723018646,-0.4707961678504944,0.4754865765571594,-0.1192863062024117,0.0865553021430969,0.3882408440113068,0.5977408289909363,-0.2460058629512787,0.5416567325592041,-0.1934606134891510,-0.3532729744911194,0.1640860289335251,0.6124815940856934,0.1182176545262337,-0.3290739059448242,0.2970921397209167) * MODEL21_texOff(vec2(0,0));
res += mat4(-0.3102855384349823,0.2551747262477875,0.2052904218435287,-0.2138385027647018,0.4829640090465546,0.4158059656620026,0.1083678156137466,-0.3597456812858582,-0.3352298736572266,-0.0784419924020767,0.0195386223495007,0.0849872529506683,0.2775708436965942,0.2592905759811401,0.0724860727787018,0.0689116716384888) * MODEL22_texOff(vec2(0,0));
res += mat4(0.1967435926198959,0.0590742938220501,-0.1629939973354340,-0.1777479201555252,0.0392862856388092,0.3089727759361267,0.0910466834902763,0.2467705607414246,-0.4069617688655853,0.0346154943108559,0.4689309298992157,-0.2105397731065750,-0.6177817583084106,0.2816387712955475,0.1525848805904388,0.4978122413158417) * MODEL21_texOff(vec2(0,1));
res += mat4(0.6134792566299438,-0.1651839166879654,-0.3392979800701141,-0.2016063481569290,-0.4988827109336853,0.0165337976068258,-0.1190381944179535,0.0861033424735069,-0.1875204294919968,-0.1175299808382988,-0.0018291439628229,0.2142289131879807,-0.1055680364370346,-0.0556148998439312,0.0594784431159496,0.1523706018924713) * MODEL22_texOff(vec2(0,1));
res += mat4(0.1282928287982941,0.0646825581789017,0.0312928855419159,-0.0571724064648151,-0.0468447096645832,-0.0104887094348669,0.0229241624474525,0.0226127281785011,0.0348098129034042,-0.0056250318884850,0.0218307953327894,-0.0236172508448362,0.0443015806376934,0.0373805239796638,0.0865073651075363,0.1278683841228485) * MODEL21_texOff(vec2(1,-1));
res += mat4(0.0582129806280136,0.0314427614212036,-0.0190347917377949,-0.1045988276600838,0.1489758193492889,0.0686797127127647,-0.0200294423848391,-0.0264233369380236,0.0114792706444860,-0.0254622921347618,0.0453386716544628,-0.0307057946920395,-0.0144761428236961,-0.1407660990953445,0.0296764168888330,-0.0640849620103836) * MODEL22_texOff(vec2(1,-1));
res += mat4(-0.2620533704757690,0.3212752044200897,-0.2792171835899353,-0.0101119484752417,-0.1219495832920074,-0.1504399925470352,-0.1361173689365387,0.0446824319660664,0.0810224786400795,0.0766309276223183,0.1375989168882370,-0.0800683423876762,-0.1406240612268448,-0.0747951418161392,0.0301319975405931,0.0760102570056915) * MODEL21_texOff(vec2(1,0));
res += mat4(-0.0646601468324661,-0.1756545603275299,-0.0859141200780869,-0.1492357999086380,0.1859129816293716,0.0563602522015572,-0.1343476921319962,-0.0493505783379078,0.1077095568180084,0.0083594713360071,-0.1668419688940048,-0.1470805108547211,-0.0465445592999458,-0.2999864816665649,-0.1158453449606895,-0.0573335997760296) * MODEL22_texOff(vec2(1,0));
res += mat4(0.1681393831968307,0.0152606442570686,-0.1053326353430748,-0.3172874450683594,0.0793417170643806,-0.0107523798942566,0.0156386699527502,-0.0165198966860771,-0.0196700599044561,-0.0224391259253025,-0.0585874095559120,0.0483046658337116,0.1193192750215530,-0.3141980767250061,-0.0504838526248932,0.0017631716327742) * MODEL21_texOff(vec2(1,1));
res += mat4(-0.0178457275032997,-0.0424896180629730,-0.0275529921054840,0.0286935623735189,-0.2767159342765808,0.1199326664209366,0.1847609430551529,0.0953740850090981,-0.0494991913437843,-0.1535772085189819,0.0131423044949770,-0.3098267316818237,-0.0422411374747753,-0.0453605018556118,0.0439272932708263,-0.0156619027256966) * MODEL22_texOff(vec2(1,1));
res = max(res, vec4(0.0)) + vec4(0.1535267978906631,0.0788198783993721,0.8006709218025208,-1.1152083873748779) * min(res, vec4(0.0));
return res;
}
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!DESC mapping 4_2
//!BIND MODEL21
//!BIND MODEL22
//!SAVE MODEL2
//!COMPONENTS 4
vec4 hook()
{
vec4 res = vec4(-0.1522458046674728,-0.1176200807094574,-0.0493635274469852,-0.1202499568462372);
res += mat4(-0.0771020650863647,-0.1835827380418777,-0.0081384740769863,0.0861479341983795,0.0208919700235128,0.1035120040178299,-0.0502430573105812,0.1222835928201675,0.0430391579866409,0.0922289639711380,0.1100084111094475,0.0069761648774147,-0.1551695913076401,-0.0990428701043129,-0.0763163268566132,-0.0561440549790859) * MODEL21_texOff(vec2(-1,-1));
res += mat4(0.0719620436429977,-0.0568698830902576,0.1621344834566116,0.0430643707513809,0.1784564107656479,0.2766394019126892,0.1303464770317078,-0.0785371139645576,-0.0372168906033039,0.0259647686034441,-0.0001707610354060,-0.0487672723829746,-0.0062727611511946,0.0827339813113213,-0.0015896770637482,0.0185013562440872) * MODEL22_texOff(vec2(-1,-1));
res += mat4(-0.1141690313816071,-0.3864789903163910,0.0117045743390918,-0.0410739742219448,-0.2991279661655426,-0.3023860156536102,0.0640379041433334,-0.5278654098510742,0.0779961273074150,-0.1158203110098839,0.2473105341196060,-0.0286699123680592,0.1203970089554787,0.3581408858299255,-0.1676998734474182,-0.0002944025327452) * MODEL21_texOff(vec2(-1,0));
res += mat4(-0.2078344970941544,-0.2168200612068176,-0.2492605745792389,0.1106662303209305,0.0422859936952591,0.6130946278572083,-0.1497821062803268,-0.1526037007570267,0.2224747985601425,0.2939948439598083,-0.1080380976200104,-0.0234465207904577,0.0625413656234741,0.1742270439863205,-0.0687456130981445,-0.0938172489404678) * MODEL22_texOff(vec2(-1,0));
res += mat4(-0.0120489159598947,-0.0638357922434807,0.0465856455266476,0.0326742343604565,0.1520797610282898,0.0741466954350471,-0.1589285433292389,0.1507059484720230,0.0892619490623474,0.0574397295713425,0.1291393935680389,-0.0967971011996269,-0.0448387153446674,0.0426500365138054,0.0767922624945641,-0.1385603100061417) * MODEL21_texOff(vec2(-1,1));
res += mat4(0.0089179025962949,-0.1982151120901108,-0.1210607215762138,0.1618970036506653,0.0632994994521141,0.1083795800805092,-0.0599545985460281,-0.0355151742696762,-0.1080972477793694,0.0240074582397938,0.0852770358324051,-0.0383624956011772,-0.0739892497658730,0.0166055001318455,-0.0541694983839989,-0.0688572153449059) * MODEL22_texOff(vec2(-1,1));
res += mat4(0.0600926801562309,0.0330452211201191,-0.0600052624940872,0.0158219747245312,-0.0424280837178230,0.1686275601387024,0.0043287626467645,-0.1376630216836929,0.1595808714628220,-0.1054396033287048,0.0883698835968971,-0.0725852102041245,-0.3858007490634918,0.0984657034277916,-0.1034814044833183,0.0289911441504955) * MODEL21_texOff(vec2(0,-1));
res += mat4(0.0847466960549355,-0.0574547760188580,0.1835886836051941,0.0323001705110073,0.1605575829744339,-0.1890910714864731,0.3518871665000916,0.0880172103643417,-0.0009017279371619,-0.0655495300889015,-0.0607127770781517,0.0656333267688751,-0.3252617418766022,-0.0882990211248398,-0.1063503772020340,-0.1173305958509445) * MODEL22_texOff(vec2(0,-1));
res += mat4(-0.2139744013547897,0.2728379666805267,0.0953216552734375,0.1627894788980484,0.0782700255513191,0.2827286422252655,-0.0962168946862221,-0.2649762034416199,0.0268776975572109,0.0274035502225161,0.0634128600358963,0.0742966085672379,0.5284039378166199,-0.5676575303077698,-0.2223312854766846,-0.2637425065040588) * MODEL21_texOff(vec2(0,0));
res += mat4(-0.2676552832126617,-0.1061118394136429,-0.2438690066337585,0.1965969502925873,0.3220265507698059,-0.6687815189361572,-0.4547998905181885,0.2259001135826111,0.1420317590236664,-0.3651925325393677,-0.1552470326423645,-0.7243188619613647,0.2074669301509857,-0.2797248661518097,-0.2326431572437286,-0.0420682765543461) * MODEL22_texOff(vec2(0,0));
res += mat4(-0.1441280841827393,-0.0580659545958042,-0.0766427665948868,0.0445073284208775,-0.1947010904550552,0.3118771016597748,-0.1153057590126991,-0.1213182210922241,-0.1011707186698914,-0.0097622424364090,0.1497262865304947,-0.1319041848182678,-0.2436424195766449,-0.1389088928699493,0.0081290993839502,0.0271245092153549) * MODEL21_texOff(vec2(0,1));
res += mat4(0.2379951030015945,-0.0184671003371477,-0.2403022646903992,0.2086649984121323,0.4841035306453705,0.0471651963889599,0.1150723621249199,-0.0110469879582524,-0.3783148527145386,-0.1705742329359055,0.2607840299606323,0.0240125581622124,-0.2391599118709564,-0.0585423707962036,0.0138141382485628,0.0322751887142658) * MODEL22_texOff(vec2(0,1));
res += mat4(0.0621233880519867,-0.0027173764538020,0.0815972983837128,-0.0755037963390350,-0.0035977764055133,-0.0722839832305908,-0.0768231302499771,-0.0396159216761589,0.0116967726498842,-0.0022004032507539,0.1576369255781174,0.0411852225661278,0.0313400588929653,-0.1150726899504662,-0.0190158449113369,-0.0517728850245476) * MODEL21_texOff(vec2(1,-1));
res += mat4(0.0093127898871899,0.0618187971413136,0.0160160325467587,0.0711727663874626,0.0770369693636894,-0.0805183798074722,0.0948489606380463,-0.0033589983358979,0.0155866248533130,-0.0041404594667256,0.0703734979033470,0.0753517970442772,-0.0638532936573029,-0.1308353394269943,-0.0125481272116303,0.1745975762605667) * MODEL22_texOff(vec2(1,-1));
res += mat4(-0.2877179384231567,0.1759037822484970,-0.0149254146963358,-0.3645622134208679,-0.0966939702630043,0.2149588316679001,-0.0632176473736763,0.0326482281088829,0.0389980562031269,-0.0303172953426838,0.0756935626268387,-0.0256333146244287,-0.0878069028258324,0.1015449836850166,-0.0380791351199150,0.2184979170560837) * MODEL21_texOff(vec2(1,0));
res += mat4(-0.0286560114473104,0.2136799246072769,-0.2311843186616898,0.0386331938207150,0.1171527504920959,0.1365598738193512,-0.1323762089014053,0.0242694225162268,0.0034821233712137,-0.0896023139357567,-0.0015278273494914,0.3900723457336426,0.0000983321660897,0.0944209173321724,-0.2164677530527115,0.0006809064652771) * MODEL22_texOff(vec2(1,0));
res += mat4(0.0850212126970291,0.1542103290557861,-0.0473816059529781,0.0190168116241693,-0.1149476245045662,0.0453822985291481,-0.0028189518488944,-0.0764079689979553,0.1659836173057556,-0.1582878530025482,0.0611256584525108,0.0184390936046839,0.0180864483118057,-0.0088572278618813,-0.0146331088617444,0.0108325071632862) * MODEL21_texOff(vec2(1,1));
res += mat4(-0.0319982506334782,0.1878758668899536,-0.0888885408639908,0.0096141481772065,0.0741596445441246,-0.1635657399892807,0.0493983142077923,-0.0128457061946392,0.0059395609423518,-0.1977029144763947,0.0657528415322304,0.1754793822765350,-0.1338032037019730,0.0237457044422626,0.0079643372446299,-0.0344907231628895) * MODEL22_texOff(vec2(1,1));
res = max(res, vec4(0.0)) + vec4(0.6511312127113342,0.1671129912137985,-0.0597441010177135,0.2055131942033768) * min(res, vec4(0.0));
return res;
}
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!DESC sub-band residuals 1
//!BIND MODEL1
//!BIND MODEL2
//!BIND FEATURE1
//!SAVE RES1
//!COMPONENTS 4
vec4 hook()
{
vec4 res = vec4(0.0283374618738890,-0.4720447361469269,0.0240570977330208,-0.0129809509962797);
res += mat4(0.0371446721255779,-0.8995716571807861,-0.1120004579424858,-0.0627587214112282,0.2845768630504608,-0.0245083887130022,0.0065307612530887,-0.4454597830772400,0.0765401497483253,-0.2782167494297028,0.0263278763741255,-0.0536362379789352,-0.0615853369235992,-0.8115552663803101,0.0781464055180550,0.1291559040546417) * MODEL1_texOff(0);
res += mat4(-0.0658674836158752,0.1201973780989647,-0.0006808685720898,0.1277942359447479,-0.0087147429585457,-0.1862100809812546,0.0072127245366573,0.0080450763925910,0.0551731735467911,-0.0700771659612656,0.1366149485111237,-0.0962043032050133,0.0518531203269958,0.0945324152708054,-0.0430086590349674,-0.0778950005769730) * MODEL2_texOff(0);
res += FEATURE1_texOff(0);
res = max(res, vec4(0.0)) + vec4(0.9849414229393005,0.0568453334271908,1.3530071973800659,1.0141726732254028) * min(res, vec4(0.0));
return res;
}
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!DESC sub-band residuals 2
//!BIND MODEL1
//!BIND MODEL2
//!BIND FEATURE2
//!SAVE RES2
//!COMPONENTS 4
vec4 hook()
{
vec4 res = vec4(-0.0436431728303432,-0.3684050440788269,-0.0273779705166817,-0.2828843593597412);
res += mat4(0.0204514227807522,0.0304707400500774,-0.0052444878965616,0.1301165074110031,-0.1016156971454620,-0.4090886116027832,-0.2494817376136780,-0.2019464373588562,-0.0573944784700871,-0.1311245411634445,-0.0209540519863367,-0.1862112134695053,0.0028269081376493,-0.1761312633752823,-0.0276452936232090,-0.4574446380138397) * MODEL1_texOff(0);
res += mat4(0.5362485647201538,0.0928969532251358,0.0283183977007866,0.0715762674808502,-0.0409743636846542,-0.6784394383430481,0.1981076449155807,-0.1035051122307777,-0.1994037181138992,-0.2863960266113281,-0.0452203117311001,-0.3109507262706757,-0.0268154032528400,-0.2877916097640991,0.3216417431831360,0.1942034363746643) * MODEL2_texOff(0);
res += FEATURE2_texOff(0);
res = max(res, vec4(0.0)) + vec4(0.1193217113614082,0.1106821373105049,0.6098618507385254,0.1243358179926872) * min(res, vec4(0.0));
return res;
}
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!DESC sub-pixel convolution 1
//!BIND RES1
//!BIND RES2
//!SAVE SUBCONV1
//!COMPONENTS 4
vec4 hook()
{
vec4 res = vec4(0.2010960131883621,0.2046597152948380,0.1881453990936279,0.1910871863365173);
res += mat4x4(0.0011392289306968,-0.0093875946477056,-0.0148976910859346,-0.0036854455247521,0.0310414507985115,-0.0606263689696789,0.0127487797290087,0.0125642297789454,-0.0126910861581564,0.0004570177698042,0.0011062944540754,-0.0008521208656020,-0.0062735751271248,0.0107357343658805,0.0214790534228086,-0.0055235433392227) * RES1_texOff(vec2(-1,-1));
res += mat4x4(-0.0214522331953049,0.0330132097005844,-0.0020214118994772,-0.0035901805385947,-0.0746964216232300,-0.0740821212530136,0.0056589865125716,-0.0772731676697731,0.0058290148153901,-0.0101303644478321,-0.0050438679754734,-0.0113526238128543,0.0830746516585350,0.0195941086858511,0.0153881441801786,-0.0237823426723480) * RES2_texOff(vec2(-1,-1));
res += mat4x4(0.0152261219918728,0.0380328707396984,-0.0380241684615612,-0.0458207316696644,-0.0740007609128952,0.1113854795694351,-0.0054381615482271,-0.0118448669090867,-0.0294291805475950,0.0192470233887434,0.0224124677479267,-0.0103392861783504,-0.0091485409066081,-0.0309248529374599,0.0247288998216391,0.0517477244138718) * RES1_texOff(vec2(-1,0));
res += mat4x4(0.0322216600179672,-0.0166396461427212,-0.0036350577138364,-0.0022594137117267,0.2693043053150177,0.2119481414556503,-0.5539517998695374,-0.2300848662853241,0.0046360963024199,0.0296224430203438,0.0274428315460682,0.0310378503054380,-0.1802419871091843,-0.1212233603000641,0.3254813551902771,0.1910651922225952) * RES2_texOff(vec2(-1,0));
res += mat4x4(-0.0019635250791907,-0.0140673695132136,0.0027435051742941,-0.0002343246305827,0.0973082929849625,0.0291955452412367,0.0038000363856554,0.0472679212689400,-0.0076229665428400,0.0004003540379927,-0.0176377985626459,-0.0045110885985196,0.0026144199073315,0.0077777574770153,-0.0025362374726683,-0.0017223907634616) * RES1_texOff(vec2(-1,1));
res += mat4x4(-0.0034773261286318,-0.0028598513454199,0.0010725271422416,0.0041992128826678,-0.1363923549652100,-0.0440688580274582,0.0808961465954781,-0.1321281194686890,-0.0028827539645135,-0.0036714002490044,-0.0035673903767020,0.0058416510000825,-0.0040158745832741,-0.0093965586274862,-0.0614721104502678,0.0040285577997565) * RES2_texOff(vec2(-1,1));
res += mat4x4(-0.0088650919497013,0.0056629320606589,0.0264434609562159,-0.0041949660517275,-0.1044224500656128,-0.0465686991810799,0.0125883137807250,-0.0627587810158730,0.0218276027590036,-0.0218472853302956,-0.0049347621388733,-0.0232141949236393,0.0145897399634123,-0.0071130394935608,-0.0280623119324446,0.0204915180802345) * RES1_texOff(vec2(0,-1));
res += mat4x4(-0.0538064986467361,0.0953739657998085,-0.0629424825310707,0.1158977001905441,0.1457169502973557,-0.0534004867076874,-0.0197371542453766,-0.0564802139997482,0.0450520217418671,-0.0303168613463640,-0.0138612175360322,0.0096343606710434,-0.1288891285657883,0.1899452060461044,0.0407251492142677,0.1303639262914658) * RES2_texOff(vec2(0,-1));
res += mat4x4(0.6295898556709290,0.6015956401824951,0.5520075559616089,0.6055720448493958,-0.0045572095550597,0.1066368892788887,0.0315655320882797,0.3029754161834717,-0.3411723375320435,0.2853312790393829,-0.3344538211822510,0.2379437237977982,0.3485223650932312,0.3735182881355286,0.4117222428321838,0.3292364478111267) * RES1_texOff(vec2(0,0));
res += mat4x4(0.0853470191359520,-0.1003382802009583,0.0866407155990601,-0.0864839553833008,0.0078956158831716,0.1524136662483215,0.0963815525174141,-0.2157683223485947,0.3842815756797791,0.3783615827560425,-0.3822300136089325,-0.3113161325454712,-0.3944143652915955,0.0037262889090925,-0.2098172903060913,0.3972991406917572) * RES2_texOff(vec2(0,0));
res += mat4x4(-0.0198873616755009,0.0332897379994392,-0.0053030312992632,0.0059300977736712,0.4766073226928711,-0.2927798628807068,0.4145008027553558,-0.3058874309062958,0.0379787385463715,0.0197043158113956,0.0317554250359535,0.0262230820953846,0.0155623536556959,-0.0241930708289146,0.0015698857605457,0.0057815625332296) * RES1_texOff(vec2(0,1));
res += mat4x4(-0.0317478515207767,0.0071203173138201,-0.0278743151575327,-0.0087346015498042,0.0300409756600857,-0.0009421137510799,-0.0694695711135864,0.2193532437086105,-0.0204254351556301,0.0709510073065758,0.0259671546518803,-0.0633780285716057,-0.3146271407604218,0.2372228205204010,-0.2508744001388550,0.2007979154586792) * RES2_texOff(vec2(0,1));
res += mat4x4(0.0091309268027544,-0.0075138043612242,-0.0105690350756049,0.0015618086326867,0.0353675633668900,0.0147913852706552,-0.0222861394286156,-0.0231287963688374,-0.0041733644902706,0.0091610904783010,-0.0068060490302742,0.0074884011410177,-0.0105087012052536,0.0049646743573248,0.0059704952873290,-0.0073151844553649) * RES1_texOff(vec2(1,-1));
res += mat4x4(0.0129704503342509,-0.0097298845648766,0.0126019529998302,0.0191528033465147,-0.0261679086834192,-0.0361513234674931,0.0167022943496704,-0.0521022230386734,-0.0067621842026711,0.0014493890339509,-0.0183391850441694,0.0022007490042597,0.0243291929364204,-0.0054394556209445,-0.0311558730900288,0.0641983225941658) * RES2_texOff(vec2(1,-1));
res += mat4x4(0.0058755860663950,0.0231478270143270,0.0122163994237781,-0.0110751204192638,0.0287106744945049,0.0674569755792618,-0.0534705370664597,0.0728216767311096,0.0289570018649101,-0.0274134390056133,-0.0432904921472073,0.0321006551384926,-0.0029451604932547,-0.0224813763052225,-0.0072797401808202,0.0250357724726200) * RES1_texOff(vec2(1,0));
res += mat4x4(-0.0160836856812239,0.0140370950102806,0.0083269150927663,-0.0176006872206926,0.1073665097355843,0.0961451977491379,-0.0665594264864922,0.0016301712021232,-0.0624651126563549,-0.0405720882117748,0.0156172541901469,-0.0068073389120400,-0.0190098043531179,-0.0738979279994965,0.0897897481918335,-0.0441876165568829) * RES2_texOff(vec2(1,0));
res += mat4x4(0.0011073705973104,-0.0045707798562944,-0.0093563208356500,0.0014767179964110,-0.0280344896018505,0.0624363385140896,0.1537481248378754,0.0794916898012161,-0.0070973481051624,0.0027710921131074,-0.0011720197508112,-0.0107303149998188,-0.0028812016826123,0.0075960354879498,0.0102778393775225,-0.0087832165881991) * RES1_texOff(vec2(1,1));
res += mat4x4(0.0007737030973658,-0.0068514398299158,-0.0028199783992022,0.0058472012169659,0.0018526014173403,0.0282068904489279,-0.0360841602087021,-0.0585683882236481,0.0174624379724264,-0.0120120961219072,-0.0130728278309107,-0.0085735730826855,0.0023475231137127,-0.0551190264523029,-0.1038432866334915,-0.0127087393775582) * RES2_texOff(vec2(1,1));
return res;
}
//!HOOK LUMA
//!WHEN OUTPUT.w LUMA.w / 1.400 > OUTPUT.h LUMA.h / 1.400 > *
//!WIDTH LUMA.w 2 *
//!HEIGHT LUMA.h 2 *
//!DESC aggregation
//!BIND SUBCONV1
vec4 hook()
{
vec2 fcoord = fract(SUBCONV1_pos * SUBCONV1_size);
vec2 base = SUBCONV1_pos + (vec2(0.5) - fcoord) * SUBCONV1_pt;
ivec2 index = ivec2(fcoord * vec2(2));
vec4 res = SUBCONV1_tex(base);
return vec4(res[index.x * 2 + index.y], 0, 0, 1);
}