What problem does it solve? Raw NanoVG rendering on high-DPI screens produces UI that appears too small or blurry when nvgBeginFrame is called without the correct resolution mode and pixel ratio. This Skill guides the selection and implementation of the correct resolution mode before any nvgBeginFrame call. ## Core Features & Use Cases - Three Resolution Modes: Mode C (physical pixels), Mode B (system logical resolution with DPR correction, the default), and Mode A (design resolution with scale factor and offset for absolute layouts). - Decision Rules: Chooses Mode A when a design resolution like 1920x1080 is specified, otherwise defaults to Mode B, and prompts the user to pick when information is insufficient. - Input Coordinate Conversion: Provides formulas converting physical-pixel mouse/touch input into logical or design-space coordinates for each mode. - Use Case: A Lua 2D game using raw nvgCreate/nvgBeginFrame calls looks tiny on a Retina display; apply Mode B with logicalW/logicalH and pixelRatio=dpr, then upgrade to Mode A with nvgScale and nvgTranslate when a 1080p design target is given. ## Quick Start Ask the AI to set up the NanoVG resolution mode for your project, stating whether you have a design resolution such as 1920x1080 or want the default DPR-corrected logical resolution.