首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将“视野”转换为“正交大小”

将“视野”转换为“正交大小”
EN

Stack Overflow用户
提问于 2019-09-05 10:52:03
回答 1查看 37关注 0票数 1

我有一个透视相机和一个用于粒子的正交相机。我在游戏中控制透视相机的视野,我必须以相同的比例将其应用于正射尺寸。

当Fied Of View为60,Orthsize为5,当视野为120时,Orthsize为15似乎大致正确,所以我乘以1.5倍,但它失败了。

代码语言:javascript
复制
float t = Mathf.Abs (_MainCamera.fieldOfView - Vl) * 0.3f;
    float orthmove = (_OrthgraphicCamera.orthographicSize * (float) Vl / (float) _MainCamera.fieldOfView * 1.5f);
    _MainCamera.DOFieldOfView (Vl, t);
    Debug.Log (orthmove);
    _OrthgraphicCamera.DOOrthoSize (orthmove, t);
EN

回答 1

Stack Overflow用户

发布于 2019-09-05 11:16:09

把它弄清楚。

图片来源:https://forum.unity.com/threads/how-to-calculate-horizontal-field-of-view.16114/#post-2961964

代码语言:javascript
复制
private void AdjustCamera (float aspect) {
    float _1OverAspect = 1f / aspect;
    _MainCamera.fieldOfView = 2f * Mathf.Atan (Mathf.Tan (60 * Mathf.Deg2Rad * 0.5f) * _1OverAspect) * Mathf.Rad2Deg;
    Debug.Log (_MainCamera.fieldOfView);
    _OrthgraphicCamera.orthographicSize = 5 * _1OverAspect;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57797823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档