2021-01-31
2021-01ももう終わり
emersion/mako
最後の画像でえ?になった
WaylandのHiDPIサポートはWaylandネイティブアプリならかなりいい感じに動作する(ディスプレイごとにDPIが変わるみたいな状態でもちゃんと動く)が、XWaylandを使った瞬間に全てが崩壊し、スケーリング前の解像度で描画したものを無理矢理引き伸ばして描画する。当然ボケる
ボケナス
fred-wang/ozone-caca: libcaca port of Ozone
https://www.reddit.com/r/archlinux/comments/d119v0/confused_about_environment_variables_under_wayland/
🔛
NieR:Automata起動までできたが、XWaylandがスケーリング後の解像度を渡してくるせいで4Kで遊べない
スケーリングを調節するといける
ElectronをChromiumごとソースビルドしてOzoneが有効化されたバイナリを得て、DiscordをWaylandアプリ化した
一時間半くらいかかってるのでやらないほうがいいです
https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/432 が入ると
https://github.com/swaywm/wlroots/pull/2064 が使えて
https://github.com/swaywm/sway/pull/5090 でHiDPIがいい感じになるらしい
遥かな道程だtosuke.icon
AURパッケージがあったので入れた
xrandrの挙動がおかしくなってNieR:Automataが4Kで起動しなくなったが、そこまで4Kでゲームしたいモチベがなかったので深掘りしないことにした
原理として、整数スケーリングなので、5Kとかで描画して縮小することになる
だいたいの人が<2倍のスケーリングを画面にかけてるはずなので、それを打ち消すことを考えて2倍とかにするのが無難
Xft.dpi: 144を忘れずに
NieRが4Kで起動しなくなった理由、ちょっと面白いので書いておく
HiDPIのパッチを入れると、Xで動くアプリケーションからは画面解像度がスケーリングされて見える
tosuke.iconの環境だと4Kディスプレイは4/3倍されて5Kまで出せるディスプレイに見えます
でもxrandrの返す値がおかしくなっていて、面積ごとにソートされていない
NieR(の呼ぶWindowsのAPIをLinux用に変換しているwine)はXで動いているのでxrandrを見て使える解像度を取ろうとするが、xrandrの値がソートされていることに依存しているっぽく、正常に動かない。4Kがあることに気付かないっぽい
#日記