八股文/面试

 

经验 / 应用向

Assetbunle.Unload传入true和false的区别

摄像机如何还原深度信息

UGUI动静分离,哪些部分(顶点,颜色,材质)改变会导致重绘

半透明物体的渲染顺序

shader如何优化

lua的rawget/rawset方法是干什么用的

资源打包/热更的流程

AssetBundle的组成结构

大世界地图资源处理,场景管理

红点系统怎么实现

把封装的类和对象池结合使用,与结构体相对比,哪个好

假如说有个需求,玩家要刺杀某个NPC,NPC不在AOI范围内,但是要求玩家能看到NPC,怎么做

动态图集

一个点对一个面的镜像点怎么求

一个点到直线的距离怎么求

如果我在监听的回调里把自己移除了就会发生异常,这时候应该怎么处理规避


原理 / 理论

碰撞检测和分离轴定理

LZ4压缩算法的实现

战斗模块如何设计

点乘/叉乘/3D数学

三角形遍历和设置通过插值生成片元有几种方式

AssetBundle的组成


八股文:

AlpahTest和Blend的区别

何为内存对齐

把场景中的一个物体渲染到屏幕上,经过了哪些坐标空间的转换

协程和线程的区别

event和delegate的区别

什么是拆装箱

什么是内存泄漏

C#强引用和弱引用有啥区别

GC产生的原因,如何避免

值类型和引用类型的区别

ECS模式的设计思想

红黑树,二叉树的原理和实现

A*/四叉树

TCP和UDP的区别

常见的优化思路

项目中用到了哪些设计模式

二叉树的基本结构、排列顺序?

C#中的List是如何扩容的

值类型赋值,该如何同步修改?

什么是闭包?可以举例说明

C#中的浅拷贝和深拷贝

进程和线程的区别

CLR的GC机制

单链表反转

TCP和UDP的区别


不知名面试题:

给一个有向图,如何判断图中是否有环?具体方法是什么?

给一个很大的数组,如何找到第K大的元素?需要什么算法或数据结构?

堆的更新过程是什么?是自底向上还是自顶向下?