面试题个人简答(可能不准确)

面试题个人简答(可能不准确)

协同程序一般放在monobehavior中的哪个函数中?

StartCoroutine函数中开启协程,协同程序,顾名思义就是用来协助主要程序的,就好像一个额外的Update函数一样。

yield就像是一个红绿灯,在不能满足yield后面的条件时,协程会被挂起,把使用权交回调用它的父函数。

暂停游戏time.scaletime==0时,内置函数有什么变化

不会影响Update和LateUpate的执行速度,只会影响FixedUpdate的执行

简述StringBuilder的用途

StringBuilder提供了一个可变的字符串类型,可以用Append方法连接字符串,这样可以大幅度提高字符串的处理性能。内部维护了一个数组

列举你熟悉的.NET集合类,越多越好

字典,链表,队列,栈,

关键字ref和Out的作用

ref 和out都是用于作为函数参数传入函数,并传出多个值

ref在使用的时候必须先初始化,能在函数中被使用

out必须在函数内部赋值,Out在进入函数之后会清空自己,不能在函数内部被使用

关键字is和as 的用法

同:都是用来类型的判断和转换

is判断类型是不是某个类型或者父类型,返回值为true或false

as把一个类型转换为另外一个类型,只执行装箱和转换操作,做一次类型检查,一次null检查

碰撞器和触发器

碰撞器是触发器的载体,触发器只是碰撞器的一个属性

当isTigger未被勾选上时,碰撞器根据物理引擎产生碰撞效果,可以调用OnCollision函数,当勾选上时,物理效果取消,没有碰撞效果

动态加载资源的方法

一共有五种:

  • Resources:只能加载Resources目录中的资源

  • AssetBundle(资源包):

    只能加载AB资源,AssetBundle.LoadFromFile()从文件中加载

    www加载,和从内存中加载

  • WWW:可以加载任意处资源,包括项目外资源,如远程服务器

  • AssetDataBase:只能加载Asset目录下的资源,但只能用于Editor

  • UnityWebRequest :可以加载任意处资源 ,www升级版

Prefab的用处

打包希望重复使用的对象,提供动态实例化到场景中的方式,便于代码管理生成

优点:可以置入多个场景中,也可以在一个场景中生成多个

预制体改变,所有实例会发生改变

相机移动放在哪个函数中,为什么?

LateUpdate中,如果不放在LateUpdate中,相机移动有时候会发生在人物移动之前而造成瞬移现象

脚本的生命周期

Unity脚本生命周期与执行顺序 - iwiniwin - 博客园 (cnblogs.com)

设计模式以及代码描述

static MemoryMgr* Ins()//单例模式
{
static MemoryMgr Mgr;
return &Mgr;
}

DrawCall是什么,怎么降低DrawCall

DrawCall就是CPU设置好渲染状态叫GPU渲染的过程,怎么降低DrawCall

合成图集

高级特性降低为统一的低级特性的shader

Lua,C#和C++的GC原理,底层实现
Lua的垃圾回收算法原理简述

lua采用了标记清除式,GC算法,算法简述

标记:每次执行GC时,先以若干节点开始,逐个把直接或间接和它们相关的节点都做上标记

清除:当标记完成后,遍历整个对象链表,把被标记为需要删除的节点一一删除

lua 用白、灰、黑三色来标记一个对象的可回收状态
白色:可回收状态

详解:如果该对象未被GC标记,则此时白色代表当前对象为待访问状态,新创建的对象初始状态就应该被设置为白色,因为该对象还没有被GC标记到,所以保持初始状态颜色不变,仍然为白色(此时的白色为白1),如果该对象在GC标记状态后,仍然为白色,则此时代表该对象处于可回收状态(此时的白色为白2)

灰色:中间状态

详解:当前对象为待标记状态。当前对象以及被GC标记过,并且对象引用的对象还没有被标记

黑色:不可回收状态

详解:当前对象为已标记状态,并且该对象引用的对象也被标记了

不同工程间安全迁移asset数据

将Assets和Library一起迁移

导出包Package

用Unity 自带的Assets Server功能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值