网站首页 美食营养 游戏数码 手工爱好 生活家居 健康养生 运动户外 职场理财 情感交际 母婴教育 生活知识 生活百科 知识问答 更多知识

Unity AI教程 之 简易的视觉感知系统

时间:2026-03-12 05:20:57

1、知识点背景:一个敌人,简易设置视野距离3m,视野角度90,目标进入视野距离,且在视野角度内,则发现目标,具体如下图

Unity AI教程 之 简易的视觉感知系统

2、打开Unity,新建一个空工程,具体如下图

Unity AI教程 之 简易的视觉感知系统

3、在工程里面添加些物体作为演示,其中“Spotlight”作为辅助视角使用,具体应用可省去,具体如下图

Unity AI教程 之 简易的视觉感知系统

Unity AI教程 之 简易的视觉感知系统

4、新建一个脚本,然后双击脚本或者右键“Open C# Project”打开,具体如下图

Unity AI教程 之 简易的视觉感知系统

Unity AI教程 之 简易的视觉感知系统

5、编写脚本,脚本内容大概如下:首先设置视野距离和视野角度范围,添加目标(具体使用可以设置检测统一的tag或layer),然后判断是否在视野距离内,在判断是否在视野角度里,具体如下图

Unity AI教程 之 简易的视觉感知系统

6、脚本具体内容如下:

using System.Collections;

using System.Collections.Generic;

using UnityEngine;

public class VisualSense : MonoBehaviour {

    public float viewDistance = 3;

    public float viewAngle = 90;    

    public GameObject target;

    // Use this for initialization

    void Start () {

            }

        // Update is called once per frame

    void Update () {

        if (Vector3.Distance (target.transform.position , transform.position) <= viewDistance) {

            Vector3 dir = target.transform.position - transform.position;  

             float angle = Vector3.Angle (dir, transform.forward);

            if (angle <= viewAngle/2) {

                Debug.Log ("视野内");

            }

        }

    }

}

7、脚本编译正确,回到Unity界面,把脚本挂载到“Cube”父物体上,并把“Capsule”赋值给脚本,具体如下图

Unity AI教程 之 简易的视觉感知系统

8、运行场景,起初“目标”不在视野里,控制台console未打印;进入视野内,控制台console打印,移出视野外,控制台console停止打印,具体如下图

Unity AI教程 之 简易的视觉感知系统

Unity AI教程 之 简易的视觉感知系统

Unity AI教程 之 简易的视觉感知系统

9、到此,《Unity AI教程 之 简易的视觉感知系统》讲解结束,谢谢

© 2026 阿力知识库
信息来自网络 所有数据仅供参考
有疑问请联系站长 site.kefu@gmail.com