https://github.com/memononen/nanovg/issues/12
https://groups.google.com/forum/#!topic/pupil-discuss/2Ga6aQWVoWQ
AntTweakBarの操作においてretinaディスプレイの画素シミュレーションがうまくいっていないことが原因。
マウスイベントから取るWindow上の位置は低解像度の値にシミュレートされた値だがglViewPortやAntTweakBarではretinaのフル解像度の値で描画している。なのでイベント発生時のコールバック関数内でresizeイベントやmouseイベントから取ってきた低解像度の値にシミュレートされた位置情報をretinaのフル解像度での値に直す(2倍する)した上でOpenGLやAntTweakBarの関数を呼ぶようにすることで対応。
対応の例
static void resizeCallback(GLFWwindow* window, int width, int height)
{
TwWindowSize(width*2, height*2);
}
0 件のコメント:
コメントを投稿