1.前言本篇总结主要记录和描述我如何从AI方向切换到游戏引擎/图形方向,以及学习过程和面试过程中的经验。首先声明(叠甲),总结中的内容不涉及任何一家公司的具体面试内容以及流程安排,只记录个人学习过程和面试经验,以及个人对游戏引擎/图形方向的看法。本人在25届暑期实习中收到两家offer,秋招中共收到六家offer/谈薪,以下经验可能对你求职有一定参考价值。开始之前首先感谢以下牛客前辈的面经和总结:@IceBear白熊 @KujouAika2.背景本科双非电子信息嵌入式方向,硕士某末流211计算机专硕AI方向。研一暑假小论文投递出去后开始准备就业工作,正式开始学图形学的时间点大概是23年10月。本人之前参加过一些竞赛,C++和Python还算熟悉,同时在Acwing和Leetcode上有一些刷题经验,因此重点主要放在图形学的学习上。为什么我选择CG方向作为就业选择?而不是后端或算法?因为CG好玩!后端学了一点感觉没意思,算法虽然有篇A会,但考虑到论文方向冷门且本人BG毫无优势遂放弃3.学习路线2023年 10月-12月 :主要学习 LearningOpenGL, Games101 202 104部分其它参考:catlikecoding, GPU Gems, filament....2023年 12月-2024年 3月 :实现自己的渲染器: 编辑器+ECS + Forward/Deferred + 所有常见效果 + ...2024年 3月-5月 :一边面试一边复习,没有学新东西2024年 5月-9月 :往渲染引擎中添加Vulkan支持以上是学习过程中的大概情况,还有一些资料比较琐碎就不列出了,当学习过程中遇到问题,大部分也能在google中检索到。3.1 路线总结选择的项目内容都是自己实现的,但是猜测同岗的选手大部分可能都是类似的项目,虽说不同人的侧重点和实现有所不同,但是换位成面试官难免感觉有点审美疲劳,如果项目能聚焦在一个比较小的方向上/或者具有一定实用性绝对是一个加分项!3.2 暑期实习投递情况总结3月开始投递,共投递约19家,其中发笔试的一共8家,约面6家,选择面试的3家,走完流程给offer的两家。由于没有实习经历且是半路转图形的,游戏公司几乎全军覆没,所幸得了德子的收留,不然就只能去鹅的客户端了3.3 秋招投递情况总结8月开始投递,共投递53家(约一半为C++软开岗位),其中发笔试的一共16家(全是图形/游戏岗的笔试,C++软开岗一个笔试都没发,由此可见C++软开选手的秋招难度)流程情况公司(岗位)笔试挂西山居(引擎),雷火(引擎)一面挂哔哩哔哩(引擎),网易互娱(引擎)二面挂联影医疗(图形图像),IEG游戏发行(游戏客户端)三面挂IEG魔方(引擎),Funplus(引擎)offer摩尔线程(图形),不鸣科技(引擎),英雄游戏(引擎),叠纸(引擎),字节(游戏客户端),德子(转正/引擎)秋招刚开始时特别是八月和九月真的不是很顺利,一来是项目很久没更新了,自己不是很熟练,二来是八股也忘得差不多了,导致面试过程中有些问题自己都忘记了。转折点是九月的Funplus二面,这场面试结束后感觉状态回暖,这之后所有的流程全部顺利走完,和所有的面试官基本都聊得很好(自认为)秋招结束之后我回顾了一下,相比暑期我有什么明显的进步吗?答:其实是没有的,简历唯一多的只是一份实习经历而已(再次向德子表示感谢),但是秋招过程中明显感觉自己的心态和面试技巧都得到了提升,体现在面试中就是交流更加顺畅,自然因此,实习经历是秋招中非常重要的加分项,如果没有实习的话,我大概率是找不到工作的4.一些经验有关图形学的学习,不能通过面经直接获得,但是面经可以作为一个目录参考。关于这部分的内容,大体上可参考zhihu这位佬的文章【游戏开发面经汇总】- 图形学基础篇以及白熊佬的这篇面经零基础非科班校招图形/引擎/游戏面经长文分享下面是一些我自己补充的内容,可以看看自己是否了解该内容:除PCF,PCSS外还知道哪些阴影算法?了解超分算法吗?FSR2.0了解吗?体积光除了用光线步进做,还有哪些方法?Forward+了解吗?移动端渲染管线了解吗?和PC端有什么区别?GI算法了解哪些?分别介绍一下?IBL实现的具体细节?中间做了哪些假设?CSM实现的具体细节?有没有遇到抖动问题?怎么解决的?F0和F90分别是什么?F0和F90的物理意义是什么?BRDF具体介绍一下?有哪些常见的BRDF?HDR解决了什么问题?有哪些常见的HDR格式?Tone Mapping具体介绍一下?有哪些常见的Tone Mapping算法?几种测试的顺序以及冲突的解决方法?不同平台的shader怎么处理?Vulkan的同步机制了解吗?Vulkan中的Fence、Semaphore,Barrier有什么区别?如果出现卡点,怎么排查?如果让你设计光源剔除方案,你会怎么做?UE的RDG了解吗?C++反射你是怎么做的?5. 补充资料以及优秀项目分享浅墨老师的github(没啥好说的,RIP):https://github.com/QianMo/Game-Programmer-Study-NotesLumos跨平台游戏引擎(1.3k star,代码量相对于许多重型项目还是小很多的,值得学习):https://github.com/jmorton06/Lumos另一个较出名的GL教程,可和LearningOpenGL互为补充:https://ogldev.org/index.htmlVulkan Examples(可配合vulkan tutorial食用):https://github.com/SaschaWillems/VulkanShader教程(可参考一下常见图形学算法的实现) :https://lettier.github.io/3d-game-shaders-for-beginners一些不错的技术博客:https://sugulee.wordpress.com/https://jose-villegas.github.io/可看一些talk,了解一些前沿技术6. 总结这不是一个游戏引擎/图形方向劝进或劝退的文章,只是记录一下自己的秋招经历,以及一些自己觉得有用的资料。如果就是想学游戏引擎/图形方向,那么上述经验可能对你有点帮助。但是引擎不是只有渲染,还有诸如物理、动画等等的小方向。总之记住多动手,多实践。如果有问题也欢迎评论,私信,看到的话我会尽力回答。免责声明:由于市场行情和不同公司HC变动,不保证按照上述流程一定能找到工作,仅供参考。最后,如果看到这里,那么不管你是什么方向的,被小猫指到的人通通拿到满意的offer,顺利上岸!
点赞 55
评论 17
全部评论

相关推荐

06-15 02:05
已编辑
南昌航空大学 数据分析师
Eason三木:你如果想干技术岗,那几个发公众号合唱比赛的经历就去掉,优秀团员去掉,求职没用。然后CET4这种不是奖项,是技能,放到下面的专业技能里或者单独列一个英语能力。 另外好好改改你的排版,首行缩进完全没有必要,行间距好好调调,别让字和标题背景黏在一起,你下面说能做高质量PPT你得展现出来啊,你这简历排版我用PPT做的都能比你做的好。 然后自我评价,你如果要干数据工程师,抗压能力强最起码得有吧。
简历中的项目经历要怎么写
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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