diff options
Diffstat (limited to 'fonts.lua')
| -rw-r--r-- | fonts.lua | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/fonts.lua b/fonts.lua new file mode 100644 index 0000000..905b2a3 --- /dev/null +++ b/fonts.lua @@ -0,0 +1,27 @@ +---@diagnostic disable: undefined-global +-- Font loader for pixel-perfect 64x64 virtual screen +local M = {} + +local FONT_PATH = "assets/font/font.otf" +local DEFAULT_SIZE = 16 + +local function setPixelFilter(font) + font:setFilter("nearest", "nearest") + return font +end + +function M.load() + M.default = setPixelFilter(love.graphics.newFont(FONT_PATH, DEFAULT_SIZE)) + return M.default +end + +function M.get(size) + if not size then return M.default end + M.sizes = M.sizes or {} + if not M.sizes[size] then + M.sizes[size] = setPixelFilter(love.graphics.newFont(FONT_PATH, size)) + end + return M.sizes[size] +end + +return M |
