网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Unity3D拖动任意对象GameObject移动到任意地方-创新互联

今天不是很忙,研究了一下拖拽GameObject移动到任意位置,沿x轴和z轴移动,其他的也就不说了,上代码:

站在用户的角度思考问题,与客户深入沟通,找到城步网站设计与城步网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都做网站、成都网站制作、企业官网、英文网站、手机端网站、网站推广、国际域名空间、网页空间、企业邮箱。业务覆盖城步地区。using UnityEngine; using System.Collections; public class DragAndDrog : MonoBehaviour {     private GameObject target;     private bool isMouseDrag;     private Vector3 screenPosition;     private Vector3 offset; // Use this for initialization void Start () { } // Update is called once per frame void Update () {         GameObjectDragAndDrog(); }     //任意拖拽     private GameObject ReturnGameObjectDrag(out RaycastHit hit)     {         target = null;         Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);         if (Physics.Raycast(ray.origin, ray.direction * 10, out hit))         {             target = hit.collider.gameObject;         }         return target;     }     //拖拽Updata     private void GameObjectDragAndDrog()     {         if (Input.GetMouseButtonDown (0))         {             RaycastHit hitInfo;             target = ReturnGameObjectDrag(out hitInfo);             if (target != null)             {                 isMouseDrag = true;                 screenPosition = Camera.main.WorldToScreenPoint(target.transform.position);                 offset = target.transform.position - Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPosition.z));             }               }         if (Input.GetMouseButtonUp(0))         {             isMouseDrag = false;         }         if (isMouseDrag)         {             Vector3 currentScreenSpace = new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPosition.z);             Vector3 currentPosition = Camera.main.ScreenToWorldPoint(currentScreenSpace) + offset;             target.transform.localPosition = new Vector3(currentPosition.x, currentPosition.y, currentPosition.z);         }     } } 本脚本可以加载任意一个对象GameObject,场景中所有带Collider的对象,当鼠标点击拖动时候都可以沿x和z轴拖动。之前,都是要拖动那个GameObject就会写一个脚本挂在上面,今天实现了不用每一个要拖动的GameObject都挂载脚本,也不用将移动的GameObject赋给某个变量。

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享题目:Unity3D拖动任意对象GameObject移动到任意地方-创新互联
浏览地址:http://bjjierui.cn/article/gjjod.html

其他资讯