2023年面试题总结

上传人:cn****1 文档编号:469731022 上传时间:2022-11-17 格式:DOC 页数:7 大小:26KB
返回 下载 相关 举报
2023年面试题总结_第1页
第1页 / 共7页
2023年面试题总结_第2页
第2页 / 共7页
2023年面试题总结_第3页
第3页 / 共7页
2023年面试题总结_第4页
第4页 / 共7页
2023年面试题总结_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《2023年面试题总结》由会员分享,可在线阅读,更多相关《2023年面试题总结(7页珍藏版)》请在金锄头文库上搜索。

1、=数据结构和算法很重要,图形学也很重要!大的游戏公司很看重个人基础、综合能力;小公司看你实际工作能力,看你的Demo。高频问答的问题:一 如何优化内存?有很多种方式,例如1. 将暂时不用的以后还需要使用的物体隐藏起来而不是直接Destroy掉;2. 降低模型的片面数,降低模型的骨骼数量,降低贴图的大小;3. 使用光照贴图,使用多层次细节(LOD),使用着色器(Shader),使用预设(Prefab)。=1.使用Unity3d实现2d游戏,有几种方式?1.使用本身的GUI;2.把摄像机的Projection(投影)值调为Orthographic(正交投影),不考虑z轴;2. Unity3d中的碰

2、撞器和触发器的区别?碰撞器有碰撞的效果,IsTrigger=false,可以调用OnCollisionEnter/Stay/Exit函数;触发器没有碰撞效果,IsTrigger=true,可以调用OnTriggerEnter/Stay/Exit函数。3. 物体发生碰撞的必要条件两个物体都必须带有碰撞器(Collider),其中一个物体还必须带有Rigidbody刚体。4. CharacterController和Rigidbody的区别?CharacterController自带胶囊碰撞器,里面包含有刚体的属性;Rigidbody就是刚体,使物体带有刚体的特征。5. 在物体发生碰撞的整个过程中

3、,有几个阶段,分别列出对应的函数三个阶段1.OnCollisionEnter(进入碰撞) 2.OnCollisionStay (逗留碰撞) 3.OnCollisionExit(当退出碰撞) 6.什么叫做链关节?Hinge Joint,可以模拟两个物体间用一根链条连接在一起的情况,能保持两个物体在一个固定距离内部相互移动而不产生作用力,但是达到固定距离后就会产生拉力。8. 物体自身旋转使用的函数?Transform.Rotate()9. 物体围绕某点旋转使用的函数?Transform.RotateAround()10. Unity3d提供了一个用于保存和读取数据的类(PlayerPrefs),请

4、列出保存和读取整形数据的函数PlayerPrefs.SetInt()PlayerPrefs.GetInt()11. Unity3d提供了几种光源类型,分别是哪几种?四种。平行光:Directional Light点光源:Point Light聚光灯:Spot Light区域光源:Area Light12. Unity3d脚本从唤醒到销毁有着一套比较完整的生命周期,请列出系统自带的几个重要的方法。Awake(只要物体启用才开始执行)Start(只要脚本启用才开始)OnEnable(当前脚本启用执行)-Update(Start执行结束才执行) LateUpdate(延迟更新)FixedUpdate

5、(固定更新,如移动的物体) OnGUI(渲染和处理GUI事件时调用。这意味着你的OnGUI程序将会在每一帧被调用。)Reset(重置,仅在编辑模式下)OnDisable(当不可用,对象变为不可用或附属游戏对象)OnDestroy(当销毁时被调用)13. 物理更新一般放在哪个系统函数里?FixedUpdate,每固定帧绘制时执行一次,和Update不同的是FixedUpdate是渲染帧执行,如果你的渲染效率低下的时候FixedUpdate调用次数就会跟着下降。FixedUpdate比较适用于物理引擎的计算,因为是跟每帧渲染有关。Update就比较适合做控制。14.当游戏中需要频繁创建一个物体时,

6、我们需要怎样做能够节省内存?使用预制物体对象Prefab,然后复制创建。16. 在场景中放置多个Camera并同时处于活动状态会发生什么?游戏界面可以看到很多摄像机的混合。17. 请描述Prefab的作用,并描述如何在移动设备的环境下恰当的使用它?Prefab在实例化的时候用到,主要用于经常会用到的物体,属性方便修改。18.请简述Unity3d下如何安全的在不同工程间迁移asset数据,请列举出三种方法?1.可以把assets目录和Library目录一起迁移2.导出包3.用Unity带的assets Server功能19.请描述为什么Unity3d中会发生在组件上出现数据丢失的情况一般是组件上

7、绑定的物体对象被删除了20.alpha blend工作原理Alpha Blend 实现透明效果,不过只能针对某块区域进行alpha操作,透明度可设。21.获取、增加、删除组件的命令分别是什么?获取:GetComponent增加:AddComponent删除:Destroy22.Animation.CrossFade命令作用是:(C)A. 动画放大B.动画转换C.动画的淡入为其他动画23.Application.loadLevel命令为:(A)A. 加载关卡B.异步加载关卡C.加载动作24.调试记录到控制台的命令是什么?Debug.Log();25.localPosition与Position的

8、使用区别?localPosition:自身位置,相对于父级的变换的位置。Position:在世界坐标transform的位置26.请简述向量的点乘,向量的叉乘以及向量归一化的几何意义?点乘的几何意义是:计算两个向量之间的夹角,以及在某一方向上的投影;叉乘的几何意义是:创建垂直于平面,三角形,或者多边形的向量;27.请说出4种面向对象的设计原则,并分别简述它们的含义。1) 单一职责原则 (The Single Responsiblity Principle,简称SRP):一个类,最好只做一件事,只有一个引起它的变化.2) 开放封闭原则 (The OpenClose Principle,简称OCP

9、):对于扩展是开放的,对于更改是封闭的3) Liskov 替换原则(The Liskov Substitution Principle,简称LSP):子类必须能够替换其基类4) 依赖倒置原则(The Dependency Inversion Pricinple,简称DIP):依赖于抽象5) 接口隔离原则 (The Interface Segregation Principle,简称ISP):使用多个小的专门的接口,而不要使用一个大的总接口。28.Material和Physic Material区别?PhysicMaterial 物理材质:物理材质描述,如何处理物体碰撞(摩擦,弹性)。Mater

10、ial材质(材质类)为了获得一个对象使用的材质,可以使用 Renderer.materia属性:29.关于Vector3的APIVector3.forward与Vector3(0,0,1)是否一样; 30.itween插件的作用是什么,itween作用于世界坐标还是局部坐标,请列举出3个其常用方法?iTween是一个动画库,作者创建它的目的就是最小的投入实现最大的产出。让你做开发更轻松,用它可以轻松实现各种动画,晃动,旋转,移动,褪色,上色,控制音频等等“方法:a、MoveTo 物体移动 ;b、ColorTo:随着时间改变对象的颜色组; c、LookTo:随时间旋转物体让其脸部朝向所提供的Ve

11、ctor3或Transform位置31.请简述NGUI中Panel和Anchor的作用Anchor包含UIAnchor脚本。UIAnchor的功能是把对象锚定在屏幕的边缘(左上,左中,左下,上,中,下,右上,右中,右下),或缩放物体使其匹配屏幕的尺寸Panel对象有UIPanel脚本,UIPanel是一个容器,它将包含所有UI小部件,并负责将所包含的部件组合优化,以减少绘制命令的调用。32.请描述MeshRender中material和shader的区别?Shader(着色器)实际上就是一小段程序,它负责将输入的Mesh(网格)以指定的方式和输入的贴图或者颜色等组合作用,然后输出。绘图单元可以依据这个输出来将图像绘制到屏幕上。输入的贴图或者颜色等,加上对应的Shader,以及对Shader的特定的参数设置,将这些内容(Shader及输入参数)打包存储在一起,得到的就是一个Material(材质)Shader大体上可以分为两类:表面着色器(Surface Shader) 、片段着色器(Fragment Shader)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号