[Unity3d]旋转拖动物体

简介: 效果图: 代码: using UnityEngine;using System.Collections;public class DragModel : MonoBehaviour { private float x = 0.

效果图:


代码:

using UnityEngine;
using System.Collections;

public class DragModel : MonoBehaviour {
	
	
	private float x = 0.0f;
	private float y = 0.0f;
	
	private float xSpeed = 800.0f;
	private float ySpeed = 800.0f;
	
	private float zSpeed = 160f;
	
	private float minDistence = -3;
	private float maxDistence = 15;
	

	void Update () 
	{
		
		if(Input.GetMouseButton(0))
		{
			x=Input.GetAxis("Mouse X") *xSpeed;

			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*-ga*zSpeed*Time.deltaTime,Space.World);	
			}
		}
	}
}


相关文章
|
4月前
|
前端开发 计算机视觉 Python
OpenCV中绘制运动的小球动画,
要在OpenCV中绘制运动的小球动画,并且将动画显示在Python GUI窗口内,可以按照以下步骤进行:
48 2
|
7月前
|
C++ Python
C++ VTK鼠标网格表面绘制曲线
C++ VTK鼠标网格表面绘制曲线
199 0
C++ VTK鼠标网格表面绘制曲线
|
图形学
Unity3D旋转
Unity3D旋转
98 0
鼠标控制物体旋转、移动、缩放(Unity3D)
Unity3D对于鼠标操作物体的旋转、移动、缩放的功能点使用的比较多。 今天就分享如何使用Unity实现鼠标对于物体的旋转、移动、缩放。
点击物体就变颜色,我也有了神笔了(Unity3D)
OnMouseOver(),OnMouseDown(),OnMouseUp(),这三个函数只对3D物体触发事件
|
图形学
Unity 3D中的射线与碰撞检测
创建一条射线Ray需要指明射线的起点(origin)和射线的方向(direction)。这两个参数也是Ray的成员变量。注意,射线的方向在设置时如果未单位化,Unity 3D会自动进行单位归一化处理。
4347 0
Unity-移动旋转
move CharacterController:Rigidbody:AddForce,MovePositionTranslate:不检测碰撞rotate Rotation:Rigidbody:MoveRotation示例 王者荣耀式: using System.
1068 0
|
图形学
Unity中的平移 缩放 旋转
Unity中的平移 缩放 旋转 1.最近想实现Unity中的平移 缩放 旋转功能, 类似于Unity编辑器状态下的效果.尝试了好几个方式,效果都有瑕疵,网友们谁有好的实现方式,请教我. 下面是我的一种实现方式: using System.
2187 0