[Unity3d]控制物体的旋转以及缩放
2013-12-26 11:37
726 查看
我们在用unity做产品展示的功能的时候,旋转和缩放是必不可少的功能,如果是大型物品,比如汽车或者其他的东西,可以使用旋转摄像机的思路来控制达到物体旋转的效果,如果是这种情况可以参考我之前的文章:http://blog.csdn.net/dingxiaowei2013/article/details/16337411;如果是小型物品的展示,就可以通过通过控制物体本身的旋转和位置的变化来达到缩放和旋转物体的效果。因为我这里有一个背景图,所以不希望背景图动,之所就只能采取第二种方法来达到缩放旋转物体的效果。
Code:
效果图:
Code:
using UnityEngine; using System.Collections; public class DragModel : MonoBehaviour { private float x = 0.0f; private float y = 0.0f; private float xSpeed = 200.0f; private float ySpeed = 200.0f; private float zSpeed = 40f; private float normalDistence = 0; private float minDistence = 0; private float maxDistence = 10; void Update () { if(Input.GetMouseButton(1)) { x=Input.GetAxis("Mouse X") *xSpeed; print(Input.GetAxis("Mouse X")); y=Input.GetAxis("Mouse Y") *ySpeed; transform.Rotate(Vector3.up * -x *Time.deltaTime,Space.World); transform.Rotate(Vector3.right * y *Time.deltaTime,Space.World); } else if(Input.GetAxis("Mouse ScrollWheel")!=0) { float ga = Input.GetAxis("Mouse ScrollWheel"); if(transform.position.z > minDistence && transform.position.z<maxDistence||transform.position.z<=minDistence && ga<0||transform.position.z>=maxDistence && ga>0) { transform.Translate(Vector3.forward*-Input.GetAxis("Mouse ScrollWheel")*zSpeed*Time.deltaTime,Space.World); } } } }
效果图:
相关文章推荐
- Unity3d控制物体的旋转以及缩放
- [Unity3d]控制物体的旋转以及缩放
- Unity3D 控制物体移动、旋转、缩放
- 手指触摸滑动物体带惯性的旋转 以及放大缩小(用插件easytouch 控制物体的旋转和缩放)
- Unity3d中使用鼠标控制物体的平移旋转缩放
- Unity3D 控制物体移动、旋转、缩放
- Unity3D 几个基本动画(控制物体移动、旋转、缩放)
- Unity3D 控制物体移动、旋转、缩放
- Unity3D开发之控制摄像机围绕物体旋转 平移 缩放
- Unity3D 控制物体移动、旋转、缩放
- Unity3D 控制物体移动、旋转、缩放
- Unity3D 控制物体移动、旋转、缩放
- Unity3D 控制物体移动、旋转、缩放
- Unity3D 几个基本动画(控制物体移动、旋转、缩放)
- 002-实现Unity3d中触摸屏幕控制物体的旋转和缩放 代码实现
- shader学习基础之十一实现纹理的缩放平移和旋转,以及用c#代码合并两种贴图并且控制位置
- Unity3D的相机跟随、视野缩放以及旋转
- unity3D基础学习 通过判断鼠标点击的是否是目标物体,物体旋转,滑动滚轮缩放拉近视角
- Unity3d物体模型(实现旋转缩放平移自动旋转)
- 【转载】Unity3D研究院之IOS触摸屏手势控制镜头旋转与缩放