上海某大型游戏公司Unity3D基础面试题
1.Unity中碰撞器(Collider)和触发器(Trigger)的区别?
碰撞器(Collider)有碰撞效果,IsTrigger=false,可以调用OnCollisionEnter/Stay/Exit函数
触发器(Trigger)没有碰撞效果,isTrigger=true,可以调用OnTriggerEnter/Stay/Exit函数
2.物体发生碰撞的必要条件?
必须带有collider碰撞器和rigibody刚体属性或者人物控制器,其实人物控制器就包含了前两者,另外一个物体也要必须带有Collider,Collider分类:网格碰撞器,盒子碰撞器,胶囊碰撞器,球型碰撞器,地形碰撞器!
3.CharacterController和Rigidbody的区别?
Rigidbody具有完全真实物理的特性,而CharacterController可以说是受限的的Rigidbody,具有一定的物理效果但不是完全真实的。
4.物体发生碰撞时,有几个阶段,分别对应的函数?
三个阶段,OnCollisionEnter/Stay/Exit函数
5.物体发生碰撞时,几种施加压力的方式,描述出来?
rigidbody.AddForce/AddForceAtPosition,都是rigidbody的成员函数
6.Unity3d提供了几种光源,分别是什么?
共4种,DirectionalLight、PointLight、SpotLight、AreaLight(用于烘焙)
7.物理更新一般在哪个系统函数里?
FixedUpdate,每固定帧绘制时执行一次,和update不同的是FixedUpdate是渲染帧执行,如果你的渲染帧效率低下的时候FixedUpdate调用次数就会跟着下降。FixedUpdate比较适合用于物理引擎的计算,因为是跟每帧的渲染有关。Update就比较适合做控制。
8.移动相机动作在哪个函数里,为什么在这个函数里。
LateUpdate,是在所有的update结束后才调用,比较适合用于命令脚本的执行。官网上例子是摄像机的跟随,都是所有的update操作完才进行摄像机的跟进,不然就有可能出现摄像机已经推进了,但是视角里还未有角色的空帧出现。
9.简述一下Prefab的用处?
在游戏运行时实例化,prefab相当于一个模板,对你已经有的素材、脚本、参数做一个默认的配置,以便于以后的修改,同事prefab打包的内容简化了导出的操作,便于团队的交流。
10.简述一下对象池,你觉得在FPS游戏里哪些东西适合使用对象池?
对象池就存放需要被反复调用资源的一个空间,比如游戏中要常被大量复制的对象,子弹,敌人,以及任何重复出现的对象。
11.最后一题就不详细说了,时间也不早了,该洗洗睡了,可以参考这个来模仿:
1. 机枪兵在平时站立时,处于 空闲 状态;
初始化状态机,并将 空闲 状态作为初始状态放入状态机堆栈中;状态机堆栈:【空闲】
2. 机枪兵发现敌人,并且敌人在射程范围内,机枪兵开始攻击敌人;此时,机枪兵进入 攻击 状态;
进入 攻击 状态;状态机堆栈:【攻击】【空闲】
3. 敌人死亡,机枪兵停止攻击;此时,机枪兵回到 空闲 状态;
退出当前状态;状态机堆栈:【空闲】
4. 此时玩家发出进攻命令,此进攻命令是用A键点了远处的一个地面 place1 ,也就是没有具体目标的进攻;此时,机枪兵进入 移动进攻 状态;
进入 移动进攻 状态;状态机堆栈:【移动进攻】【空闲】
5. 在移动过程中,机枪兵发现了敌人,所以他要脱离原来的路径,走向发现的敌人;此时,机枪兵进入 追击 状态;
进入 追击 状态;状态机堆栈:【追击】【移动进攻】【空闲】
6. 机枪兵和敌人的距离小于了自己的射程之后,机枪兵停下来,并且攻击敌人;此时,机枪兵进入了 攻击 状态;
切换到 攻击 状态;状态机堆栈:【攻击】【移动进攻】【空闲】
7. 敌人死亡后,机枪兵重新寻路到place1,继续前进;此时机枪兵回到步骤4,回到了 移动进攻 状态。
退出当前状态;状态机堆栈:【移动攻击】【空闲】
上海某大型游戏公司Unity3D基础面试题相关推荐
- [Unity3D]上海某大型游戏公司的基础面试题
更多教程请访问: http://dingxiaowei.cn/ 分享上海某大型游戏公司的一个基础测试题! 1.Unity中碰撞器(Collider)和触发器(Trigger)的区别? 碰撞器(Coll ...
- 上海12家游戏公司面试横向评测
从上家公司技术宅离职,出去玩了一段时间然后开始找工作,有幸接到以下公司的面试邀请,所以借此机会做了一下各公司的面试横评. 以下为笔者主观意见横评,仅供娱乐,如有雷同,纯属巧合. 第一版,后续还要更改下 ...
- 某中大型游戏公司面试题
1.如何将String 类型转化为 Integer 类型? 2.native 方法是什么? 3.分别写出BOOL,int,float,指针类型的变量a与"零"的比较语句. 4.Ja ...
- 一份超详细的IBM公司JAVA基础面试题附答案以及解析(题库)
第一章 Java概述 笔试题 一.填空题 1.[基础题]Java是一种先 编译 后 解释 运行的语言. 二.选择题 三.名词解释 1.[基础题]J2SE:Java 2 Standard Edition ...
- 各大游戏公司面经笔试题汇总(资源来自网络)(实时更新)
UBI(育碧)笔试题分享 1.写一个函数确定一个int是否是2的幂 and 重写上面的函数,不用循环且高效实现. 2.写个搬箱子的伪码(倒数第二题) 3.游戏引擎的伪码(这是se最后的大题目 ...
- 某游戏公司测试工程师笔试题
今天刚做了一家公司的笔试,自己做下记录也给大家分享一下,大家有什么问题和建议欢迎评论. 1.什么是测试用例?测试用例的要素有哪些?黑盒测试的测试用例设计方法有哪些? 测试用例是测试过程中很重要的一类文 ...
- 某游戏公司测试工程师面试题
2019独角兽企业重金招聘Python工程师标准>>> 1) 描述一下测试流程: 问题:请描述一下测试流程,主要是考察理论知识 参考答案: 需求评审->制定测试计划-> ...
- 国产游戏版号时隔8个月重启 游戏公司董事长喜极而泣
4月12日消息,昨日晚间,国家新闻出版署公布<2022年4月份国产网络游戏审批信息>,共计45款游戏获批.这是自2021年7月以来,国家新闻出版署公布的首批游戏版号. 45款游戏获批 游戏 ...
- Scrum在大型游戏团队中的应用
当游戏遇到了Scrum Scrum并不是什么高深的管理方法,Scrum的科学原理中,没有什么是值得被拿出来,放在学术界讨论的东西,就连其估算方法,也是使用了看似游戏一般的扑克牌估算法,实在是难登大 ...
最新文章
- javascript:函数的apply,call方法和length属性
- ImportError: libopenblas.so.0: cannot open shared object file
- DPDK pci设备初始化(十七)
- POJ 1195 Mobile phones
- 使用pygame制作一个简单的游戏
- 六十、深入理解Vue组件,使用组件的三个细节点
- VTK:创建颜色系列用法实战
- iOS之深入解析KVO的底层原理
- 尚硅谷_JS DOM编程_学习笔记
- 计算机原理 逻辑单元,湘潭大学计算机原理 实验一 算术逻辑单元ALU实验报告
- 导师什么时候会放弃学生?
- 3d建模电脑配置要求_3D建模学习对于电脑配置要求高不高?
- 零基础学习AI也有快捷方式?一文帮你提升竞争力!
- LockSupport HotSpot里park/unpark的实现
- 怎么配置宝塔linux环境,宝塔面板linux怎么安装
- 14串聚合物锂电池保护板和电路图(带均衡功能)
- 关于字符、字符集、编码和Unicode
- java毕业生设计爱心公益网站设计与制作计算机源码+系统+mysql+调试部署+lw
- 下载陷阱:软件带着病毒来
- Qt5 学习之路及嵌入式开发教程11:Qt5标准输入对话框类及QSlider控件
热门文章
- springMVC第一天——入门、整合与参数绑定
- 周星馳 電影經典對白
- 5-(4-甲酰基苯基)-10,15,20-苯基卟啉(FPTPP)/Β-硝基四苯基卟啉[H2TP(NO2)]及其锌配合物[ZnTPP(NO2)]的合成方法/结构式
- 分区表的分区统计信息
- Struts2漏洞检测和利用
- 如何从0搭建Speedtest服务器
- jzoj5984. 【北大2019冬令营模拟2019.1.1】仙人掌 (分块)
- 《opencv学习笔记》-- 亚像素角点检测
- 小型、低成本、低功耗的一次性收音机。第1部分:发射机
- mysql怎么加快搜索_优化mysql数据库 提高检索速度