【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#专题篇】---核心章题单实践练习


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



相关推荐
虾球xz5 小时前
游戏引擎学习第20天
前端·学习·游戏引擎
red_redemption9 小时前
自由学习记录(23)
学习·unity·lua·ab包
/**书香门第*/13 小时前
Cocos creator 3.8 支持的动画 7
学习·游戏·游戏引擎·游戏程序·cocos2d
向宇it1 天前
【unity小技巧】unity 什么是反射?反射的作用?反射的使用场景?反射的缺点?常用的反射操作?反射常见示例
开发语言·游戏·unity·c#·游戏引擎
Heaphaestus,RC1 天前
【Unity3D】获取 GameObject 的完整层级结构
unity·c#
芋芋qwq1 天前
Unity UI射线检测 道具拖拽
ui·unity·游戏引擎
tealcwu1 天前
【Unity服务】关于Unity LevelPlay的基本情况
unity·游戏引擎
大眼睛姑娘1 天前
Unity3d场景童话梦幻卡通Q版城镇建筑植物山石3D模型游戏美术素材
unity·游戏美术
鹿野素材屋2 天前
Unity Dots下的动画合批工具:GPU ECS Animation Baker
unity·游戏引擎
小春熙子2 天前
Unity图形学之着色器之间传递参数
unity·游戏引擎·技术美术·着色器