当前位置 博文首页 > 努力前行,总会成为自己心中的那道光:【Unity3D 灵巧小知识点】

    努力前行,总会成为自己心中的那道光:【Unity3D 灵巧小知识点】

    作者:[db:作者] 时间:2021-09-18 12:52

    Unity 小科普

    老规矩,先介绍一下 Unity 的科普小知识:

    • Unity是 实时3D互动内容创作和运营平台 。
    • 包括游戏开发美术建筑汽车设计影视在内的所有创作者,借助 Unity 将创意变成现实。
    • Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机平板电脑PC游戏主机增强现实虚拟现实设备。
    • 也可以简单把 Unity 理解为一个游戏引擎,可以用来专业制作游戏

    Unity小知识点学习

    Unity通过 射线 获取 鼠标的世界坐标

    通过从相机发射出一条射线,根据射线碰到的点来获取当前鼠标的世界坐标信息当前鼠标点击的物体信息

    using UnityEngine;
    public class test1 : MonoBehaviour
    {
        private Ray ray;
        private RaycastHit hit;
        Vector3 target;
        GameObject _curGameObject;
    
      void  Update()
        {
            //当按下鼠标左键时
            if(Input.GetMouseButton(0))
            {
                //鼠标在屏幕的位置
                Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
                if (Physics.Raycast(ray, out hit))
                {
                    //绘制出一条从相机射出的红色射线
                    Debug.DrawLine(Camera.main.transform.position, hit.point, Color.red);
                }
                target = hit.point;//获取鼠标的坐标位置
                _curGameObject = hit.transform.gameObject;//获取鼠标点击的物体信息
    
                Debug.Log("获取鼠标的世界坐标位置:" + target);
                Debug.Log("鼠标点击的物体信息:" + _curGameObject);
            }
        }
    }
    

    效果如下:
    请添加图片描述


    请添加图片描述

    cs