The nearest zoom to zoom at which tileSize * zoom is a whole number of screen pixels - the pure math behind CameraOptions.pixelPerfectTileSize, exported so a game can snap a zoom value (from a slider, say) before ever handing it to a Camera.
zoom
tileSize * zoom
CameraOptions.pixelPerfectTileSize
Camera
import { snapZoom } from '@datamoc/mw_games/two-d/render';console.log(snapZoom(2.4, 16)); // 2.375 - 16 * 2.375 = 38, a whole number of pixels Copy
import { snapZoom } from '@datamoc/mw_games/two-d/render';console.log(snapZoom(2.4, 16)); // 2.375 - 16 * 2.375 = 38, a whole number of pixels
The nearest zoom to
zoomat whichtileSize * zoomis a whole number of screen pixels - the pure math behindCameraOptions.pixelPerfectTileSize, exported so a game can snap a zoom value (from a slider, say) before ever handing it to aCamera.