日常记背单词

1.Unity生命周期10个;
    Awake,OnEnable,Start,Update,LateUpdate,FixedUpdate,
    OnGUI,OnDisable,OnDestroy,OnApplicationPause;


2.获取场景中游戏对象方法,3个;

    GameObject.Find();
    GameObject.FindGameObjectWithTag
    GameObject.FindObjectOfType<T>();查找组件


3.获取游戏对象的孩子

    transform.Find("");
    transform.GetChild(0);


4.获取游戏对象孩子的组件

    gameObject.GetComponent<>();
    gameObject.GetComponentInChildren<>();
    gameObject.GetComponentInParent<>();


5.删除对象组件

    Destroy(游戏对象/组件)


6.向量的模,标准化,插值,距离

    Vector3.magnitude,Normalized,Lerp,Distance;


扫描二维码关注公众号,回复: 1861036 查看本文章

7.transform组件的世界坐标系位置和本地坐标系位置(旋转,缩放)

    position,localPosition
    rotation,localRotation//四元数
    eulerAngles,localEulerAngles//欧拉角
    lossyScale,scale;


8.    1.Input获取鼠标/键盘的点击方法,

    Input.GetMouseButton()
    Input.GetKey();
    2.Input获取鼠标滑动/键盘上下左右的方法
    Input.GetAxis("Mouse X");
    Input.GetAxis("Mouse Y");
    Input.GetAxis("Horizontal");
    Input.GetAxis("Vertical");


9.3D/2D物理碰撞器有几个

    Box,Capsule,Sphere,Mesh,Terrain,
    Box,Capsule,Circle,Polygon,Edge,(Composite)


10.触发条件和碰撞条件(一句话)

    1.触发:双方都有碰撞,一方有刚体,至少一方勾选IsTrigger
    2.碰撞:双方都有碰撞,主动碰撞方有刚体,都不勾选IsTrigger


11.如何判定导航寻路的Agent不在移动中(代码)

    NavMeshAgent agent;
    if(agent.remaindingDistance<agent.stoppingDistance
        && agent.pathPending)


12.如何给一个cube修改纹理和颜色(代码)

    // GetComponent<MeshRender>().material//自己独有的材质
    // GetComponent<MeshRender>().sharedMaterial//大家公用的材质
    GetComponent<MeshRender>().material.color=;
    GetComponent<MeshRender>().material.mainTexture=;


13.如何修改精灵渲染器的图片和Image的图片(代码)

    GetComponent<SpriteRender>().sprite=;
    GetComponent<Image>().sprite=;


14.画布的渲染模式

    1.Overlay
    2.Camera
    3.World


15.画布最常用的比例和设计分辨率

    16:9
    1280x720;
    1920x1080
    1136x640


16.实现点击事件的几种方式

    1.Button,(拖拽和动态添加)
    2.EventSystem接口
    3.EventTrigger
    4.OnMouseXXX


17.    1.协程的用处有哪些

    a.定时器;
    b.延时执行,回收,销毁 <模拟多线程>;
    c.等待www或者满足条件;
    d.模拟update;
    2.Yield返回值有哪些
    a.www
    b.0,null,
    c.waitXXX
    d.嵌套协程


18.如何修改2D精灵的层级

    1.SortingLayer
    2.OrderLayer


19.设计原则:一句话描述

    1.单一:一个"模块"功能单一。
    2.开闭:对扩展开放,对修改关闭。
    3.里氏代换:子类可以扩展父类的功能,但不能改变父类原有的功能。
    4.依赖倒转:高层和底层都依赖于抽象,细节依赖于抽象。
    5.接口隔离:接口功能不能过多或过少。
    6.组合复用:优先使用对象组合而不使用继承。
    7.迪米特:最少知识,低耦合。


20.设计模式:一句话描述

    1.单例:一个类只有一个实例,并且有一个全局访问点(管理器,控制器)
    2.状态 <状态机>:抽象一个对象的行为为多个状态,
                    改变状态后对象行为发生变化(多行为对象,AI)
    3.工厂:创建和使用的分离(独立多个对象的创建,方便使用)
    4.外观:给多个复杂的子系统,独立一个门面 <外观>类,方便使用
    5.观察者 <监听器>:一个对象发生改变,有1-n个对象同时发生改变 (多路广播,委托事件)
    6.对象池:用一个池子存储不使用的对象,方便重复使用(频繁创建和销毁,减少GC)


21.资源动态加载的方式

    1.Resources.Load()//相对路径
    2.www加载图片,声音,AssetBundle...//(http、https、ftp)
    3.AssetDataBase.load()//编辑器脚本

猜你喜欢

转载自blog.csdn.net/qq_41996509/article/details/80169967