我正在为Android Mobile平台在Unity上开发一个应用程序。在此脚本的帮助下,我用单指触摸手势旋转对象,
using UnityEngine;
public class MouseDragRotate : MonoBehaviour {
float rotationSpeed = 0.02f;
void OnMouseDrag()
{
float XaxisRotation = Input.GetAxis("Mouse X")*rotationSpeed;
float YaxisRotation = Input.GetAxis("Mouse Y")*rotationSpeed;
// select the axis by which you want to rotate the GameObject
transform.RotateAround (Vector3.down, XaxisRotation);
transform.RotateAround (Vector3.right, YaxisRotation);
}
}
但是问题在于,该脚本仅适用于所有Unity资产,例如立方体,球体,胶囊等。但是不能使用第三方3d对象,
所以简单的问题是,为什么此脚本不能在第三方3d对象上工作?
答案 0 :(得分:1)
您应确保将显示的脚本添加到右侧顶级对象中,而不是添加到该对象的嵌套组件中。 如果仍然有问题,请向我们显示更多有关您尝试将此对象应用到的对象的信息。以及为其设置了哪些组件和选项。
答案 1 :(得分:1)
您必须在要与之交互的3d模型/对象上附加某种Collider
。您可以做的是向任何导入的对象中添加一个BoxCollider
,或者如果附加了MeshFilter
,您还可以添加一个MeshCollider
。