using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.EventSystems;
public class threeto2D : MonoBehaviour,IPointerClickHandler,IDragHandler
{
public GameObject cube;
public Camera MainCarema;
public Camera uiCarema;//canvas为camera模式下的摄像机,深度值较大,depthonly
public Canvas canvas;
public RectTransform rect;
Vector2 poss;
void Start() {
// rect = transform as RectTransform;
if (RectTransformUtility.ScreenPointToLocalPointInRectangle(canvas.transform as RectTransform, Input.mousePosition, canvas.GetComponent<Camera>(), out poss))
{
Debug.Log(poss);
}
}
// Update is called once per frame
void Update ()
{
#if true
//UnityEngine.EventSystems.EventTrigger
// unity版本用的5.3.5f. cas.planeDistance : 找到原因了,uicarema需要设置成为正交模式,否则,则需要改变cas.planeDistance。
#region canvas 摄像机模式,两种效果相同
关于3D物体坐标转换为UI坐标,随着鼠标拖拽等操作
最新推荐文章于 2024-07-25 23:07:21 发布
本文探讨了如何将3D场景中的物体坐标转换为UI坐标,以便在用户界面上进行准确的鼠标拖拽和其他交互操作。通过深入理解Unity的UGUI系统和坐标变换原理,我们可以实现3D元素与2D UI的无缝交互。
摘要由CSDN通过智能技术生成