游戏客户端-乐创互娱面经-23届的挣扎

本人双一流牛马毕业生

无手撕,面试官很年轻很仁慈,感觉就像学长,我说不了解也不会为难我,甚至还会帮我缓解压力

因为公司引擎主用unity,我用的UE4,面试官没问太多引擎知识

1面:

0、开局先聊了一下玩过的游戏,大脑就很容易活跃起来

1、挖了一下UE4项目,主要问一些模块的设计,答的还不错

2、烂大街的http服务器项目 准备不充足

2.1、epoll数据结构是怎么样的?

--结构体数组?好像还有,忘了

2.2、epoll的底层是怎样实现的

--忘了

2.3、服务器proactor和reactor的区别

2.4、那异步是怎么实现的呢?

2.5、你这个测试软件是啥?

3、思考题:25匹马问题

4、开放业务题:

4.1、如果实际遇到网络波动,比如这一秒是20延迟,下一秒是100延迟怎么办?

--(一开始想到网络波动的话,服务器不管用了只能客户端自己解决了,想到了UE4中的模拟运动):客户端模拟角色运动

--(面试官露出肯定的表情):具体该怎么做呢?

--(听到具体我就慌了):角色在不接受新的指令时就按照旧的指令继续做下去,直到遇到新的指令(这不跟没说一样嘛)

--(后面实在具体不下去了,在面试官引导下想了个其他办法)计算一个平均的网络延迟,到达包后计时,计算下一个包需要的时间,设置为网络延迟,可以将一个包区分成快包和慢包,要保持一个画面的平缓,快包就减慢游戏速度,慢包就加快游戏速度,实现一个过渡,至少不至于卡成ppt(感觉答的就依托答辩)

--感觉面试官蚌埠住了

5、数据结构:

5.1、你了解哪些数据结构?

--数组,表,哈希表

5.2、给我讲讲哈希表底层

--散列函数+数组

5.3、哈希冲突怎么办

5.4、开放地址法里面,你要删除一个哈希冲突的元素怎么删除

--直接删除,然后把后面那个也是相同哈希冲突的元素顶上来(不删除后面的就不能访问了)

--面试官:会不会太费了?

--那我没有别的方法了,数组删除不都是这样的嘛,难道改变散列函数?

6、算法:

6.1、你用过哪些排序算法?

6.2、堆排序是怎样的?插入时间复杂度?

7、数据库:

7.1、常用的底层实现

7.2、B+树怎么查找

8、设计模式:

8.1、你一般用哪些设计模式?

8.2、怎么用的,然后浅挖一下

反问:

1、公司需要什么样的人才?

--动态的,水平高的低的都要(面试官在安慰我吧)

2、对于面试中的业务题,有什么提升的办法?

--就是考验你的思考能力,平时去思考就没意思了

没了

结束后面试官突然问了你了解公司新项目嘛?

--我看过,沙盒建造游戏,看上去很有意思(画风很喜欢,出了我氪爆好吧)

比较基础,但我表现不好,应该是寄了

这家广州的公司真的很推荐去试试,虽然是初创公司,但是得到了阿里的融资,绝对有含金量

乐创给的这次机会,宛如黑夜中的黎明,让我知道23届还活着🥰🥰

#23届找工作求助阵地#
全部评论
请问投了简历多久会有反馈呢,会有笔试吗
1 回复 分享
发布于 2023-09-05 02:52 广东
老哥之后准备怎么办啊?
点赞 回复 分享
发布于 2023-08-29 14:01 新加坡
老哥,24届能投吗,沙盒建造太想做了
点赞 回复 分享
发布于 2023-08-30 11:20 河南

相关推荐

1)C/C++static作用,变量加入static以后在内存中存储位置的变化volatile作用C++为什么有指针还要引用,为什么不和JAVA一样抛弃指针delete和delete[]的区别虚函数是用来干嘛的?虚函数机制怎么实现的?虚表指针在内存中的存放位置?C++多态怎么理解?C++有哪些多态的典型例子?叙述程序编译都包含哪些阶段,每个阶段干了什么?CMake是如何包含文件目录的全局变量和局部变量在什么地方?堆栈如何申请资源?C语言编译后的内存分布连续调用同一个函数两次,它的局部变量初始化结果是否会一致?静态局部变量存储在静态区,那么静态区的创建和消失是在什么时候?在windows里面运行了多个进程,其中一个进程执行完了,它的静态区会如何处理?静态局部变量与局部变量的区别?为什么局部变量未定义时,每次初始化的结果是不确定的?是个真随机数还是个伪随机数?嵌入式中栈的工作机制是什么?struct字节对齐了解么?容器了解吗?vector实现的机制是怎么样的?迭代器有了解吗?讲解一下你的理解内存分配函数了解么?如果系统中只有10K内存,而我要分配12K,能分配成功吗?如果能,那么将分配到的区域用memset进行初始化,会成功吗?2)处理器架构51和32架构的区别MCU可以运行Liunux吗,为什么STM32启动过程(上电开始->main执行的过程)中断响应执行流程,中断上下文指的什么,保存中断上下文是完成的什么操作,以STM32为例,都有哪些寄存器被保存STM32 F1和F4的区别Cotex-M系列使用浮点运算对STM32中断效率会产生什么影响STM32常见寄存器:R13(SP,堆栈指针),R14(LR,连接寄存器),R15(PC程序计数器)作用什么是大小端模式3)操作系统Freertos支持的任务调度方式,详细说下每种方式任务(线程)间通信方法进程和线程的区别互斥量和信号量的区别优先级翻转,如何避免优先级翻转STM32任务切换为什么用PendSVFreeRTOS的内存管理怎么实现的?为什么这么做?对于临界区数据的处理,使用互斥锁和自己通过条件来判断,哪样更好,为什么?最后呢祝各位同学工作顺利,关注我分享更多面试知识,嵌入式c++的同学可以看一下大佬总结的面经  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
点赞 评论 收藏
分享
评论
8
23
分享
牛客网
牛客企业服务