皮皮网
皮皮网

【libcrypto源码】【arya云支付源码】【真人购彩源码】dotween源码解析

来源:微验源码 发表时间:2024-11-30 01:31:57

1.Unity摄像机之焦距某点缩放

dotween源码解析

Unity摄像机之焦距某点缩放

       在游戏开发中,码解细致观察某些对象是码解必要的。通常,码解我们可以通过鼠标滑动来达到这一目的码解。在Scene面板中,码解libcrypto源码我们可以直观地看到这一过程。码解arya云支付源码然而,码解当我们观察到鼠标距离越远,码解消失或生成的码解速度越快时,且摄像机中心点与鼠标的码解Viewport距离始终不变,会发现实现这一功能相对复杂。码解因此,码解我上网寻找相关源码,码解真人购彩源码发现只有UI上的码解放大方法是通过改变锚点实现的。但在非UI场景中,码解如何实现这一功能呢?

       首先,我将Camera设置为Orthographic模式,龙泉福源码头因此需要通过改变Size来实现缩放效果。

       其中,Size的值等于

       我是通过横向来确定Size的,如图,息县麻将源码教程一个小格子占个像素,因此

       缩小时,Size值增大;相反,放大时Size值减少。下面简单解释一下原理。

       假设相机在最左下点,鼠标点在中心点,其他如下:

       size:放大后的orthographicSize(已知)

       oldSize:放大前的orthographicSize(已知)

       mousePos:鼠标位置的世界坐标 = Camera.ScreenToWorldPoint(Input.mousePosition)(已知)

       pos:放大前Camera位置坐标 = Camera.transform.position(已知)

       newPos:放大后Camera位置坐标

       因此,得到以下公式

       由于其他条件已知,因此可以求出对应的newPos

       主要源码如下:

       其中,使用了Dotween插件以实现平滑移动的效果。

相关栏目:知识