我的unity面试题(3)

2019-05-18 21:38

C:HierarchyD:Toolbar10.

如何为一个Asset资源设定一个Label,从而能够方便准确的搜索到?

Label

A:在Project窗口中选中一个Asset,右键->Create->LabelB:在Project窗口中选中一个Asset,右键->Add标

D:在Project窗口中选中一个Asset,在Inspector窗口中点击按钮

“AddLabel”

7.用u3d实现2d游戏,有几种方式?答:1.用本身的GUI

2.把摄像机的Projection调成Orthographic,物体的Z轴不考虑

了。

8.u3d中碰撞器和触发器的区别?

答:碰撞器会有碰撞的效果,IsTrigger=false,可以调用OnCollisionEnter/Stay/Exit函数。触发器没有碰撞效果,isTrigger=true,可以调用OnTriggerEnter/stay/exit函数9.物体发生碰撞的必要条件

答:其中至少一个物体(运动的)必须带有碰撞器(collider)+刚体(Rigidbody)或者CharacterController,另一个物体也必须至少带有collider。10.CharacterController和Rigidbody的区别

答:CharacterController自带胶囊碰撞器,里面好像封装了一个刚体

Rigidbody就是刚体,使物体带有物理的特性

11.物体发生碰撞时,有几个阶段,分别对应的函数答:三个阶段,OnCollisionEnter/Stay/Exit函数12.u3d中,几种施加力的方式,描述出来。

答:rigidbody.AddForce/AddForceAtPosition,都在rigidbody系列函数13.什么叫做链条关节

答:HingeJoint,他可以模拟两个物体间用一根链条连接在一起的情况,能保持两个物体在一个固定距离内部相互移动而不产生作用力,但是达到固定距离后就会产生拉力。

14.物体自旋转使用的函数叫什么答:transform.Rotate

15.物体绕某点旋转使用函数叫什么答:transform.RotateAround

16.u3d提供了一个用于保存读取数据的类,(playerPrefs),请列出保存读取整形数据的函数

答:PlayerPrefs.SetInt(“CoinNum”,100);17.unity3d提供了几种光源,分别是什么

答:4种,Directionllight,PointLight,SpotLight,AreaLight

18.unity3d从唤醒到销毁有一段生命周期,请列出系统自己调用的几个重要方法。

C:在Project窗口中选中一个Asset,在Inspector窗口中点击添加Label的图

答:Awake--->Start--->Update-->FixedUpdate-->LateUpdate--->OnGUI-->Reset-->OnDisable-->OnDestory;

21.当游戏中需要频繁创建一个物体对象时,我们需要怎么做来节省内存。答:(把需要创建的物体拖成预设,动态的创建。需要几个我们就创建几个。22.一个场景放置多个camera并同时处于活动状态,会发生什么答:游戏界面可以看到很多摄像机的混合。可以用depth(深度),Layer(层)+CullingMask,enable=false/true来控制23.简述prefab的用处和环境

答:Prefab在实例化的时候用到,主要用于经常会用到的物体,属性方便修改。1什么是敌人的AI2谈谈弗洛伊德算法

3会安卓或HTML吗?(这个我回答不会,就直接面试结束了)在运行模式下,如何保存GameObject。包括属性和子物体,请给出思路能在运行模式下保存吗?

1.camera的作用

2.shader的工作原理和作用3.u3d在移动平台的性能优化4.u3d的跨平台的原理

5.mecanainm与传统动画的区别6.摄像机遮挡的基本原理

Unity3D题

1.两个物体碰撞的条件。

2.碰撞有几个阶段,分别是哪几个阶段。3.刚体和角色控制器的区别。4.什么是LOD,LOD有什么作用。

5.游戏动画有哪几种,这些动画的原来是什么。6.什么是NomalMapping,它有什么优点。

7.与Unity自带的GUI相比,我们用到的第三方插件有哪些,分别有什么

优缺点。

8.Socket是什么,常用的使用过程是怎样的。

9.NGUI中,监听Button的Click事件有几种,请举例。10.U3D实现2D游戏,有几种方式。

11.Unity3D中碰撞器与触发器有什么区别。12.Unity3D中系统默认的函数有哪些。13.Unity3D中专门用于烘培的灯光是什么。

14.物理更新和移动摄像机分别在哪个函数中运行,为什么。

15.场景中多个摄像机,我们通过调节什么来控制它们照射不同的物体。16.在运行模式下,如何保存GameObject。包括属性和子物体,请给出思路。逻辑题

17.有100个硬币,其中有一个质量较轻,如何用最少的方法,找到这个硬

币。

18.有若干条相同的绳子,但是它们的材质不均匀。点燃一根绳子,从头烧

到尾是一个小时。那么,你如何记录一个小时十五分钟。

19.有十二个硬币,其中的一个不知道轻重,有一个天平,没有砝码。你如

何只称量三次,找出那个硬币,并知其是轻还是重。

C#题

20.重载与override的区别。21.接口与抽象类的区别。22.类和结构的区别。23.事件与委托的区别。24.字段与属性有什么区别。

25.接口IEnumerable和IEnumerator的联系和区别。26.代码实现冒泡法排序。

27.Unity3D能否实现C#中的代理模式。如果能用代码举例。本人总结的一些Unity3d高频面试题目=======================================

C#,UI,NGUI,数据结构和算法很重要,图形学也很重要!大的游戏公司很看重个人基础、综合能力;小公司看你实际工作能力,看你的Demo。

高频问答的问题:一.什么是渲染管道?

是指在显示器上为了显示出图像而经过的一系列必要操作。

渲染管道中的很多步骤,都要将几何物体从一个坐标系中变换到另一个坐标系中去。

主要步骤有:

本地坐标->视图坐标->背面裁剪->光照->裁剪->投影->视图变换->光栅化。二.如何优化内存?

有很多种方式,例如1.压缩自带类库;

2.将暂时不用的以后还需要使用的物体隐藏起来而不是直接Destroy掉;3.释放AssetBundle占用的资源;

4.降低模型的片面数,降低模型的骨骼数量,降低贴图的大小;

5.使用光照贴图,使用多层次细节(LOD),使用着色器(Shader),使用预设(Prefab)。

三、动态加载资源的方式?(有时候也问区别,具体请百度)

1.Resources.Load();2.AssetBundle四、什么是协同程序?

在主线程运行时同时开启另一段逻辑处理,来协助当前程序的执行。换句话说,开启协程就是开启一个线程。可以用来控制运动、序列以及对象的行为。五、你用过哪些插件?

(最好多熟悉几个插件,问的时候好回答)

====================================================1.使用Unity3d实现2d游戏,有几种方式?

1.使用本身的GUI;

2.把摄像机的Projection(投影)值调为Orthographic(正交投影),不考虑z轴;

3.使用2d插件,如:2DToolKit;2.Unity3d中的碰撞器和触发器的区别?

碰撞器有碰撞的效果,IsTrigger=false,可以调用OnCollisionEnter/Stay/Exit函数;

触发器没有碰撞效果,IsTrigger=true,可以调用OnTriggerEnter/Stay/Exit函数。

3.物体发生碰撞的必要条件

两个物体都必须带有碰撞器(Collider),其中一个物体还必须带有Rigidbody刚体。

4.CharacterController和Rigidbody的区别?

CharacterController自带胶囊碰撞器,里面包含有刚体的属性;Rigidbody就是刚体,使物体带有刚体的特征。5.在物体发生碰撞的整个过程中,有几个阶段,分别列出对应的函数

三个阶段

1.OnCollisionEnter2.OnCollisionStay3.OnCollisionExit

6.Unity3d的物理引擎中,有几种施加力的方式,分别描述出来

rigidbody.AddForce/AddForceAtPosition,都在rigidbody系列函数中。7.什么叫做链条关节?

HingeJoint,可以模拟两个物体间用一根链条连接在一起的情况,能保持两个物体在一个固定距离内部相互移动而不产生作用力,但是达到固定距离后就会产生拉力。

8.物体自身旋转使用的函数?

Transform.Rotate()9.物体围绕某点旋转使用的函数?

Transform.RotateAround()

10.Unity3d提供了一个用于保存和读取数据的类(PlayerPrefs),请列出保存和读取整形数据的函数

PlayerPrefs.SetInt()PlayerPrefs.GetInt()

11.Unity3d提供了几种光源类型,分别是哪几种?

四种。

平行光:DirectionalLight点光源:PointLight聚光灯:SpotLight区域光源:AreaLight

12.Unity3d脚本从唤醒到销毁有着一套比较完整的生命周期,请列出系统自带的几个重要的方法。

Awake——>Start——>Update——>FixedUpdate——>LateUpdate——>OnGUI——>Reset——>OnDisable——>OnDestroy

13.物理更新一般放在哪个系统函数里?

FixedUpdate,每固定帧绘制时执行一次,和Update不同的是FixedUpdate是渲染帧执行,如果你的渲染效率低下的时候FixedUpdate调用次数就会跟着下降。FixedUpdate比较适用于物理引擎的计算,因为是跟每帧渲染有关。Update就比较适合做控制。

14.移动摄像机的动作放在哪个系统函数中,为什么放在这个函数中?

LateUpdate,在每帧执行完毕调用,它是在所有Update结束后才调,比较适合用于命令脚本的执行。官网上例子是摄像机的跟随,都是在所有Update操作完才跟进摄像机,不然就有可能出现摄像机已经推进了,但是视角里还未有角色的空帧出现。

15.当游戏中需要频繁创建一个物体时,我们需要怎样做能够节省内存?

使用预制物体对象Prefab,然后复制创建。16.在场景中放置多个Camera并同时处于活动状态会发生什么?

游戏界面可以看到很多摄像机的混合。

17.请描述Prefab的作用,并描述如何在移动设备的环境下恰当的使用它?

Prefab在实例化的时候用到,主要用于经常会用到的物体,属性方便修改。18.如何销毁一个UnityEngine.Object及其子类?

使用Destroy()方法;

19.请简述Unity3d下如何安全的在不同工程间迁移asset数据,请列举出三种方法?

1.可以把assets目录和Library目录一起迁移2.导出包

3.用Unity带的assetsServer功能20.请描述游戏动画有哪几种,以及其原理?

主要有关节动画、骨骼动画、单一网格模型动画(关键帧动画)。

关节动画:把角色分成若干独立部分,一个部分对应一个网格模型,部分的


我的unity面试题(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:最悲催的十个风投案例:多干正事,别玩概念

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: