Намучился я на ноуте с гибридной графикой AMD/NVidia.
Если использовать ноут только с его родным экраном, то проблем никаких.
И apdgpu и nvidia прекрасно поддерживают "scaling mode" "Full aspect" (у nvidia он конечно свой как и всё остальное).Но при подключении внешнего монитора по HDMI наступает какой-то ад!
Все открытые драйвера в xrandr не поддрерживают для него ни "scaling mode" "Full aspect" на добавление режима 1440x1080 и даже scale 1x1 и transoform не работают, просто какая-то ошибка шрифтов, а монитор, даже если он поддерживает разрешение, например 1280x960, упорно.размазывает его по всей ширине FullHD монитора.
Таких проблем нет для любых выходов с десктопной видеокарты и матрицы ноутбука, но есть для всех внешних выходах ноутбука.
Nvidia же себя ведёт ещё более странно. Ну устанавливает зачем-то завышенный DPI на монитор, приходится прибивать к 96, а также если монитор поддерживает разрешение (прописан дополнительный режим в EDID), например 1280*960 то nvidia его видит и также размазывает по всей ширине, предполагая что монитор сам должен его ограничивать.
Если я из EDID убираю все дополнительные режимы, оставляя только основной, то nvidia сама дорисовует дополнительные режимы и отображает их с постфиксом (scaled), например 1280*960 (scaled) и о чудо так пропорции сохраняются... но только если я заранее перед запуском выставлю его на мониторе сам вручную, иначе она отключит мой монитор и включит ранее отключенную матрицу и запустит игру на ней.
И усложняется это тем, что в nvidia нельзя выбирать режим через командную строку передавая параметры, только кликать мышкой в окне настроек, которое на разрешениях ниже 1280*960 вообще целиком не влазит и табом в слепую приходится клацать и искать кнопку Ok для подтверждения.
Ну и wine через dxvk с nvidia отказывается запускать некоторые dx9 игры, хотя запускает их без dxvk и запускает другие dx11 с dxvk.
wine с dxvk на amdgpu запускает их все.
Может я чего-то не знаю и nvidia или amdgpu можно заставить нормально поддерживать full aspect со внешними видеовыходами ноутбука, или переключать видеорежимы из скрипта запуска, как в xrandr?