Unity---2d射线检测
Posted 格拉格拉
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity---2d射线检测相关的知识,希望对你有一定的参考价值。
目录
1.目标物体加对应的collider碰撞体
2.调节ProjectSetting里的time 帧速
3.避坑代码
using UnityEngine;
public class XXXContr : MonoBehaviour
RaycastHit2D hit;
private Transform hitObj;
private void Awake()
void Start()
private void OnMouseDown()
Debug.LogError("down");
private void OnMouseDrag()
private void OnMouseUp()
SetTableState(false);
private void FixedUpdate()
if (isMove)
//2d射线检测需要指定layer 并且添加射线长度,否则会失效
LayerMask layer = 1 << 8;
hit = Physics2D.Raycast(_camera.ScreenToWorldPoint(Input.mousePosition), Vector2.zero, 100f, layer);
Debug.DrawLine(Input.mousePosition, hit.point, Color.black);
if (hit.collider != null)
hitObj = hit.transform;
//Debug.LogError("------" + hitObj.tag + "------");
private void OnTriggerEnter2D(Collider2D collision)
//Debug.LogError("trigger:" + collision.tag);
private void OnTriggerExit2D(Collider2D collision)
//Debug.LogError("Exit:" + collision.tag);
以上是关于Unity---2d射线检测的主要内容,如果未能解决你的问题,请参考以下文章