网易互娱 许愿+面经分享

图形开发
时间线TimeLine:
9.21投-10.17笔试-10.24一面-11.1二面-11.5hr面

已经是还在流程的几家里唯一的大厂了,球球收了孩子叭,牛客许愿会灵吗,会的吧?

总之,先发个一面面经涨涨人品,后续秋招结束会发总结篇,里面有鼠鼠为数不多的十来场面试的面经,以及一堆的笔经(总之就是非常惨)

(83min)
- 自我介绍
- 平时怎么学习图形学?看过Unity,UE源码没有?
- 说说C++的共享指针?
- weak_ptr是怎么工作的?
- shared_ptr是线程安全的吗?
- 构造函数可以是虚函数吗?
- 虚函数机制?
- 虚函数表什么时候构建的?存在哪?
- 虚函数表怎么构建的?内存空间连续吗?
- 虚函数表除了虚函数地址还存了别的其他什么东西吗?
- 如果一个基类函数不标明为virtual,子类重写了这个函数,那指向子类对象的基类指针调用该函数会发生什么?
- 只有纯虚函数的类有虚函数表吗?
- 子类不实现纯虚函数会怎么样?在什么时候会报错?会报什么错?
- 说说vector的扩容机制?
- 说说list的实现?
- 如何高效的查找有序的list里的元素?
- list二分查找的复杂度是多少?(O(n),我当时没想出来)
- 如果考虑空间换时间,时间复杂度可以是多少?(这里脑子抽了,我说分别存储每一次list二分之后的结果,存储在vector里,然后二分的时候只需要比较尾节点,然后转移到对应的list里进行下一步查询, 事后感觉应该是想引导我说,把list用vector存一遍,然后在vector上做二分)
- 说说优先队列的实现?
- 堆是怎么实现的?插入数据的时间复杂度是多少?
- 插入的逻辑是怎样的?
- 你的渲染引擎是怎么考虑跨平台的?
- 你写的shader是怎样在目标平台运作的?
- shader里你是怎样采样贴图的?讲讲API的使用?
- textureLod怎么用?
- 如果不提供level,GPU怎么知道要采样哪一层的Mipmap呢?(通过贴图uv在屏幕上的变化率决定)
- 你刚刚说的u对x,v对y的偏导里的x和y是什么坐标?
- 除了这个坐标空间还有哪些坐标空间?
- 三线性插值是怎么做的?
- 讲讲OpenGL的一个渲染管线?
- 顶点的裁剪坐标空间坐标怎么得到的?
- 后续会被怎样处理?
- NDC标准空间的xyz取值是多少?
- 锯齿是怎么形成的?在哪个阶段生成的?
- 有哪些抗锯齿手段?
- MSAA和FXAA有什么区别?
- MSAA的硬件实现是怎么做的?
- FXAA怎么做的?
- 实时阴影你怎么做的?
- 点光源的阴影要怎么实现?
- 只能是生成CubeMap吗?不能生成Texture2D吗?(傻了,忘记CubeMap可以展开在一个Texture2D上或者干脆用柱状投影图了,我说你非要搞那就整一个Texture2DArray)
- 你实现BVH的目的是什么?
- 视锥剔除有必要吗?不是裁剪阶段也会做剔除?
- 平时渲染方面怎么Debug?
- 如何优化shader的效率?
- 为什么尽量不要写if/else语句?那什么时候能用呢?
- 减少采样操作?怎么减少?哪些采样操作可以移到CPU做?
- 如果必须要采样呢?怎样做优化?以PCSS为例?
- 为什么尽量少做那些复杂的数学运算?反三角函数,矩阵的逆什么的?
- 线程和协程的区别?(太久没看真忘了,支支吾吾嗯是说不出啊,早知道直接说不知道了)
- 那线程和进程的区别呢?
- 反问?
  - 图形开发工程师隶属于什么部门?引擎部?中台?(统一校招,进去之后再细分,可能进项目组可能进中台)
  - 这个职位入职的培训和游戏开发那边的培训有什么区别?(差不多也是miniGame,内容上可能区别比较大)
  - 可以知道具体的工作室吗?(进去之后双选)
  - 如果我想胜任图形开发工程师这个岗位,需要再巩固加强哪些方面?(被说计算机基础不牢固了,奶奶滴,我就那个协程没说好嘛!(ㄒoㄒ))

#网易# #网易互娱# #游戏开发# #许愿# #时间线# #一面#
全部评论
兄弟项目跟之前找实习的时候一样吗
点赞 回复 分享
发布于 2024-12-12 18:58 广东
oc了嘛
点赞 回复 分享
发布于 2024-11-12 01:18 北京
请问二面也是像这样吗
点赞 回复 分享
发布于 2024-11-06 12:35 辽宁
牛的,感觉问的挺深的
点赞 回复 分享
发布于 2024-11-05 20:22 湖北

相关推荐

是第三次面试。全是八股拷打。【面试问题】1. 请先做一下自我介绍。2. 你主要使用哪些编程语言?3. 用 Go 和 Python 分别做过什么?4. 对 C++ 标准库里的容器有了解吗?说说 map 或哈希表的实现。5. 哈希表如何解决冲突?6. 除链地址法外,还有哪些冲突解决方法?7. 开放寻址删除元素时需要注意什么?8. 如何避免哈希表退化成少数长链?9. unordered 系列容器如何避免退化?10. 红黑树具体实现了解多少?11. 如何设计一个既支持快速插入删除,又支持下标索引的容器?12. deque 的大致实现原理是什么?13. 请手写双向链表结构,并实现尾部插入。14. Node** 与 Node* 的区别是什么?15. C++ 智能指针有哪些?各自作用?16. weak_ptr 如何打破循环引用?17. 如何检测代码存在循环引用或内存泄漏?18. 其他语言的垃圾回收策略有了解吗?19. 进程运行时内存布局是怎样的?20. 全局/静态变量位于哪个段?21. 为什么要做内存对齐?22. 多进程间有哪些通信方式?23. 共享内存读写时如何同步?24. 除共享内存、管道、信号外,还有哪些 IPC 方式?25. TCP 连接如何检测对端断开?26. TCP 三次握手、四次挥手过程?27. 游戏为何常用 UDP?需在 UDP 之上做哪些改进?28. KCP 为什么延迟更低?29. UDP 服务端如何维护连接状态?30. Redis 的 zset 怎么实现?31. 跳表原理是什么?32. Redis 集群如何把数据分布到各节点?33. 求数组第 K 大元素有哪些方法?34. 如何用 Redis 实现分布式锁?35. 最长「0 和 1 数量相等」子串如何做?36. 若把 0 换成 -1,求和为 0 的最长子段,有思路吗?37. 在 Linux 源码方面做过哪些学习或开发?38. 还有想补充的项目细节吗?39. 对游戏服务器开发有哪些了解?40. 平时玩哪些游戏?41. 未来职业规划是什么?更倾向游戏还是其他方向?42. 有没有想进一步了解的问题?
校招求职有谈薪空间吗
点赞 评论 收藏
分享
评论
13
55
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务