网易互联网 Unity 面经

面试大概过去了一个多月今天想起来才决定补上面经

我大概是提前2天到的杭州,面试前一天疯狂看C#基础,可是没想到第二天居然没问C#基础有关的

我把三面+HR都写一起吧因为忘了哪个几面问的

简单介绍下自己

balalalal

然后面试官开始看简历说下你游戏的逻辑

这个只要简单清晰说出来主要的架构就行了

你的服务器用的什么协议?

Udp

Udp和Tcp有什么区别?

1.基于连接与无连接;
2.对系统资源的要求(TCP较多,UDP少);
3.UDP程序结构较简单;
4.流模式与数据报模式 ;

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

(TCP可靠,UDP不可靠)

我顺便说了下之前因为阿里云组策略忘记换协议类型导致服务器一直无法访问的事

(扯这些是有必要的,你说的只是理论的,你要告诉他,实际上你也做过)

简单说下UDP连接过程?

UDP是一个无连接的协议,仅有建立连接,发送报文,断开连接,没有发送三次握手,确认重传的机制

说说你第二个游戏的逻辑?

balalalala

简单说下Unity AssetBundle 打包解析过程?

太长了不写

安卓和PC读取ab包的差异?

回答的主要是路径和Io流的差异,安卓无法使用IO只能通过WWW读取

简单说下你这个游戏对象池的作用、思路?

当一个对象大量生成销毁的时候就需要用到对象池,我简单说了一下我的思路,就是一个objectpool类下两个Dictionaries第一个键值,名字 预制体,第二个键值名字 list 存对象,getobject()函数先查找对应对象是否在list中存在,如果存在返回引用,不存在先查找是否有预制体,有则返回无则搜索,搜索不到返回null。搜索到生成object,返回引用。

因为销毁和生产对象都需要消耗大量的CPU资源所以,使用对象池可以对内存进行优化

说一下lua的基本类型?

number string table bool userdata thread

我把number说成了int,后来补充了因为lua不用声明类型所以没有注意,其实是问C#一下没转换过来

lua你用的什么框架?

xlua

说说xlua配置和热更新方案?

太长了,我之前有一篇博客有写xlua,我重点强调了腾讯官方的FAQ有误,开启热补丁特性需要2个宏同时添加,不过后来貌似修复了

你对计算机图形学了解多少?

当时一听到这个,头皮发麻,因为那时候还没开始看这个,这部分内容可以参照我下一篇面腾讯的帖子

说说shader结构

balalal

GPU有哪些编程语言?

这特么还是知道的    CG GLSL HLSL

假如我这有一个4x4矩阵,里面有position rotation scale这三个参数,那么矩阵的哪些数字表示position?
???当时一脸懵逼
后来去查了才知道,transform是Matrix4x4的矩阵,03 13 23表示position

简单说说Z缓冲?

Z缓冲指在显示存储器中预先存放不同的3D造型数据,这样,当画面中的视角发生变化时,可以即时地将这些变化反映出来,从而避免了由于运算速度缓慢所造成的图形失真

图像识别了解吗?

这特么不是研究生的课程也问?还好我大二搞过一点深度学习,推荐去看下《数字图像处理(MATLAB版)》瓦萨雷斯

简单聊了聊滤波 傅立叶变换 图像压缩 图像噪声处理

后来面试官解释了下因为我们这个是AR项目涉及到图形识别所以才会问到这个

其他unity基础的东西我就不写了,碰撞器触发器的区别,刚体,自动寻路和A*算法,还有动画 音频 视频处理

过了一面和二面,大概4点30,通知HR面

HR是个很漂亮的小姐姐,主要问了之前在哪工作,大学经历,自我评价,期望薪资,对加班怎么看

我回答的是不加班是能力,加班是态度

后来还聊到了我中学的时候用魔兽编辑器的事,我简单说了我moba游戏的技能系统就是模仿魔兽编辑器做的

聊了差不多50分钟,然后我踏上了回家的征途

总结:做游戏图形学还是要有一手的,关于这个我会在后面腾讯的面经重点总结

猜你喜欢

转载自blog.csdn.net/qq_34204419/article/details/82685969