您当前的位置: 首页 >  unity

程序员正茂

暂无认证

  • 3浏览

    0关注

    283博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Unity 从工具栏上拖拽生成物体

程序员正茂 发布时间:2019-05-06 09:46:43 ,浏览量:3

1.新建场景,建立工具栏。 2.在Resources文件夹下建立预制件person。 3.建立脚本DragSpawn.cs,挂载到要拖拽的按钮上。

拖拽三维实体见:https://blog.csdn.net/zouxin_88/article/details/89237172

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;

public class DragSpawn : MonoBehaviour, IPointerDownHandler
{
    //正在拖拽的物体
    private GameObject _objDragSpawning;

    //是否正在拖拽
    private bool _isDragSpawning = false;

    // Update is called once per frame
    void Update()
    {
#if UNITY_EDITOR
        if (_isDragSpawning)
        {
            //刷新位置
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            _objDragSpawning.transform.position = ray.GetPoint(10);

            //结束拖拽
            if (Input.GetMouseButtonUp(0))
            {
                _isDragSpawning = false;
                _objDragSpawning = null;
            }
        }
#endif

#if UNITY_ANDROID
        if (_isDragSpawning)
        {
            if (Input.touchCount == 1)
            {
                if (Input.touches[0].phase == TouchPhase.Moved)
                {
                    Vector3 ptMouse = Input.touches[0].position;

                    //刷新位置
                    Ray ray = Camera.main.ScreenPointToRay(ptMouse);
                    _objDragSpawning.transform.position = ray.GetPoint(10);
                }

                if (Input.touches[0].phase == TouchPhase.Ended)
                {
                    _isDragSpawning = false;
                    _objDragSpawning = null;
                }
            }
        }
#endif
    }

    //按下鼠标时开始生成实体
    public void OnPointerDown(PointerEventData eventData)
    {
        GameObject prefab = Resources.Load("person");
        if (prefab != null)
        {
            _objDragSpawning = Instantiate(prefab);
            _isDragSpawning = true;
        }

    }

}

 

关注
打赏
1660743125
查看更多评论
立即登录/注册

微信扫码登录

0.0386s