1、项目介绍以及你在开发过程中负责的内容。
2、卡牌拖拽效果如何实现。
3、场景的实时渲染会造成比较大的开销,请问可以通过什么方法可以减少部分开销。
烘焙,将不需要变化的场景提前渲染到纹理中存储,场景直接采样纹理得到画面效果而不需要实时渲染。
4、卡牌图鉴中如果卡牌数量过多如何设计可以减少gameobject的创建以及优化管理。
1、c#的生命周期。
(1)编译阶段:Reset
(2)开始阶段:Awake-OnEnable-Start
Awake:用于初始化,并且只会执行一次,比如创建游戏对象
OnEnable:脚本每次激活时执行
Start:在初始化后的下一帧执行,只会执行一次,程序UI的初始化,比如获取游戏对象或者组件
(3)迭代更新阶段:FixedUpdate-Update-LateUpdate
FixedUpdate:以固定的频率调用
Update:以非固定的频率调用
LateUpdate:每当Update之后立即调用
(4)显示阶段:OnGUI
(5)清除阶段:OnDisable-Ondestroy
OnDisable:脚本不可用时执行
Ondestroy:脚本销毁时调用,只执行一次
2、awake和OnEnable的区别。
3、面向对象语言的三大特性。
继承、封装、多态
4、举个例子解释一下多态。
5、抽象类和接口的区别。
一个类只能继承一个抽象类但是可以继承多个接口
6、重载和重写有什么区别。
7、简单介绍一下装箱拆箱。如何尽可能避免装箱拆箱的性能损耗。
1、list和vector有什么区别。
一个是链表结构一个是数组结构
2、了解哪些排序算法。
直接插入、选择、冒泡、快排、希尔、归并、堆、基数
3、简单描述一下快排和冒泡的思路。
4、冒泡和快排的时间复杂度。
6、二叉树的三种遍历的顺序。
7、二叉查找树的特点。
8、如果二叉查找树插入的节点过多会发生什么情况。如何解决。
树结构会发生偏移,会存在左右不平衡的情况,查找起来也会麻烦许多。
1、除了unity的基本的渲染管线你还了解哪些渲染管线,简单介绍一下。
2、叉乘和点乘的物理意义。
3、物体描边如何实现。