- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 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
switch (pattern)
{
case 0:
case 1:
case 4:
case 32:
case 128:
case 5:
case 132:
case 160:
case 33:
case 129:
case 36:
case 133:
case 164:
case 161:
case 37:
case 165:
{
PIXEL00_20
PIXEL01_60
PIXEL02_60
PIXEL03_20
PIXEL10_60
PIXEL11_70
PIXEL12_70
PIXEL13_60
PIXEL20_60
PIXEL21_70
PIXEL22_70
PIXEL23_60
PIXEL30_20
PIXEL31_60
PIXEL32_60
PIXEL33_20
break;
}
case 2:
case 34:
case 130:
case 162:
{
PIXEL00_80
PIXEL01_10
PIXEL02_10
PIXEL03_80
PIXEL10_61
PIXEL11_30
PIXEL12_30
PIXEL13_61
PIXEL20_60
PIXEL21_70
PIXEL22_70
PIXEL23_60
PIXEL30_20
PIXEL31_60
PIXEL32_60
PIXEL33_20
break;
}
case 16:
case 17:
case 48:
case 49:
{
PIXEL00_20
PIXEL01_60
PIXEL02_61
PIXEL03_80
PIXEL10_60
PIXEL11_70
PIXEL12_30
PIXEL13_10
PIXEL20_60
PIXEL21_70
PIXEL22_30
PIXEL23_10
PIXEL30_20
PIXEL31_60
PIXEL32_61
PIXEL33_80
break;
}
Метки: #hqx, #алгоритмы, #копипаста, #генереции, #мокросы, #магия.
Вдогонку:
Кстати, сам алгоритм отвоевал отдельную статью в «Википедии»:
https://en.wikipedia.org/wiki/Hqx
Ссылку нашёл в этой статье, когда искал алгоритмы масштабирования изображений, потому что «waifu2x» мне показался сложноватым:
https://en.wikipedia.org/wiki/Pixel-art_scaling_algorithms
FXAA — алгоритм антиалиасинга, т. е. сглаживания зубчатости наклонных линий:
https://ru.wikipedia.org/wiki/Сглаживание
https://en.wikipedia.org/wiki/Spatial_anti-aliasing
hqx — алгоритм масштабирования изображений:
https://ru.wikipedia.org/wiki/Алгоритмы_масштабирования_пиксельной_гра фики
https://ru.wikipedia.org/wiki/Масштабирование_изображения
Да, иногда после масштабирования тупым клонированием пикселей применяют антиалиасинг, чтобы сгладить получившиеся зубцы. Но вообще же алгоритмы антиалиасинга и специального масштабирования неэквивалентны.
> Hqx uses the YUV color space to calculate color differences, so that differences in brightness is weighted higher to mimic human perception.
Та же хуйня, только FXAA использует окружающие пиксели для определения направления, а уже по этому направлению может ходить на несколько пикселей.
под глубиной очевидно подразумевается какая-то цветовая характеристика (luma?)
весь алгоитм описан на стр. 7-8 http://developer.download.nvidia.com/assets/gamedev/files/sdk/11/FXAA_WhitePaper.pdf
> Fike
Совпадение? Не думаю.