【Unity每日一记】鼠标相关API


👨‍💻个人主页@元宇宙-秩沅

👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!

👨‍💻 本文由 秩沅 原创

👨‍💻 收录于专栏unity每日一记

⭐🅰️推荐文章⭐


【软件设计师高频考点暴击】

【Unityc#专题篇】之c#系统化大礼包】

【unity数据持久化】数据管理类_PlayerPrfs

【unity本站最全系列】unity常用API大全一篇文章足以


⭐⭐


文章目录


API之------鼠标相关



API 之------创建,获取,失灵,销毁


👨‍💻👍1.创建物体的三种方式


1.new 构造函数

2.instantiate 实例化方法

3.Gameobject .CreatPrimtive(Primitve Type.cube);使用特别的API创建一些基本的游戏物体类型(原始几何体)


👨‍💻👍2.游戏物体的获取和查找


if(this.TryGetComponent<>( out 脚本名) )

{

//获取到了就进行处理

}

  • 获取

  • 1.this

  • 2.获取游戏物体的标签 gameObject.tag

  • 3.获取游戏物体的名字 gameObject.name

  • 4.获取游戏物体的层级 gameObject.layer

获取对象位置信息

  • 1.位置:this.transform.position
  • 2.角度:this.transform.eulerAngles
  • 3,缩放大小:this.transform.lossyScale

1.子对象的获取

  • 1.transform.Getchild(序列号);
  • 2.transform.GetsiblingIndex() -----获取同级索引(查找自已是父亲的第几个儿子)
  • 3.transform.GetComponentInChildren< Transform>(序列号);

2.父对象的获取

  • 1.transform.parent();

3.Project的资源获取--资源加载

  • Resources.Load< GameObject>("资源路径")

4.根据脚本名获取

  • 获取脚本的方法 如果获取失败 就是没有对应的脚本 会默认返回空

    Test t = this.GetComponent("Test") as est;

    print(t);

  • 根据Type获取

    t = this.GetComponent(typeof(Test)) as Test;

    print(t);

  • 根据泛型获取 建议使用泛型获取 因为不用二次转换

    复制代码
      t = this.GetComponent<Test>();

脚本的获取

  • 脚本是否失活

    this.enabled = false;

  • 1.得到自己挂载的单个脚本

    Test t = this.GetComponent("Test") as Test;

  • 2.得到自己挂载的多个脚本

    Lesson3\[\] array = this.GetComponents();

  • 3.得到子对象挂载的脚本(它默认也会找自己身上是否挂载该脚本)

    t = this.GetComponentInChildren<Lesson3_Test>(true); ------//ture表示失活了亦会寻找

  • 4.得到父对象挂载的脚本(它默认也会找自己身上是否挂载该脚本)

    t = this.GetComponentInParent<Lesson3_Test>();

  • 5.尝试获取脚本

    提供了一个更加安全的 获取单个脚本的方法 如果得到了 会返回true


查找物体

  • 1.GameObject,Find()-----按照名字查找游戏对象 ,用太多会降低性能
  • find的本质------单例模式的升级版 + 服务定位器 (若代码较为复杂的话性能消耗较大)

  • 2.GameObject,FindobjectType<>();------按照组件名来查找游戏物体
  • 3.GameObject.FindGameObjectwithTag()------按照游戏物体标签来查找游戏物体
  • 4.多数查找与获取
csharp 复制代码
        GameObject[] enemyGos= GameObject.FindGameObjectsWithTag("Enemy");
        for (int i = 0; i < enemyGos.Length; i++)
        {
            Debug.Log("查找到的敌人游戏物体名称是:"+enemyGos[i].name);
        }

失灵

  • 1.xx.SetActive(false); --------应用于游戏物体xx为GameObject类型 继承自Object类
    使得相应的脚本对象失灵
  • 2.xx.enable = fasle;-----------应用于脚本/组件xx为组件类型 ,继承为Copment类
    使得相应游戏物体的组件失灵
  • 3.XX.activeInHierarchy____判断该游戏物体是否是失活状态

销毁

  • 1.Destroy()
  • 2.Detroy(xx , Time)__延时销毁

👨‍💻👍3.继承


常见类的继承关系:

自己创建的类 -> MonoBehavair->Behavir->Conpment->Object



⭐🅰️系统路线学习点击跳转⭐


【Unityc#专题篇】之c#进阶篇】

【Unityc#专题篇】之c#核心篇】

【Unityc#专题篇】之c#基础篇】

【Unity-c#专题篇】之c#入门篇】

【Unityc#专题篇】---进阶章题单实践练习

【Unityc#专题篇】---基础章题单实践练习

【Unityc#专题篇】---核心章题单实践练习


你们的点赞👍 收藏⭐ 留言📝 关注✅是我持续创作,输出优质内容的最大动力!



相关推荐
小贺儿开发1 小时前
Unity 家居视频遥控(细节优化)
科技·unity·程序员·udp·视频·工具·通信
淡海水1 小时前
13-04-面试-源码级深度追问链
数据结构·unity·面试·c#·游戏引擎·源码·il2cpp
小小数媒成员14 小时前
UGUI 性能优化(详细,全,深入)
开发语言·unity·游戏引擎
林川~011 天前
Unity新输入系统使用笔记
unity·input system
小贺儿开发1 天前
Unity 结合百度AI开放平台 手写文字识别
人工智能·科技·学习·unity·云服务·文字识别·手写文字
goujunwe2 天前
GEO 评估方法:如何自测你的内容,会不会被 AI 引用
搜索引擎·网络安全·游戏引擎·全文检索·中文分词
林川~012 天前
Unity 万能物理检测工具:射线检测 / 范围检测 / 层级过滤 / 编辑器可视化(可直接拿去用)
游戏·unity·c#·射线检测·通用工具
yi碗汤园2 天前
MQTT消息队列遥测传输协议
网络·网络协议·unity
林川~012 天前
Unity 常用 API 与核心类全解:从生命周期到协程,附性能避坑清单(Unity 6 适配)
unity·游戏引擎·常用api
sensen_kiss3 天前
CPT306 Coursework 1 个人游戏作业——坦克大战
unity·游戏程序·游戏策划