腾讯ieg面经

6场技术面。方向是游戏引擎,主要都是图形学,c++问题很少。

IEG 天美 一面

1. C++

1.1 inline可以修饰虚函数吗?
1.2 构造函数中可以调用虚函数吗?
1.3 static和const在哪个内存区域?
1.4 static和const什么时候初始化?
1.5 虚表什么时候初始化?
1.6 多态怎么实现的 ?
1.7 多线程通信方式
1.8 多进程通信方式

2. 图形学

2.1 early-z失效
2.2 介绍下项目
2.3 喜欢玩的游戏?效果怎么实现的?

3. 闲聊

3.1 游戏引擎开发需要哪些技能?
3.2 学校里令人印象深刻的事情?
3.3 未来方向规划

4. 算法

4.1 两数之和
4.2 链表部分反转

---------------------------------------
IEG 游戏前沿(Base上海) 一面

1. 图形学
1.1 你的软光栅项目的实现过程?一开始怎么考虑的,然后怎么搭建出来的
1.2 你这个项目是在CPU上运行的是吗?
1.3 怎么去做mipmap的?(应该是想问多级渐远纹理怎么实现的)
1.4 你知道在GPU上是怎么实现的吗?
1.5 简单说下你的软阴影
1.6 你的阴影有出现斑纹吗?(想问自遮挡问题)
1.7 有用过CSM吗?知道CSM有什么好处吗?
1.8 Cubemap有什么用?
1.9 IBL的漫反射和镜面反射的图怎么生成的?(辐照度图和预滤波环境贴图)
1.10 球谐函数了解吗?知道大概是什么用的吗?
1.11 差不多。你知道有什么好处吗?
1.12 色调映射是做什么的?
1.13 假设图像的HDR色差范围太大了。传统的色调映射不太好。有什么更好的办法?
1.14 你这个CPU的软光栅效率怎么样?
1.15 你最初光栅化的模型是什么?
1.16 做过什么优化吗?
1.17 背面剔除怎么做的?
1.18 齐次空间裁剪是怎么做的?
1.19 前向渲染和延迟渲染你知道吗?在什么情况下用这两种方式呢?
1.20 为什么光源比较多的时候用延迟渲染?
1.21 延迟渲染是怎么渲染的?
1.22 一个点光源怎么作用到G-Buffer,然后得到光照结果?比如渲染一个球
1.23 你知道deferred shading 和 deferred lighting的区别吗?
1.24 你知道deferred shading在移动端上的劣势是什么吗?
1.25 延迟渲染有什么劣势
1.26 延迟渲染输出很多g-buffer的代价是什么?
1.27 你知道early-z吗?它的作用是什么?
1.28 有时候会失效。失效的原因是什么?
1.29 pre-z你知道吗?
1.30 第二个pass的渲染策略是什么?
1.31 你的光线追踪项目有什么技术点可以分享?
1.32 光线的求交是自己写的算法吗?
1.33 光线反弹的过程是怎样的?
1.34 你要发射多少条光线
1.35 怎么混合每一帧的图像?
1.36 有做过什么优化吗?
1.37 对移动端的渲染有所了解吗?
1.38 有用过UE吗?学到什么程度?
1.39 编译过源码吗?
1.40 了解UE的图形学特性吗?

2. C++

2.1 多态性怎么实现的?
2.2 析构函数可以是虚函数吗?

3. 反问

3.1 你们项目组是做什么的?
3.2 base在哪
3.3 有什么要提升的?

-----------------------------------------
IEG 游戏前沿(Base上海) 二面

1. 图形学

1.1 你的光线追踪项目有多少个光源?
1.2 有没有做什么优化?
1.3 你如何对光源做重要性采样?
1.4 有没有什么更快速的数据结构去做CDF计算?
1.5 怎么保证你的采样后是能量守恒的?
1.6 Sobol低差异序列怎么保证它的样本在时域上和空域上是独立分布的?
1.7 知不知道保守光栅化?
1.8 这两个项目都有点类似课后作业了。有没有商业引擎开发经验。
1.9 OpenGL有实现多线程吗?

2. C++

2.1 Map和Unordered_map的底层原理是什么?
2.2 Vector删除一个元素后迭代器怎么变化?
2.3 Vector的扩容机制?
2.4 Vector怎么释放空间?

3. 算法

* 10分钟做一个合并有序链表

------------------------------------------------------
IEG游戏前沿(Base深圳)一面

1. 图形学

1.1 介绍项目
1.2 软光栅的Z-Buffer怎么做的
1.3 深度是用float32存储的吗?这个精度在靠近1的范围会比较低,要怎么处理?
1.4 简单介绍下BVH。
1.5 你的BVH的节点深度是多少?如果你的三角形个数特别多,上万个。有什么优化方法吗?
1.6 你的光追的贴图是怎么存储的?
1.7 你的demo上面有很多噪点,你后续有处理吗?
1.8 你的帧缓冲多帧混合这一块是做了什么?具体说一下
1.9 你的path tracing的终止条件是怎样的?没有加俄罗斯转盘吗?
1.10 你有对直接光采样吗?直接对光源的重要性采样。
1.11 如果一个光源没有实体,你要怎么做?
1.12 多重重要性采样了解吗?
1.13 你这个没对光源采样,加几个光源就慢了,或者黑的
1.14 后续需要降噪的话。相关的降噪你了解吗?
1.15 SVGF了解吗?
1.16 specular部分BRDF包含哪些项
1.17 游戏里面的渲染管线了解吗?
1.18 讲一下延迟渲染管线
1.19 deferred shadings 主要解决什么问题?
1.20 那如果材质比较多的话,延迟渲染会存在什么问题?怎么解决?
1.21 ray tracing这块了解什么GI方案吗?光照探针了解吗?

2.算法

2.1 N个字符串组成新字符串

从N个字符串序列中每个字符串取一个字符组成新的字符串,新的字符串中没有相同字符
示例:输入N=3, "ab", "ca", "ccb"输出:"acb", "bac"

2.2 乘积和异或相等的子序列

给定一个正整数序列,输出其子序列,字序列满足其所有元素的乘机与其所有元素的异或相等。

示例: 输入[1,2,1,3,4] 输出[1, 2, 1], [1,3,1]

3. 反问

3.1 base在哪
3.2 问了很多光追方面的。主要工作是光追吗?

-----------------------------------------------------------
IEG游戏前沿(Base深圳)二面

1. 图形学

1.1 软光栅的数学库是自己实现的吗?
1.2 光栅化算法怎么实现的?(扫描线算法)
1.3 三角形重心坐标怎么算?
1.4 有哪些坐标转换呢?
1.5 纹理贴图的读取也是cpu做的吗?
1.6 你的MipMap怎么实现的?
1.7 你怎么知道用哪一级mipmap的纹理呢?
1.8 阴影怎么实现的?
1.9 阴影有什么优化的算法?(CSM)
1.10 IBL的BRDF重要性采样是什么意思?
1.11 BVH是在cpu上创建的吗?
1.12 蒙特卡洛积分是怎么算的?

2. C++

2.1 智能指针了解吗?
---------------------------------

IEG游戏前沿(Base深圳)三面

1. 图形学

1.1 介绍项目。项目什么时候做的?
1.2 gamma矫正是处理什么问题?色调映射是处理什么问题?
1.3 从人眼角度来看为什么我们都是用RGB空间?
1.4 为什么RGB分三个通道。而印刷的时候分成四个通道?
1.5 我们对颜色在RGB空间做加减乘除。加的物理含义?减的物理含义?乘的物理含义?
1.6 为什么RGB三个通道是独立的?G通道对R通道没有影响吗?
1.7 MipMap和纹理映射解决什么问题?
1.8 远距离用高分辨率的贴图会发生什么失真?
1.9 如果远距离但是没有mipmap,你要怎么去渲染?
1.10 怎么实现mipmap的?
1.11 mipmapping是怎么做的?你怎么计算对应级别的?
1.12 你在光栅化的时候做了哪些事情?
1.13 插值有什么需要注意的地方吗?
1.14 你的mipmap是怎么存储的?
1.15 实际在显卡中存储都是按block存储的。为什么要用block存储?
1.16 sobol低差异序列为什么能够让采样更准确,效率更加高。

#腾讯##腾讯面经##面经##面经腾讯美团百度##图形学##游戏引擎#
全部评论
吓死我了,我以为ieg六轮技术面
4 回复 分享
发布于 2024-07-11 00:10 广东
佬是大三吗
1 回复 分享
发布于 2024-07-11 17:26 广东
咋面了这么多轮😢
点赞 回复 分享
发布于 2024-07-26 17:12 广东
大佬是准备的什么项目
点赞 回复 分享
发布于 2024-07-23 12:33 辽宁
似乎没有特别深
点赞 回复 分享
发布于 2024-07-22 15:04 上海
感谢分享。面试官好喜欢问mipmap啊😂
点赞 回复 分享
发布于 2024-07-22 08:41 江苏
感觉问的都很基础,是提前批吗
点赞 回复 分享
发布于 2024-07-11 16:34 北京
这么难啊
点赞 回复 分享
发布于 2024-07-11 12:57 广东
太强了佬😻
点赞 回复 分享
发布于 2024-07-11 09:35 江苏

相关推荐

总体感觉挺难的,不是简单问八股 每一个点都往下问  问到你不会为止。1.说一下你对handler的理解2.有三行代码。loga handler(logb) logc.都在主线程里面。执行顺序是什么3.如果耗时 执行顺序是什么4.如果不耗时 执行顺序是什么5.java 的常用引用类型6.说到弱引用,只要gc就回收。7.弱引用gc回收的条件呢8.弱引用本身是一个什么引用9.这里说了一些列的关于弱引用的回收条件 长达20分钟10.一个activity create的时候new了一个a   m持有a,destory的时候没置空 内存会泄露吗?11.如果相互持有引用也没置空,会内存泄露吗?12.假如你是java设计者,你会怎么改进设计gc13.对应届生面试主要是引导14.事件分发机制 消费机制  又说了十几分钟15.事件没有消费的话,怎么传回去的?16.接触kotlin的吗17.java泛型了解吗?又说了十分钟18.泛型是真的产生了相应的类型吗?19.其他语言会不会真正产生  CPP20.你们学校学的都是java 吗 学校?21.你了解service吗?22.自己构造一个service有问题吗?23.自己的service和系统的service的劣势是什么24.不同的点有哪些?25.你有一个下载需求,我是迅雷,你给我一个url,我去下载。这种情况下,我内部的service要怎么设计呢?启动方式怎么样?26.你想让别人调用你的service,你怎么设计?27.官方service和你自己的区别是什么?28.service的基础能力有哪些?29.tcp的三次握手30.自己嘴快说了,说链接可靠了。31.tcp可靠是怎么保证的32.打电话  你说一个喂  我说一个喂    你说一个 听到了   带入三次握手给我说一下33.假如中间少了一次,会出现什么34.就是确认双方都有收发能力35.https有了解吗  假如tc建立链接,假如我给你家人打电话,你妈接到了,你们不想内容泄露,https是怎么做到的 具体做了啥36.你发的所有东西中间人全知道了,你要怎么防止呢?37.证书是怎么保证可靠的呢?38.仔细说下ca证书 公钥解密校验过程39.怎么确认证书的真实性40.重写hash方法也要重写equals() 为什么41.会导致什么异常呢42.hashmap是线程不安全的  说说你的理解43.我现在就要并发  就不加锁 你怎么办44.描述一下消费者生产者的模型45.口述伪代码46.生产多个 消费多个呢47.怎么提高效率?48.引入循环呢?49.生产的时候需要加锁吗?自己说的要50.在哪一步开始锁?51.唤醒消费者的时候 他还处于锁的状态  我怎么唤醒它52.我去唤醒你的时候 锁在我手上,然后唤醒之后 锁还在我手上,你什么时候能拿到锁?53.反问组里技术栈
客户端毁我一生:更新,已过约二面了
影石创新科技股份有限公司一面67人在聊
点赞 评论 收藏
分享
评论
38
202
分享

创作者周榜

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