var referenceWidth = 1334;
var referenceHeight = 750;
var cam = Camera.main;
var resolutionAspect = (float)referenceWidth / referenceHeight;
var camAspect = cam.aspect;
var fov = cam.fieldOfView * Mathf.Deg2Rad * 0.5f;
if (resolutionAspect > camAspect)
{
var hTan = Mathf.Tan(fov) / (1 / camAspect * resolutionAspect);
fov = Mathf.Atan(hTan);
}
var distance = Vector3.Distance(transform.position, cam.transform.position);
transform.localScale = Mathf.Sin(fov) * distance * Vector3.one;
More than 3 years have passed since last update.
Register as a new user and use Qiita more conveniently
- You get articles that match your needs
- You can efficiently read back useful information
- You can use dark theme
List of users who liked
00