本发明属于Unity3D技术领域,尤其是涉及一种基于Unity3D的移动端触摸交互脚本的优化方法。
背景技术:
目前U3D中实现平移、缩放、旋转触摸操作的Touch脚本或开发包,流行是TouchScript,LeanTouch,InputTouch等,体量大太,多达10个、20几个脚本文件,部署过程繁杂,易用性太差,发布时也给软件下载部署造成压力。
。摒弃现有实现类似3D Max样式的触摸操作的繁杂、大体量的脚本实现,
技术实现要素:
有鉴于此,本发明旨在提出一种基于Unity3D的移动端触摸交互脚本的优化方法,以轻量的单个脚本实现平移、缩放、旋转触摸操作的功能。。
为达到上述目的,本发明的技术方案是这样实现的:
基于Unity3D的移动端触摸交互脚本的优化方法,包括如下内容:
通过对摄像机的三个参数的控制来形成实现模型的平移、旋转、缩放功能的单个脚本文件,所述三个参数包括摄像机虚拟中心的位移参数、摄像机Orbit旋转角度参数和摄像机与模型的距离参数。
进一步的,所述摄像机Orbit旋转角度参数以在球状坐标系中,通过水平方位角φ和垂直角θ来定位在单位球体中的位置而得到的。
相对于现有技术,本发明具有以下优势:
本发明方法摒弃现有实现类似3D Max样式的触摸操作的繁杂、大体量的脚本实现,以轻量的单个脚本实现平移、缩放、旋转触摸操作。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面结合实施例来详细说明本发明。
一种基于Unity3D的移动端触摸交互脚本的优化方法,包括如下内容:
通过对摄像机的三个参数的控制来形成实现模型的平移、旋转、缩放功能的单个脚本文件,所述三个参数包括摄像机虚拟中心的位移参数、摄像机Orbit旋转角度参数和摄像机与模型的距离参数。
所述摄像机虚拟中心的位移参数Offset:
摄像机虚拟中心以摄像机虚拟Parent,空GameObject实现,如此摄像机平移,只需移动该parent即可,实际上,摄像机总是在围绕该虚拟中心在做Orbit旋转。
所述摄像机Orbit旋转角度参数:
其一,摄像机朝向:
Orbit模式,即摄像机总是面向特定对象,这个以LookAt函数实现;
其二,不以传统的笛卡尔坐标系中xyz位置坐标定摄像机的位置,而是以球状坐标系中,通过水平方位角φ和垂直角θ来定位在单位球体中的单位位置,如此参数成指数下降,也可有效利用球体坐标系中的三角函数计算。
所述摄像机与模型的距离参数:
上面2个参数已经定了摄像机在球坐标系中的方位,那么只差距离一个参数,即可确定了摄像机的具体位置。缩放,在3D引擎中,3D摄像机距离物体,距离近,则在视觉上则大,距离远,则视觉上就小,大多所谓缩放就是通过调节摄像机相对物体的空间距离实现的。所以我们控制缩放,即增加一个距离参数即可。
本发明是脚本的轻量化实现,将通过很多个脚本来实现的功能用一个单一的脚本来实现。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。