当前位置: 首页 > news >正文

flask做的网站如何上传爱站关键词搜索

flask做的网站如何上传,爱站关键词搜索,荆州做网站公司,桓台网站建设公司本来我是用 EventSystem.current.IsPointerOverGameObject()来检测是否点击在UI上的,但是发现,他对我的碰撞体也是返回ture,研究半天。。。。找不出问题,然后发现我的相机上挂载了PhysicsRaycaster,去掉之后就好了,至于…

本来我是用 EventSystem.current.IsPointerOverGameObject()来检测是否点击在UI上的,但是发现,他对我的碰撞体也是返回ture,研究半天。。。。找不出问题,然后发现我的相机上挂载了PhysicsRaycaster,去掉之后就好了,至于为什么相机上挂载PhysicsRaycaster,好像是我的别的同事做的一个物体拖拽,用了 IDragHandler, IBeginDragHandler, IEndDragHandler,来做对3D物体的拖拽。。。我真的是无语。。。他的代码是这样的。。。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using QFramework;public class ObjDrag : MonoBehaviour, IDragHandler, IBeginDragHandler, IEndDragHandler
{private Vector3 ObjVector3 = Vector3.zero;public string deskTag = "desk";private Collider collider;/// <summary>/// isDrag等于false无法交互/// </summary>public bool isDrag = false;void Start(){collider = GetComponent<Collider>();}public void OnBeginDrag(PointerEventData eventData){ObjVector3 = this.transform.position;if (isDrag&&Input.GetMouseButton(0)){StringEventSystem.Global.Send<string>("Begin", eventData.pointerDrag.name);Debug.Log(eventData.pointerDrag.name);}}public void OnEndDrag(PointerEventData eventData){if (isDrag){this.transform.position = ObjVector3;StringEventSystem.Global.Send<string>("EndDrag", eventData.pointerDrag.name);Debug.Log(eventData.pointerDrag.name);}}/// <summary>/// 物体可拖拽/// </summary>/// <param name="eventData"></param>public void OnDrag(PointerEventData eventData){if (isDrag && Input.GetMouseButton(0)){Vector3 screenpos = Camera.main.WorldToScreenPoint(transform.position);Vector3 mouseScreenPos = new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenpos.z);this.transform.position = Camera.main.ScreenToWorldPoint(mouseScreenPos);Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);var hits = Physics.RaycastAll(ray);foreach (var item in hits){if (item.collider != null && item.collider.tag == deskTag){var dis0 = Vector3.Distance(Camera.main.transform.position, item.point);var offset = collider.bounds.size.magnitude / 2;var dis1 = Vector3.Distance(Camera.main.transform.position, transform.position) + offset;if (dis1 > dis0){var precent = 1 - (offset / dis0);transform.position = Camera.main.transform.position + (item.point - Camera.main.transform.position) * precent;//transform.position = item.point;}//transform.position = item.point;break;}}}}}

然后必须在摄像机上挂载Unity UGUI的PhysicsRaycaster (物理射线检测)

下面介绍一下:

PhysicsRaycaster

【Unity】 UGUI的PhysicsRaycaster (物理射线检测)组件的介绍及使用-CSDN博客

IDragHandler, IBeginDragHandler, IEndDragHandler

【Unity】IBeginDragHandler、IDragHandler 和 IEndDragHandler 介绍-CSDN博客

问题就是他们都是用于UI 元素的,然后他用在了3D物体上,导致对我的3D物体起作用,如果一定要在相机上挂载PhysicsRaycaster,又要EventSystem.current.IsPointerOverGameObject只对你的UI 元素起作用,那么可以在这个组件上,用EventMask:指定哪些层的UI元素可以接收事件。比如你的模型是层级是

那么你就可以在EventMask上不勾选Model

 

这样 EventSystem.current.IsPointerOverGameObject()就不会对你指定的模型碰撞体起作用了。。。

http://www.yidumall.com/news/89351.html

相关文章:

  • 开设网站步骤地推推广方案
  • 网站开发项目提成微指数官网
  • 自己做网站需要买什么目前最流行的拓客方法
  • 网站代理怎么做的上海专业seo排名优化
  • 关于委托建设网站河北seo网络优化培训
  • 青岛本地网站郑州网站优化公司
  • wordpress 图片无法显示网站优化排名资源
  • 新疆生产建设兵团交通厅网站外贸网站免费推广b2b
  • 想做个人域名网站怎么做开发网站的公司
  • 织梦网站模板专业的推广公司
  • 免费二级网站网站百度收录批量查询
  • 网站后台设置做引流的公司是正规的吗
  • 网站建设图片如何循环转网站seo哪家公司好
  • 上海简站商贸有限公司广州seo优化公司排名
  • 怎么查询域名苏州seo按天扣费
  • 事业单位网站建设方案站外推广免费网站
  • 做网站客户要求分期seo免费优化网站
  • 洛阳网站建设好做不关键词优化如何
  • 南通精诚建设集团有限公司网站怎样通过网络销售自己的产品
  • jsp商务网站开发比较靠谱的推广公司
  • 灰色项目网站代做汽车网络营销的方式有哪些
  • 河南省建设厅官方网站 吴浩app推广平台放单平台
  • 网站有哪些备案河南网站建设公司哪家好
  • 上海的加盟网站建设西安seo服务培训
  • 外包做的网站可以直接去收录吗上海网络营销
  • 专注高端网站建设的搜索引擎优化
  • 企业logo设计平台竞价关键词优化软件
  • 怎样用ps做企业网站西安seo经理
  • 用文件传输协议登录网站最近七天的新闻大事
  • 网站可以做外部链接吗seo关键词排名优化推荐