游戏客户端 暑期实习
1.渲染管线是如何渲染到屏幕上的?
2.场景中有一万个模型,有一个相机要绘制,剔除的流程是什么?
3.aabb是谁的?相机的还是模型的。
4.视锥有写过吗?几何上表达一个视锥
5.视锥是什么几何图形表示的?怎样判断场景中的物体是可见的?
6.视锥剔除是在什么空间?在什么坐标系下?
7.有了解过其他空间加速算法吗?
8.有一万个图形,能每个模型都有一个aabb吗?
9.如何检测模型和相机的可见性
10.有一万个Mesh,用什么几何形式简化他们来和相机做更快的剔除
11.八叉树,如果场景中aabb交换位置,八叉树结点失效了怎么做?比如说一个人,手和身体都在不同的格子里,如果把手举起来,如何更新?
12.渲染管线支持HDR吗?渲染器的贴图是什么颜色空间传入的?
13.了解SRGB线性吗?
14.前向渲染和延迟渲染
15.延迟渲染是怎么做点光源的?
16.给一个G-Buffer,如何做点光源的计算,光源信息存到哪里?
17.凭空有光源的信息,如何和G-Buffer做着色?如何做延迟着色
18.在要着色的模型旁边放了十个灯,如何计算?如何将十个点光源信息都计算出来着色?
19.如果计算出来光照的强度已经超过30了,浮点数,正常是0-255,为1,如何计算?
20.帧资源
21.了解过骨骼动画吗?
22.碰撞检测,角色和墙要做碰撞检测,用两个box判断,如何人走的快了可能会穿过去墙,现在如何修复这个Bug。如何判断两个box相交。
23.阴影是怎么做的?怎么判断像素点在阴影点里面。
24.阴影图里存的是什么东西?存的是谁的深度?深度是什么空间里的?(世界空间还是什么)
25.判断像素点在阴影图的采样,是怎么做转换的?如何在shadowmap里找到正确的uv。uv是怎么计算的?要采集的像素可能在shadowmap里,可能在里面,也可能不在?如何确定这个范围?
26.C++11为什么要右值引用,能不能讲讲这个右值引用比较复杂的情况。值类型怎么处理,一个结构体里全是int,右值引用有什么作用?讲一个右值引用能起到作用的例子。
27.讲一下智能指针,共享指针的计数器存在哪里?在内存上有什么特点?计数器的实现为什么要这么设计,有什么优点?
28.讲讲TCP和UDP的区别?
29.怎么保证UDP的丢包,应用层做什么操作可以让UDP可靠?
面完秒挂