Problem
Gun sight alignment works perfectly on desktop but appears offset on mobile when aiming down sights.
Code
-- Sight alignment calculation
local screenCenter = Vector2.new(camera.ViewportSize.X / 2, camera.ViewportSize.Y / 2)
local sightScreen = camera:WorldToScreenPoint(frontSightPos)
local screenOffset = screenCenter - Vector2.new(sightScreen.X, sightScreen.Y)
local sightOffset = Vector3.new(
screenOffset.X * offsetScale,
-screenOffset.Y * offsetScale,
0
)
Suspected Causes
- Camera.ViewportSize - Does this account for mobile UI elements?
- WorldToScreenPoint - Different behavior on mobile vs desktop?
- Touch controls - Reduce effective screen area?
- Mobile camera mode - First-person behaves differently?
Questions
- Are there known mobile vs desktop camera differences?
- Should I use platform-specific offset calculations?
- How do you handle cross-platform viewmodel consistency?
Expected: Same sight alignment on both platforms
Actual: Gun positioned differently on mobile