Re[46]: Еще
От: alex_public  
Дата: 19.06.17 21:38
Оценка:
Здравствуйте, c-smile, Вы писали:

_>>Да я как бы и сам без проблем могу написать функцию, рисующую линию на экране с помощью opengl, но тривиальной она не будет в любом случае.

CS>Про тривиальность именно написания речи нигде не было. Мы говорим про computational complexity вывода графики.
CS>Использовать CPU алгоритмы со сложностью O(N) в desktop UI в 21 веке уже нельзя. Т.е. GDI,GDI+,AGG (при всей моей любви к последней) уже всё —
CS>количество пикселей на экранах 96dpi и 300dpi (retina) отличается на порядок — CPU не вытягивают.

Это безусловно верно. Но я намекаю на другой нюанс. Что если считать затраты на рисование с помощью шейдеров по честному (т.е. учитывать не только конечную функцию, инициирующую рисование, но и все подготовительные этапы), то их честный O(1) во многих случаях может оказаться больше чем O(N) из тупого рисования в память.

CS>Собственно внедрение high-dpi мониторов (которые были уже давно) тормозилось именно отсутствием должной математики (в том числе).


Ну вообще то dpi имеет довольно слабое отношение к числу пикселей на экране. Скажем у больших 4K телевизоров очень маленький dpi, но при этом очень много пикселей.

Далее, если уж говорить про dpi, то тут надо ещё понимать, что во многих случаях высокий dpi имеет только маркетинговый смысл, т.к. его использование выходит за реальные возможности человеческого глаза по распознаванию углового размера — чистый развод покупателей. Разве что есть небольшой смысл на платформах не осиливших нормальное сглаживание шрифтов (типа OSX) — там тогда появляется эффект "физического" сглаживания шрифтов прямо в глазе (набор пикселей видится как один сглаженный). А в большинстве случаев это развод маркетолагами на большие цифры (у нас больше dpi чем у конкурентов и пофиг что человеческий глаз не может увидеть разницу на предполагаемом рабочем расстояние), так что не вижу ничего плохого в сдерживание этого бреда.

А вот высокие разрешения (4K и далее) — это действительно очень классно (если конечно имеются соответствующие источники контента), т.к. увеличивает детализацию изображений (только для того, чтобы их реально разглядеть нужен и экран большого физического размера). И тут действительно есть проблемы с производительностью. Только вот они есть и у GPU в том числе (см. например какие нужные видеокарты для современных игр на экране в 4K).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.