【Bug】Catalina での GLUT の表示バグと妥協案
TL;DR
-
GLUTを用いてアプリを作成するとこのような表示バグが起こることがある.
- 画面の左下にしか表示されない
GLUTを用いてアプリを作成するとこのような表示バグが起こることがある.
- 画面の左下にしか表示されない
Mojaveでも同様のバグがおきていたが修正されていた,しかしCatalinaでまた起きてしまった
Retina Display やHiDPIモニター だけで開発する際は注意
背景
Retina Display
Retinaディスプレイ(レティナディスプレイ、レティーナディスプレイ、英: Retina Display)は、アップル製品のうち、100〜160ppi程度であった従来のディスプレイ解像度の、およそ倍の解像度、高画素密度のディスプレイを指す名称である。
Retinaディスプレイ(レティナディスプレイ、レティーナディスプレイ、英: Retina Display)は、アップル製品のうち、100〜160ppi程度であった従来のディスプレイ解像度の、およそ倍の解像度、高画素密度のディスプレイを指す名称である。
今までのディスプレイは1dotを表現するのに1px使用していたが
Retinaディスプレイは1dotを表現するのに4pxや9px使用する.
Retinaディスプレイって何?普通のディスプレイとどこが違うの?
問題
OpenGLの表示バグはなぜ起こったか
Retina Display上では600×400の描画をするとき,600×400×4px使用する.
OpenGLでは600×400の描画をするとき,600×400pxしか指定しない.
そのため画面の表示バグが起こる.
Mojaveでは解決されてたのにというフォーラム
That render issue first appeared on macOS Mojave, due to Apple's changes to their version of OpenGL/Freeglut. That got solved with Mojave .3
Then Catalina came along, and I kept on upgrading it with every beta release. All looked good and was working fine for me.
It still is. I'm on the official version now.
妥協案
- パッチを当てる
- Viewportをいじる
パッチを当てる
glutInitDisplayString("rgba stencil double samples=8 hidpi");
Viewportをいじる.
Author And Source
この問題について(【Bug】Catalina での GLUT の表示バグと妥協案), 我々は、より多くの情報をここで見つけました https://qiita.com/drumehiron/items/2cb28f25a1395b38c209著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .