Quick answer: Canvas Scaler → UI Scale Mode = Scale With Screen Size. Reference Resolution = your design size. Match = 0.5.
UI looks great on the test phone. Tester sends a screenshot from a phone with different DPI. Buttons tiny or huge. Constant Pixel Size doesn’t adapt.
The Fix
Canvas Scaler:
UI Scale Mode: Scale With Screen Size
Reference Resolution: (1080, 1920) // portrait design
Screen Match Mode: Match Width Or Height
Match: 0.5
Reference Pixels Per Unit: 100
Reference Resolution is the size your designers worked at. Canvas scales the rendered UI proportionally on every device. Match = 0.5 protects both axes from extreme distortion.
Per-Orientation Switch
if (Screen.orientation == ScreenOrientation.LandscapeLeft) {
scaler.referenceResolution = new(1920, 1080);
} else {
scaler.referenceResolution = new(1080, 1920);
}
Verifying
Test on multiple aspect ratios in Game view. UI scales sensibly across iPhone SE, iPad, Android tall.
“Scale With Screen Size. Match 0.5. UI feels right.”
Related Issues
For TMP InputField, see caret keys. For UI Toolkit, see UXML binding.
Reference resolution. Match 0.5. UI fits.