unity3d控制物体旋转和缩放(包括触摸控制物体旋转和缩放)
创始人
2025-07-09 12:11:26
0

Touch ot1;

Touch ot2;

float scale;

void Start () {

}

void Update () {

    if (Input.touchCount > 0) {

        if (Input.touchCount == 1) {

            Vector2 v = Input.GetTouch (0).deltaPosition;

            transform.Rotate (v.y, -v.x, 0, Space.World);

        }

        if (Input.touchCount > 1) {

            Touch t1 = Input.GetTouch (0);

            Touch t2 = Input.GetTouch (1);

            if (t2.phase == TouchPhase.Began) {

                ot1 = t1;

                ot2 = t2;

                return;

            }

            float d1 = Vector2.Distance (t1.position, t2.position);

            float d2 = Vector2.Distance (ot1.position, ot2.position);

            scale =( d1 - d2)/100f;

            ot1 = t1;

            ot2 = t2;

        }

    }else{

        if(Input.GetMouseButton(0)){

            transform.Rotate (Input.GetAxis ("Mouse Y")*10f, -Input.GetAxis ("Mouse X")*10f, 0, Space.World);

        }

        scale = Input.mouseScrollDelta.y/10f;

    }

    float s=transform.localScale.x+scale;

    if(s>0.05f&&s<6f){

        transform.localScale = new Vector3 (s, s, s);

    }

}

相关内容

热门资讯

okhttp的使用 android网络框架之OKhttp一个处理网络请求的开源项目,是安卓端最火热的轻量级框架,适用于 ...
unity3d控制物体旋转和缩... Touch ot1;Touch ot2;float scale;void Start () {}vo...
android studio报... android studio报错:项目: No matching variant of com.an...
android studio ... 解决办法:找开gradle/wrapper/gradle-wrapper.properties文件,...
unity3d学习笔记 《unity3d学习笔记》--擅码网unity视频教程一、新手入门1、unity3d环境搭建unit...
unity3d控制物体移动(触... float x;float y;if (Input.touchCount > 0) { //触控 ...
unity3d物体移动、旋转和... 物体移动:1、transform.Translate():位置,相对值,默认按自身坐标。transf...
unity3d相机跟随移动物体 public Transform target;float m_height=3.0f; vo...