![](https://habrastorage.org/webt/rp/i_/cj/rpi_cjrtle7fnaqp5zgx7m66yr4.gif)
Иллюстрация: Юлия Прокопова
Я программист. Я не занимаюсь цифровой живописью, обработкой фотографий, видеомонтажом. Меня действительно не волнует широкая гамма или даже правильная цветопередача. Я провожу большую часть своих дней в текстовом браузере, текстовом редакторе и текстовом терминале, глядя на едва движущиеся буквы.
Поэтому я оптимизирую настройки, чтобы показывать действительно, действительно хорошие буквы. Для этого необходим хороший монитор. Не просто нужен, а ОБЯЗАТЕЛЕН. А под «хорошим» я имею в виду настолько хороший, насколько это возможно. Это мои мысли, основанные на моём собственном опыте того, какие мониторы лучше подходят для программирования.
Дисплеи низкой плотности
Согласно моему опросу программистов, 43% всё ещё используют мониторы с плотностью пикселей на дюйм менее 150:
![](https://habrastorage.org/getpro/habr/post_images/0c3/11c/2dd/0c311c2dd97707f5c6b19910c257afa9.png)
Какое разрешение dpi у вашего _основного_ монитора? Для вычисления используйте этот инструмент
Почему это проблема? Потому что единственный способ получить хорошие буквы — это потратить больше пикселей на букву. Так просто. В прошлом количество пикселей на дисплеях было небольшим, поэтому мы научились жить с этим и даже изобрели несколько очень умных трюков, чтобы сделать нашу жизнь лучше. Две важные вещи, которые нужно понять:
- Времена дисплеев с низким разрешением прошли. Теперь в ходу дисплеи с высоким разрешением.
- Хитрости, разработанные для дисплеев с низким разрешением, не могли волшебным образом заставить текст выглядеть хорошо. Это всегда было и остаётся невозможным. Они просто сделали текст немного менее ужасным, но он всё ещё ужасен.
Если вы думаете, что каким-то образом можете сделать так, чтобы ваш дисплей 1080p отображал хороший текст, что ему просто нужно ещё несколько настроек, нет. Этого не случится. Чем скорее вы примете это, тем скорее сможете начать искать реальные решения.
Чтобы сделать мое утверждение более обоснованным, давайте подробно рассмотрим, как на самом деле выглядит текст на дисплее с низким разрешением и что с этим можно сделать (спойлер: не так уж много!).
Не хватает пикселей
Во-первых, для отрисовки символов просто не хватает пикселей. Возьмём шрифт Consolas, разработанный специально для программистов. Microsoft очень много работала, чтобы настроить его для рендеринга на дисплеях с низким разрешением. Мы установили его на 14px, что является значением по умолчанию в VS Code (и люди часто уменьшают его!):
![](https://habrastorage.org/getpro/habr/post_images/fb7/b84/b78/fb7b84b78fc1b234f1e104f2d4296b39.png)
Consolas на 14px, macOS
На таком размере заглавная буква В занимает на экране всего лишь 6×9 пикселей. У строчных букв только 7 (семь!) вертикальных пикселей. Это не так уж много. У меня больше пальцев на руках, чем здесь пикселей. Независимо от того, насколько хорошо разработан шрифт, трудно что-либо показать, когда всё, что у вас есть, — это семь пикселей. Всё, что немного сложнее, чем “Т” или “Н”, становится неразборчивым пиксельным беспорядком.
Посмотрите на букву 'g' на картинке выше. Трудно сказать, где начинаются или заканчиваются штрихи, или даже сколько их там. Это просто случайный серый шум или шахматная доска, но не буква. Вот буква:
![](https://habrastorage.org/getpro/habr/post_images/2ac/eab/8c4/2aceab8c4e739d438da1bcb606fbf514.png)
Consolas на 168px
Действительно, очень обидно наблюдать, как эти прекрасные мелкие детали сжимаются всего лишь в 7×10 пикселей.
Ужасный хинтинг
Чтобы бороться с проблемой серой мешанины, Windows использует довольно агрессивный хинтинг. По сути, она просто сгибает и перемещает черты букв до ближайшего пикселя, обеспечивая более чёткие границы.
И это работает! Шрифты действительно выглядят лучше с хинтингом, чем без него:
![](https://habrastorage.org/getpro/habr/post_images/c65/0b8/29c/c650b829c13ee70992aa452a086a6c2b.png)
Нет хинтинга (macOS) → есть хинтинг (Windows)
Но не надейтесь на него: всё равно ничего не выйдет. Он не заставит текст выглядеть хорошо. Он будет выглядеть лучше, но всё равно плохо.
Однако главная проблема с хинтингом заключается в том, что он разрушает очертания букв. Пиксели визуализируются не там, где они должны быть, а скорее там, где проходит пиксельная сетка. Для примера:
![](https://habrastorage.org/getpro/habr/post_images/d8b/41c/040/d8b41c040aa86f448cd4bed50eb5e138.png)
Verdana (k) и Times New Roman Italic (z) перед растеризацией в 13px. Источник
Идея заключается в том, что он будет выглядеть лучше, когда визуализируется в реальных пикселях.
Но даже если мы просто посмотрим на вертикальный хинтинг горизонтальных линий, это всё равно слишком сильно меняет шрифт:
![](https://habrastorage.org/getpro/habr/post_images/d8d/95d/a95/d8d95da950304e06fc41076903bf9c45.png)
Смотрите, как горизонтальные линии смещаются от их фактического положения в файле векторного шрифта? Ошибка здесь составляет целых ¼ пикселя!
Но эй! Если вы никогда не видели Consolas в высоком разрешении, кого волнует, имеет ли 'g' такую же форму или нет? Кого волнует, что линии находятся не в том месте, если вы не знаете, где они должны были быть изначально? Ну, иногда проблемы более очевидны: круги не являются кругами, равные расстояния становятся не равными, пропорции все неправильные, то, что должно быть маленьким, становится огромным и наоборот, и т. д. Здесь:
![](https://habrastorage.org/getpro/habr/post_images/50e/39c/88b/50e39c88bb831a47d5520fe7537c1f28.png)
После перемещения горизонтальных линий в соответствии с пиксельной сеткой (путём смещения их до ½ пикселя!), Windows с трудом разбивает 7 других пикселей на три равных промежутка. К сожалению, альтернатива не лучше:
![](https://habrastorage.org/getpro/habr/post_images/016/556/c80/016556c80ca97dbe230769e4783bef00.png)
Из моего личного опыта разработки Fira Code я видел слишком много способов, которыми простая идея «просто приклейте края к ближайшему пикселю» может пойти не так:
![](https://habrastorage.org/getpro/habr/post_images/d9a/694/ca9/d9a694ca9f4736d99718f41b6552e326.png)
![](https://habrastorage.org/getpro/habr/post_images/c16/c9f/d4e/c16c9fd4e797b40d7f59a7f841e3b471.png)
Это игра, в которой просто невозможно победить.
Дробление пикселя
Можете ли вы нарисовать идеальную линию, которая тоньше одного пикселя?
Да. Идея действительно проста. Пиксель вашего дисплея состоит из трёх вертикальных субпикселей, каждый из которых отвечает за свой цвет. Мы можем осветить их по отдельности, эффективно утроив горизонтальное разрешение!
![](https://habrastorage.org/getpro/habr/post_images/ea5/6bf/64c/ea56bf64c5d8cd398143c94e546716bf.png)
Однако, на практике вы не можете реализовать его буквально, потому что вы просто получите рождественскую гирлянду:
![](https://habrastorage.org/getpro/habr/post_images/760/355/193/7603551931db3a12f68d92c53ee6ba6b.png)
Так что вам снова придётся идти на компромисс (внутри другого компромисса!), устанавливая предел, как далеко может отклоняться цвет от чёрного:
![](https://habrastorage.org/getpro/habr/post_images/413/fb3/d72/413fb3d724f2bfdfbf58c7de2d3e01bb.png)
Это означает, что формы букв не втрое чётче, они, возможно, в полтора раза чётче, но в целом всё ещё довольно размыты.
![](https://habrastorage.org/getpro/habr/post_images/ef7/e4b/9e0/ef7e4b9e06b395cdad9c32e1c38bf46c.png)
В конце концов, улучшается читаемость, но в то же время чёрно-белый текст приобретает легкий бирюзово-оранжевый ореол. Это не очень плохо, но вы можете его заметить.
Я пытаюсь сказать, что все эти уловки работают. Иметь их явно лучше, чем не иметь. Для дисплеев с низким DPI всё это просто необходимо. Но в то же время они представляют собой жёсткий компромисс, достигнутый во времена, когда у нас не было лучших дисплеев. Теперь, когда они у нас есть, время для этих трюков ушло.
![](https://habrastorage.org/getpro/habr/post_images/768/996/b13/768996b13f2de29122d825765a568584.png)
Consolas 14px с ClearType и хинтингом → Consolas 14px @2x
Макбуки с Retina
Макбук с Retina может заставить текст выглядеть хорошо. Однако есть две вещи, которые вы абсолютно должны сделать.
Отключить сглаживание шрифтов
Во-первых, отключите «Сглаживание шрифтов» в Системных настройках → Общие настройки:
![](https://habrastorage.org/getpro/habr/post_images/5bd/4a0/d16/5bd4a0d16942c5bbd60e06993b27736d.png)
Я не уверен, какое сегодня там значение по умолчанию, но убедитесь, что оно выключено в любом случае.
UPD: судя по отзывам, похоже, что значение по умолчанию включено. Обязательно выключите его!
Это название настройки вводит в заблуждение. Раньше она называлась «Сглаживание шрифтов на ЖК-экранах» (LCD font smoothing), что предполагало субпиксельное сглаживание. Но Apple удалила субпиксельное сглаживание из macOS в 2018 году, в том же месяце, когда выпустила свой последний ноутбук без Retina.
Другое дело, что название предполагает, что ваши шрифты могут вообще не сглаживаться. Это тоже не так.
На самом деле она просто делает шрифт немного жирнее:
![](https://habrastorage.org/getpro/habr/post_images/6f0/ce9/0e9/6f0ce90e997786d102d3972ece80ecee.png)
Так зачем его отключать? Потому что нет автоматизированного способа сделать шрифт жирнее. Обычно каждый вес шрифта тщательно разработан профессиональным дизайнером шрифтов. Это сложный процесс, который включает в себя миллионы ограничений. Если вы попытаетесь смоделировать его, например, добавив контур к букве, это будет выглядеть ужасно:
![](https://habrastorage.org/getpro/habr/post_images/4e6/fc0/44f/4e6fc044f8a73e13ba8e9feb268f0a8f.png)
Настоящий жирный шрифт и поддельный, который имитируется с контуром
Но это именно то, что делает «сглаживание шрифтов» в macOS! Вот ещё один пример. MacOS размывает пиксельные границы с помощью «сглаживания шрифтов»:
![](https://habrastorage.org/getpro/habr/post_images/a0c/e6a/71c/a0ce6a71c57cd6922ba2fd9aa0713285.png)
Представьте себе дизайнера шрифтов, который тщательно сбалансировал каждую букву, поместил каждую точку с точностью до 1/100 пикселя, только чтобы его проигнорировало тупое программное обеспечение, которое думает, что оно знает лучше.
Что это значит для нас, программистов? Если вы возьмёте шрифт, оптимизированный вручную для определённого размера пикселя (каковыми являются многие программные шрифты, например Input на 11px или Monoid на 12px), он будет отображаться размытым, несмотря на все усилия.
![](https://habrastorage.org/getpro/habr/post_images/f6c/302/924/f6c302924e8ea130029c7a9c7670e540.png)
И все остальные шрифты, включая системные, будут немного более размытыми, чем это необходимо.
UPD: Крис Морган упомянул в комментарии, что эта настройка может объяснить, почему так много дизайнеров используют
font-weight: 300
в качестве шрифта веб-страницы по умолчанию. Они чрезмерно компенсируют шрифтовое утолщение macOS!Целочисленное масштабирование
Когда я купил свой первый (и первый в мире) Retina Macbook Pro в 2012 году, это было именно то, что рекламировалось: масштабирование 2×, каждый логический пиксель визуализируется на экране 2×2. Экран 2880×1800 визуализируется из логического источника 1440×900.
К сожалению, с тех пор разум покинул Apple, и в какой-то момент MacBook начал получать странное нецелочисленное масштабирование по умолчанию. Например, экран 2880×1800 будет иметь логическое разрешение 1680×1050. Это коэффициент масштабирования 1,7142857143..., или 12/7.
Почему? Я думаю, кто-то в Apple решил, что больше экранной площади лучше продаётся. Проблема в том, что это не такой уж большой рост: всего лишь на 15%. Я имею в виду, что 15% — это хорошо, но не принципиально. Самое ужасное, что это происходит ценой потери любого шанса отрисовать любое пиксельно-чёткое изображение вообще!
Давай посмотрим. Коэффициент масштабирования 12/7 означает, что на каждые 7 логических пикселей приходится 12 соответствующих пикселей экрана. Это означает, что каждые 7 пикселей у вас есть шанс нарисовать прямоугольник высотой 7 пикселей, и это ваш единственный шанс выровняться с сеткой пикселей.
![](https://habrastorage.org/getpro/habr/post_images/b3f/931/635/b3f9316351d723fe2a56e24f0d023fa6.png)
Переместитесь на 1 пиксель вверх или вниз — и вы проиграете. Сделайте его на 1px выше или короче — вы проиграете.
![](https://habrastorage.org/getpro/habr/post_images/d91/3a6/2ff/d913a62ff5a98150e81395841a3a5262.png)
Пиксельно-идеальная линия? Жаль, но нельзя указать 7/12 пикселя в качестве ширины линии. Ещё хуже, что каждая линия 1px выглядит по-разному в зависимости от её вертикального положения:
![](https://habrastorage.org/getpro/habr/post_images/ceb/17e/90d/ceb17e90df487ac9d110a33265f835ed.png)
Неудивительно, что современные иконки в основном состоят из штрихов шириной в один пиксель:
![](https://habrastorage.org/getpro/habr/post_images/279/23c/c3a/27923cc3ad26c44927367aaa24d2709a.png)
Сверху: масштаб 2×, снизу: то же самое после 12/7 даунсэмплинга
Трудно представить себе кого-то, кто специально хочет увидеть такое.
(понятия не имею, почему нижний правый пиксель отсутствует на всех иконках)
Что происходит с текстом? Ничего хорошего. Сначала он визуализируется чётко попиксельно с разрешением 2×, затем масштабируется до 85,7142857143...%, чтобы вписаться в физические пиксели:
![](https://habrastorage.org/getpro/habr/post_images/499/d7b/c4d/499d7bc4d7ea6f95c0844c4a45788adf.png)
Monoid на 12px. Верхняя часть: масштаб 2×, нижняя часть: то же самое после 12/7 нисходящего масштабирования
Правильно, пользовательский интерфейс даже не отображается в этом странном целевом разрешении. Каждое приложение Mac думает, что оно рендерит в 2×, и только после этого ОС масштабирует его до целевого разрешения. Из-за этого двухэтапного процесса изменения размера теряется много точности и нюансов.
На мой взгляд, ничто не может нанести больше вреда внешнему виду пользовательского интерфейса, чем это. Даже старые UI с низким разрешением dpi лучше, так как их линии, по крайней мере, совпадают с пикселями!
И не забывайте: это по умолчанию. Каждый Macbook поставляется с этими настройками. Миллионы людей работают, не зная, что их лишили радости экрана ретина.
К счастью для нас, это легко исправить (по крайней мере, сейчас). Перейдите в раздел Системные настройки → Дисплеи, снимите флажок по умолчанию и выберите вместо этого разрешение 2×:
![](https://habrastorage.org/getpro/habr/post_images/326/33c/47a/32633c47a2a793d90270888387f262ea.png)
Это сделает все на экране немного больше, оставив на экране (немного!) меньше места. Это ожидаемо. Моё мнение таково: ноутбук — это ограниченная среда по определению. Дополнительные 15% не превратят его волшебным образом в огромный удобный рабочий стол. Но, по крайней мере, вы можете наслаждаться этим великолепным экраном и чёткими пиксельными шрифтами. В противном случае, зачем вам вообще покупать экран ретина?
ClearType в Windows
Учитывая все эти разговоры о недостатках ClearType и о том, что он просто необходим на дисплеях с низкой плотностью пикселей, следует ли отключить его на дисплее 4k? Теоретически — да. На практике — нет.
Во-первых, у Windows даже нет пользовательского интерфейса, чтобы отключить его. Я имею в виду, там есть этот флажок:
![](https://habrastorage.org/getpro/habr/post_images/7f3/1e4/4af/7f31e44af143335a8821eb67b3fc6af7.png)
Но даже если вы его выключите, вам все равно придётся пройти через настройку ClearType. Там просто нет кнопки OK \_(ツ)_/.
Если вы выключите его таким образом, он исчезнет в некоторых местах, но будет появляться в других. Я предполагаю, что эти места используют разные API, и одно учитывает эту настройку, а другое — нет.
![](https://habrastorage.org/getpro/habr/post_images/58c/de5/bfb/58cde5bfbac5a928146803294978cd39.png)
И самое главное, текст без ClearType выглядит как дерьмо. Это не обязательно должно быть так (он выглядит идеально на macOS, например), но особенно на Windows это невыносимо. Я думаю, что они даже не проверяют данную опцию:
![](https://habrastorage.org/getpro/habr/post_images/db7/be3/318/db7be33184284b13b910a57b4fa13da7.png)
Просто для удовольствия я перепечатал все текстовые метки, используя тот же шрифт, размер и цвет, но на macOS:
![](https://habrastorage.org/getpro/habr/post_images/e7e/0e9/1ff/e7e0e91ff6ad7376171349b37b923d2a.png)
Но текст ClearType в Windows по-прежнему выглядит хорошо, даже на дисплее 4k. Жаль только, что мы пока не можем отключить ClearType.
Возьмите хороший монитор
Позвольте мне высказать своё мнение. В конце концов, это мой блог. Я думаю, что ноутбуки не очень хороши для разработки. Они великолепны в мобильности и удобстве, и этот аргумент может перевесить всё остальное для некоторых людей. Я принимаю это. Но все же настольный монитор + внешняя клавиатура всегда лучше ноутбука. Возможно, есть и другие причины не покупать монитор, но имея его, я надеюсь, никто не будет спорить, что это превосходная среда разработки.
После этого возникает вопрос, какой монитор вам нужен? Из того, что мы уже обсуждали, должны быть ясны две вещи:
- Это должен быть, по крайней мере, монитор 4k. И 5k, и 6k также великолепны, конечно (кроме LG 5к).
- Вам нужно использовать целочисленный коэффициент масштабирования.
Это означает, что если у вас есть монитор 4k (3840×2160) и вы используете масштабирование 2×, вы получите эквивалент 1920×1080 логических пикселей. Таким образом, это базовый монитор 1080p с точки зрения того, сколько вы можете вместить, но с гораздо более чётким пользовательским интерфейсом и текстом везде.
Теперь может возникнуть соблазн использовать, например, масштабирование 1,5×. Это даст вам эквивалент 2560×1440 логических пикселей, что, как вы можете подумать, намного лучше. Это неправильное использование! Идея монитора 4k заключается не в том, чтобы получить больше пикселей, а в том, чтобы получить идеальный пиксельный рендеринг с высокой плотностью пользовательского интерфейса. В противном случае обычный дисплей 1440p будет работать лучше. Простое правило, которое нужно запомнить: выравнивание пикселей перевешивает всё остальное. Дисплей 1440p лучше отображает контент 1440p, чем дисплей 2160p.
Кроме того, можно запустить дисплей 4k с собственным разрешением 3840×2160 пикселей. Конечно, это зависит от размера дисплея, но, по моему опыту, даже 27-дюймовые дисплеи 4k слишком малы, чтобы работать при 1×. Пользовательский интерфейс будет слишком крошечным.
Миф о значении PPI, запатентованном Apple
Некоторые статьи предполагают, что компьютеры Apple должны использоваться только с дисплеями 220 PPI (пикселей на дюйм), потому что это число Apple сама использует на всех MacBook и iMac. Иногда люди заходят так далеко, что говорят, что дисплеи с другими PPI непригодны для использования в macOS.
Вот что я думаю. PPI определяет физический размер пикселя (220 PPI означает, что на дюйм приходится 220 пикселей, или 1 пиксель имеет ширину 1/220 дюйма). Таким образом, Apple гарантирует, что пиксели на всех её устройствах имеют одинаковый размер. Означает ли это, что элементы управления macOS имеют одинаковый физический размер? Больше нет, после того как Apple начала применять нецелочисленное масштабирование по умолчанию на MacBook.
Тогда почти невозможно гарантировать, что воспринимаемый размер или то, насколько большой пользователь видит элемент управления, является одним и тем же, потому что расстояние до дисплея отличается. Например, в среднем расстояние между моими глазами и экраном составляет 33 см с ноутбуком, но 68 см с монитором. Это двукратная разница!
![](https://habrastorage.org/getpro/habr/post_images/3e2/62d/81d/3e262d81d88c94d5ae62ce79e56b88b8.png)
Это означает, что угловой размер пикселя 1/220 Macbook эквивалентен пикселю монитора 1/110. На самом деле у меня меньше воспринимаемых пикселей на 27-дюймовом мониторе 4k, чем на 15-дюймовом Macbook Pro!
Даже сама Apple это понимает! Их айфоны имеют более высокий PPI, чем макбуки, потому что на них обычно смотрят с более близкого расстояния.
Подводя итог, я не вижу проблемы с 24-дюймовыми дисплеями 4k или даже 27-дюймовыми дисплеями. Я использую оба с macOS и люблю оба, никогда не было никаких проблем. Конечно, 5k или 6k были бы лучше, но они идут в категорию «приятно иметь». 4K — это обязательный, абсолютный минимум для всех, кто работает с текстом.
Переходите на 120 Гц
Раньше мир делился на два лагеря: дисплеи с высоким разрешением и дисплеи с высокой частотой кадров. Первое было хорошо для текста, второе — для игр, и между ними не было середины. Если вы любите играть в экшн-игры, купите оба (и большой стол). Геймерам не нужны были 4K-дисплеи, поскольку ни одна разумная игра не работала бы при 4k @ 120 Гц, а творческие профессионалы не использовали 120 Гц для редактирования фотографий/текста. Конечно, я был в лагере высокого разрешения с 2014 года и никогда не променял бы рендеринг текста ретины на едва заметное изменение частоты обновления.
![](https://habrastorage.org/getpro/habr/post_images/1ce/389/0d0/1ce3890d0f0e1790afe58f9e7828ff0e.png)
HP Z27 (4k) и LG 34GL750-B (120 Гц)
Что ж, раскола больше не существует. Поскольку с недавнего времени (да, я слишком ленив, чтобы проверить) вы можете получить и то, и другое! Вы можете найти монитор 4k, работающий на частоте 120 Гц. Собственно, это открытие и послужило главной мотивацией для данной статьи.
Почему 120 Гц?
Если вы, как и я, работаете с текстом, вы можете подумать, что вам не нужны 120 Гц. И были бы правы. Это относится к категории «приятно иметь», но если вы ищете способы улучшить свой опыт, это отличный способ.
120 Гц даёт вам несколько существенных улучшений:
- Анимация становится более плавной, вплоть до того момента, когда она начинает казаться непрерывным движением вместо очень быстрого слайд-шоу.
- В частности, очень плавная прокрутка. Браузер, редактирование кода, среди прочего.
- Вся система чувствует себя гораздо более отзывчивой.
- Вы можете играть в игры и работать на одном дисплее.
Конечно, я не могу показать вам, что такое 120 Гц. Но вот что вы можете сделать, чтобы понять идею: переключитесь на 30 Гц и попробуйте работать так некоторое время.
Вы заметите, что всё плохо анимировано и менее отзывчиво. Это связано с тем, что время между обновлениями монитора теперь составляет 32 мс вместо 16 мс при частоте 60 Гц. Это означает, что независимо от того, что вы делаете (нажимаете кнопку, перемещаете мышь), ближайший момент времени, когда компьютер может начать отображать результат, может быть на расстоянии 32 мс.
32 мс — это очень долго и хорошо заметно. На 60 Гц это время сокращается вдвое: самое долгое, что вам нужно ждать, — всего 16 мс. на 120 Гц это время снова сокращается вдвое: с 16 мс до 8 мс. в абсолютных числах вы устраняете дополнительные 8 мс, что означает, что переход 60 Гц → 120 Гц примерно вдвое менее эффективен, чем переход 30 Гц → 60 Гц. Но всё-таки стоит того, на мой взгляд.
Что купить?
На самом деле у нас нет особого выбора. Из того, что я могу найти, прямо сейчас на рынке есть только четыре (да, четыре!) дисплея 4k 120+ Гц! Думаю, это потому, что спрос не так уж высок, но я рад, что у нас есть хотя бы такой выбор!
Первый — Asus ROG SWIFT PG27UQ:
![](https://habrastorage.org/getpro/habr/post_images/bdb/3ec/154/bdb3ec154cc8bca4addcea57d698e54f.png)
Второй — Acer Predator X27:
![](https://habrastorage.org/getpro/habr/post_images/9d5/9a9/1e3/9d59a91e376adb68e99c2c983e40044a.png)
Третий — Acer ConceptD CP7:
![](https://habrastorage.org/getpro/habr/post_images/c03/359/f99/c03359f998328a52aec5f6809d404a1e.png)
Все они очень хорошие мониторы, я уверен. Но цена немного завышена (~2000 долларов), особенно для тех, для кого 120 Гц не является вопросом жизни и смерти.
Есть ещё несколько мониторов с диагональю 55 дюймов и более, которые было бы трудно использовать на обычном рабочем столе.
Наконец, по какой-то невероятной удаче у нас действительно есть один недорогой, разумного размера монитор 4k 120 Гц. Это Acer Nitro XV273K:
![](https://habrastorage.org/getpro/habr/post_images/2af/5c2/4bf/2af5c24bf1b2b654b15a919c5c5ed8cd.png)
И это единственное, что у меня есть.
Вещи, на которые стоит обратить внимание (Windows)
В Windows несложно запустить разрешение 4k на частоте 120 Гц. Убедитесь, что ваша видеокарта имеет DisplayPort 1.4, используйте его, вот и всё. Серьёзно, это просто работает.
![](https://habrastorage.org/getpro/habr/post_images/c4b/0cc/24c/c4b0cc24c3824e8474d9be1de3eaea4f.png)
Вещи, на которые стоит обратить внимание (macOS)
Поддержка MacOS отстой. Официально ни один из компьютеров Apple не поддерживает ничего выше 60 Гц, даже при нормальном разрешении:
![](https://habrastorage.org/getpro/habr/post_images/502/3cb/db7/5023cbdb78e93aa775fb1cb381a9efee.png)
Так что покупка этого дисплея была основана на чистой вере. Вот что я понял:
- 4k @ 120 Гц требует 3840 × 2160 × 3 bpp × 120 Гц × 8 = 24 Гбит/с. Чуть ниже 25,92 Гбит / с DisplayPort 1.3 / 1.4.
- HDMI 2.0 обеспечивает только 18,0 Гбит/с, поэтому нужно использовать DisplayPort.
- Thunderbolt 3 поддерживает DisplayPort 1.4, так что если найти адаптер, всё должно пойти.
Как определить, какой порт у моего Macbook? Легко! Используйте эту диаграмму, предоставленную Apple:
![](https://habrastorage.org/getpro/habr/post_images/443/48a/7ab/44348a7ab0f22d1c5d94847a40f19fdb.png)
Итак, значок молнии означает Thunderbolt (не путать с портом Lighting!), а железнодорожная стрелка означает USB-C. Теперь просто посмотрите на свой Macbook:
![](https://habrastorage.org/getpro/habr/post_images/e7a/e01/22f/e7ae0122f30dc77c316066287fa57658.png)
Думаю, разобраться не так просто \_(ツ)_/. В качестве альтернативы можно посмотреть на страницу Apple с интуитивно понятным названием SP794:
![](https://habrastorage.org/getpro/habr/post_images/dfb/6e2/a81/dfb6e2a81980b0e5c318ff40e7ffc968.png)
![](https://habrastorage.org/getpro/habr/post_images/398/61b/17c/39861b17c2a6f1256210651366b3104a.png)
Итак, прежде всего, что означает Thunderbolt 3 (USB-C)? Это Thunderbolt 3 или USB-C? Это может быть разница между «работает безупречно» и «не работает вообще»:
![](https://habrastorage.org/getpro/habr/post_images/087/03f/a6c/08703fa6cb536a4a346182e5e0c52452.png)
Затем упоминается «DisplayPort over USB-C» (но у нас есть Thunderbolt 3, а не USB-C!). Страница не указывает версию DisplayPort, и без неё она бесполезна. Она также говорит, что USB 3.1 Gen 2 ограничен 10 Гбит/с, но я думаю, что ограничения USB 3 не распространяются на USB-C? Кроме того, что это за название — USB 3.1 Gen 2? Уже приняли USB 3.2?
Ну что ж, Википедия в помощь!
В октябре 2016 года Apple анонсировала обновлённый Macbook Pro с двумя или четырьмя портами Thunderbolt 3, в зависимости от модели. В июне 2017 года Apple анонсировала новые модели iMac с двумя портами Thunderbolt 3, а также iMac Pro с четырьмя портами был выпущен в декабре 2017 года.
8 января 2018 года Intel анонсировала обновление продукта (под кодовым названием Titan Ridge) с «усиленной надёжностью» и поддержкой DisplayPort 1.4. Новый контроллер периферии теперь может работать как USB sink (совместим с обычными портами USB-C).
Оказывается, Thunderbolt 3 может иметь или не иметь DisplayPort 1.4. Некоторые из них доходят только до DP 1.2. Статья Википедии предполагает, что всё, выпущенное до 2018 года, определённо не будет работать, но после 2018 года это может или не может работать, в зависимости от версии Thunderbolt. Чувствуешь себя потерянным? Используй мою схему:
![](https://habrastorage.org/getpro/habr/post_images/378/1bf/62a/3781bf62aae56ba36d2b79c50ac73ca9.png)
Думаю, что мы все можем согласиться с тем, что вся эта ситуация Thunderbolt/USB-C является очень сильным претендентом на «самый запутанный стандарт порта, когда-либо созданный человечеством».
Короче говоря, мне повезло. Мой Macbook Pro 2019 имел правильный порт, и с адаптером Thunderbolt 3 (USB-C) для DisplayPort всё заработало. Насколько я понимаю, версии портов на устройствах имеют значение, но кабели и адаптеры — нет, пока они физически помещаются в отверстие. В моем случае это был конвертер Xiaomi USB-C → miniDP и кабель miniDP → DP.
![](https://habrastorage.org/getpro/habr/post_images/1fe/cfc/a3f/1fecfca3f4868efdf18983254821c9fb.png)
Будет ли это работать на вас? Понятия не имею! Надеюсь, что будет. Всё, что я знаю, это то, что вы должны убедиться, что ваш Thunderbolt 3 может нести DisplayPort 1.4. Это волшебное сочетание.
Вещи, на которые стоит обратить внимание (macOS) — продолжение
Если до сих пор не было достаточно запутанно, есть ещё кое-что!
Думаю, ваш Macbook должен иметь дискретную видеокарту (На это могут влиять и другие причины, например, пересмотр Thunderbolt. У меня ограниченная тестовая база, но: Macbook Pro 15” 2019 работает, Macbook Air 2018 — нет, Mac mini 2018 работает только с eGPU). Различные графические карты Intel UHD/Iris не работают. eGPU работает.
![](https://habrastorage.org/getpro/habr/post_images/eb2/5f7/3b1/eb25f73b1316c42662ebde21ca97e89b.png)
Но даже если у вас есть совместимый Mac, с совместимыми портами, совместимыми кабелями, этого недостаточно. Каждый раз, когда я загружаю свой Mac, есть ритуал, который я должен выполнить, чтобы заставить мой дисплей переключиться в режим 120 Гц. Я называю это «танец 120 Гц»:
- Полностью загрузить macOS. В этот момент дисплей обычно находится на частоте 60 Гц.
- Перейдите в раздел Системные настройки → Дисплеи.
- Удерживая нажатой клавишу Alt/Option (которая с ⌥), нажать на флажок Scaled в «Разрешении».
- Чтобы получить доступ к выбору частоты обновления, установите флажок «Показывать режим низкого разрешения». Л — логика.
- Посмотрите селектор «Частота обновления». Большую часть времени самый высокий вариант там 60 Гц.
- Выключите дисплей.
- Подождите пару секунд.
- Включите дисплей.
- Посмотрите ещё раз в разделе «Частота обновления». Надеюсь, теперь есть вариант «119,88 герц».
- Выберите «119,88 герц» в разделе «Частота обновления».
- Вы великолепны.
Почему это 119,88 герц, а не 120 Гц? Без понятия. Похоже, это работает одинаково. Почему macOS не может вспомнить его? Я не знаю. Почему macOS не видит 120 Гц в качестве опции, пока я не выключу/не включу монитор? Кто знает! Главный вывод заключается в том, что опция 120 Гц может появиться не всегда, но после некоторого танца вокруг неё может появиться, и если это произойдёт, то она действительно работает, несмотря ни на что.
Вся эта ситуация напоминает мне покупку дисплея 4k в 2014 году: есть только пара моделей, порты сбивают с толку, поддержка Apple отстой. Надеюсь, через пять лет 120 Гц станет стандартом. До тех пор мы должны быть благодарны, что, при больших неудобствах, мы, по крайней мере, можем использовать современные дисплеи с macOS. Спасибо, Apple!
Что дальше?
Каждому человеку нужна мечта. В какой-то момент 4k @ 120 Гц станет обыденностью, и мы даже можем увидеть 5k @ 120 Гц и больше. Мы также можем видеть экраны ретина с соотношением 21:9 и даже 32:9 (больше горизонтального пространства), что всегда является желанным дополнением (на самом деле, есть впечатляющий 34WK95U-W, но вы также можете найти его как более короткую версию более традиционного 27MD5KL-B).
Но даже сегодня вы можете заглянуть в будущее, если у вас есть лишние 4000 долларов. Это Dell UP3218K, первый и единственный в мире монитор 8k:
![](https://habrastorage.org/getpro/habr/post_images/839/0ee/b0f/8390eeb0ff886bd0344a66e4ec60793f.png)
Даже на промо-странице для дисплея 8k Dell публикует только его фотографии размером 1×
Плотность пикселей на нём настолько высока (280 PPI), что его, вероятно, лучше всего использовать при масштабировании 300% (чего, конечно, нет в macOS, но есть в Windows). Он также требует двух одновременных кабелей DisplayPort для работы, что опять же не подходит для Mac.
Но даже при 300% он всё равно даст вам эффективное логическое разрешение 2560×1440, что существенно больше, чем 1920×1080 современных дисплеев 4k. Больше плотности пикселей и больше разрешения! Что ж, можно помечтать.
Заключение
Подводя итог, вот лучшая установка для программистов:
- Текст не может выглядеть хорошо на дисплеях с низким разрешением.
- Дисплеи с высоким PPI перестали быть экзотикой, пришло время переключиться.
- Ноутбуки — это нормально, но автономный монитор всегда лучше.
- Монитор 4k имеет смысл только при масштабировании 2× / 200%.
- Если вы хотите пойти дальше, то теперь есть доступные варианты 4k @ 120 Гц.
Удачного кодирования!
См. также: