func scaleUpdater() {
	for {
		s := getscale(0, 0)
		atomic.StoreUint64(&cachedScale, math.Float64bits(s))
		time.Sleep(cacheUpdateWait)
	}
}
func scaleUpdater() {
	for {
		s := getscale(0, 0)
		atomic.StoreUint64(&cachedScale, math.Float64bits(s))
		time.Sleep(cacheUpdateWait)
	}
}
// run as goroutine. Will keep the desktop scale up to date.
// This can be removed once the scale change event is implemented in GLFW 3.3