U3D社招面经(小公司)

面试

面试官:C#重载和重写的概念

我:重载是继承父类的时候,可以改写他的函数。重写是函数名相同,输入的参数不同。

面试官:又问那么输出的方法不同,可以重写吗?

我:开始答可以。然后我又该说不可以。

面:你知道编译器是如何帮我们实现它们的吗?

我:不知道。我说C#底层是C++。

面试官:class和struct的不同

我:一个是值类型在堆中,一个是引用类似在栈中。class可以做继承,struct不行。

面试官:struct是在栈上吗?确定struct是引用类型吗?

我:(我有点懵逼,反复问我是不是)是的。

面试官:GC是对什么类型进行

我:是的,GC是对值类型处理。

面试官:我们平常说的引用类型指的是哪个?

我:一种是在栈上的值,一种是访问值类型的地址。

面试管:你觉得是引用类型结构复杂还是值类型结构复杂?

我:我觉得是值类型。

面试官:减少GC的方法

我:对象池、lamber表达式(又问我为什么lamber会产生GC,我不知道)

面试官:让我写个单例。

面试官:构造函数主要做两件事情,做什么事情?

我:分配内存、实例化

面试官:有10000个数,这些数的范围都是1-10,需要对他进行排序。

我:冒泡、插入排序、快速排序(nlogn)

面试官:物理包围盒是啥?

我:物理碰撞 先检测对象的物理包围盒是否接触,如果接触了再检测这个对象的胶囊体或者别的物理实体。

面试官:

var a = b && c;//正确率是90%

var a = c && b;//正确率是10%

应该是上述的那个式子? (我记得这道题好像是这样考我,确实不知道这是啥)

我:不知道

面试官:

local a = b and c or d (这是道lua题,问我这样写有什么问题?)

我:会有内存消耗吗?(我不知道)

面试官:帧同步需要注意什么?

我:定点数、逻辑帧和表现层分离、发送帧数据时带上帧id。

面试官:说一下URP管线?

我:URP管线会往摄像机上绑定自己的一个CameraData。

大致流程是:URPSetting =》继承的renderFeature =》renderPass =》

面试官:renderFeature的顺序?

我:关系不大。renderPass才会影响顺序。分为 阴影=>不透明物体=》半透明物体=》后处理

面试官:UGUI有个组件是mask,会多一个drawCall?知道为什么吗?

我:(先车葫芦话)多一个shader来处理这个mask

面试官:与其他UI的材质哪里不一样?(应该是一直想引导我说模板测试)

我:(绕了很久才说出来)mask多了个模板测试

面试官:问我有什么想问的吗?

我:想找个人干啥?

面试官:巴拉巴拉。。。。。。。。。。。。

问题

面试官:说我编程的基础内容有的弱,让我加强。

个人感受:感觉80%都在问基础,有些问的太细节了。基本上没问我项目。答得不是很好,个人体验也很不好。而且我觉得问的很多问题太偏了,实际项目中完全遇不到。

全部评论
大佬是不是有些回答答反了😞
4 回复 分享
发布于 2024-06-09 17:25 广东
单例那个提示应该是说你这样写会有多线程安全的问题吧,需要在上面包一层lock(object)
1 回复 分享
发布于 2024-06-29 13:28 浙江
struct和class都可以在堆或者栈上,使用new或者malloc就是堆了。
点赞 回复 分享
发布于 2024-07-04 22:37 广东

相关推荐

头像
11-28 13:27
上海大学 Java
继我上一个部门挂掉之后,流转到新部门,从二面开始,说是能加速流程,体验下来也没有加速但是这个组的面试体验大体都还不错,米家的面试体验基本上都挺好的,这点没得喷。-------------------------------------9月17日,四面的面试官看起来比较沧桑,比较疲惫应该没少加班,但是面试体验还是很好的,整体1小时15分钟:1.介绍一下你简历上的实习和项目2.项目中哪些是合作的,哪些是自己做的3.大模型应用方面怎么做的,延迟如何4.Unity中Animator底层实现,模型之间平滑过渡怎么做的,如何防止穿模5.前后端交互中,如果发现响应变慢了,可能是哪些情况,如何优化6.CI/CD底层实现,有没有写过自动化测试7.压测怎么做的,JMeter底层实现8.写一个脚本自动运行Unity并且测试帧率波动,怎么做9.场景题:给你一个Unity地图,地图上有多个障碍物,现在想让你测试除了障碍物之外所有区域是否可通行(环境建模是否有问题),你会如何做,选择什么数据结构,怎么测试10.手撕——合并区间,写出来之后想一些测试用例,要求覆盖所有情况11.喜欢玩什么游戏,有没有写过游戏脚本12.求职意向,接不接受转语言13.反问-------------------------------------面完第二天约下一面,9月25日五面,五面部门的技术总监,很有威严,但是给我的感觉却没啥压力,人还是非常不错的,面试之前还在开会,导致面试迟到了十多分钟,不过hr有跟我及时沟通,到也可以理解,项目赶得比较急,五面整体1小时10分钟:1.自我介绍2.实习学到了什么3.说说你对游戏测开的理解4.未来职业规划5.手撕——从零实现有序区间的插入与删除6.针对手撕设计一些测试用例7.如果手撕的数据量很大怎么办,百亿级别,如何优化8.为什么选择游戏测开9.Beta测试的时候效果如何10.如何衡量一个新角色是否超模,从测开的角度11.希望从测开这里学到什么技术12.喜欢什么游戏,Top313.反问-------------------------------------面完之后泡了几个工作日,约hr面,中间隔了一个国庆,并且还收到了一个我比较满意的offer,所以爽玩了一个国庆节国庆之后返校准备了一下,10月14日hrbp面,这位hr非常有资历了,她说她是8年前校招进米哈游的,所以这次hr面跟我之前面过的hr面完完全全不一样,很有压力,并且时间也长一倍,需要吐槽一下的是,到我反问时,她基本不正面回答我的问题,而是用我提出的问题来问我,比如我问了一个公司文化与氛围,她不回答,反而说我连这个都不知道吗整体1小时左右:1.自我介绍2.前几轮面试自己觉得表现如何,挂掉的面试为什么挂掉的3.岗位投递的方向4.对于未来的发展,转岗是怎么考虑的5.现在秋招有什么意向和进展6.其他公司面试体验如何7.实习公司的优缺点8.工作比较看重哪些点9.有哪些缺点10.反问-------------------------------------后续是泡了整整42天,在11月24日晚上六点半多点,收到感谢信。中间我催过一次,hr保温一次,hr询问手里offer一次,我全部如实回答了,我本来非常期待进入米哈游的,但是随着时间的一点点流逝,也变得无所谓了。导致我收到感谢信的时候,内心毫无波澜,就像意料之中那样。
发面经攒人品
点赞 评论 收藏
分享
11-25 11:18
已编辑
华中师范大学 Unity3D客户端
因为我是一个月前投的简历,但是等了一周没等到约面以为不会有机会了就没准备,结果过了一个月突然打电话约面。本人第一次面试,没准备过面经也没刷算法题(力扣十道题的实力)算是完全没实力的面试。面试得也是一团糟,好多问题答不上来,大概率过几天就会挂了。本人不太会c++,虽然CS也没好到哪里去11.24 一面自我介绍问了一下项目,因为简历上只有项目。问了一下项目是跟着教程做的还是自己做的。问了一下项目里的BUFF系统。听到buff分配是switch语句后就没深入了,估计是觉得写的不行。问八股讲一下c++里的多态多态里的虚函数的底层是怎么实现的?(回答了虚函数表,但是太紧张了,说的乱七八糟的)假如有十个同一个类的对象,虚函数表有几份(答一份)虚函数表存储在内存中的哪个区域?(答在rodata区域)c++中的内存分区是怎么样的?(静态存储区、rodata区,剩下的想不起来了,就给面试官说我的c++不太好,面试官就不再追问了,开始问c#了)c#的堆和栈?(说了一些乱七八糟的东西,扯到了堆是由GC控制的,肯定没答对)你对c#的委托理解?(说了一点委托和多播委托,以及存储关系,他们怎么存储函数)委托怎么删除某个方法(答使用-=运算符,不确定对不对)链表与数组的区别(回答了存储空间分配,插入删除的区别)数组插入的时间复杂度(答O(n))哈希表的理解?(我回答了字典处理哈希表的逻辑,顺便提到了哈希冲突)哈希冲突怎么解决?(字典里采用了链地址法,大概讲了一下,但是语言非常混乱,实在是太紧张了)了不了解平衡二叉树的概念?(这时候以及蒙了,一年前学的数据结构,猛地没想起来,随口答了一下模糊概念)平衡二叉树的左右子树深度差值是多少(答0或1)手撕平衡二叉树的判断,要求自己构建树结构(原本以为没手撕的,结果还是来了,因为忘了平衡二叉树的概念,写了40分钟没写出来,深度判断用的还是层次遍历)讲一下代码思路(一边讲面试官一边看,估计看到代码错了,没深入问)问渲染管线(答,cpu将数据传入到GPU,然后经过顶点着色器、片元着色器等处理,然后投影、裁剪、最后进入光栅化整合输出)深度测试是在什么阶段实现的?(答光栅化,这里答错了应该,下来后搜了发现是在片元着色器阶段)如果要实现半透明的话shader代码怎么写?(不会,直接说了不知道,只了解shader graph知识,现在想想应该可以在深度检测时对后方物体进行颜色均值处理?不太确定)反问环节问我现在基本都是在做项目,这一阵子发现自己开发项目与面试经验不是特别吻合,如果接下来要找面试的话应该往哪个方向走。面试官说我不会c++的话在面试的时候会有一定劣势,如果要做项目的话还是争取能做到把游戏完整上架的程度才比较好,项目算是加分项。相比之下把基础弄好会好一些。然后又聊了很多有关c++和c#的事情,说基础知识之所以是c++是因为c++更偏向于底层,在回答的时候可以描述的更清晰一点。(如果需要的话可以单独开一篇文章说,面试官还是讲了很多内容的)问是哪一个项目组的?游戏还在研发阶段。整体面试下来刚开始的时候非常紧张,语言组织不太好。不过面试官人很好,很有耐心,第一次面试还没准备答成这样子也是没啥可说的,接下来就坐等被挂了。11.25 挂
查看22道真题和解析
点赞 评论 收藏
分享
评论
10
17
分享

创作者周榜

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