U3d面试题(全)
换点什么是渲染管道?是指在显示器上为了显示出图像而经过的一系列必要操作。
渲染管道中的很多步骤,都要将几何物体从一个坐标系中变换到另一个坐标系中去。
主要步骤有:本地坐标->视图坐标->背面裁剪->光照->裁剪->投影->视图变换->光栅化。
一.如何优化内存?有很多种方式,例如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.OnCollisionExit6.Unity3d的物理引擎中,有几种施加力的方式,分别描述出来rigidbody.AddForce/AddForceAtPosition,都在rigidbody系列函数中。
7.什么叫做链条关节?Hinge Joint,可以模拟两个物体间用一根链条连接在一起的情况,能保持两个物体在一个固定距离内部相互移动而不产生作用力,但是达到固定距离后就会产生拉力。
8.物体自身旋转使用的函数?Transform.Rotate()9.物体围绕某点旋转使用的函数?Transform.RotateAround()10.Unity3d提供了一个用于保存和读取数据的类(PlayerPrefs),请列出保存和读取整形数据的函数PlayerPrefs.SetInt() PlayerPrefs.GetInt()11.Unity3d提供了几种光源类型,分别是哪几种?四种。
平行光:Directional Light 点光源:Point Light聚光灯:Spot Light 区域光源:Area Light12.Unity3d脚本从唤醒到销毁有着一套比较完整的生命周期,请列出系统自带的几个重要的方法。
Awake——>Start——>Update——>FixedUpdate——>LateUpdate——>OnGUI——>Reset——>OnDisable——>OnDestroy13.物理更新一般放在哪个系统函数里?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带的assets Server功能20.请描述游戏动画有哪几种,以及其原理?主要有关节动画、骨骼动画、单一网格模型动画(关键帧动画)。
关节动画:把角色分成若干独立部分,一个部分对应一个网格模型,部分的动画连接成一个整体的动画,角色比较灵活,Quake2中使用这种动画;骨骼动画,广泛应用的动画方式,集成了以上两个方式的优点,骨骼按角色特点组成一定的层次结构,有关节相连,可做相对运动,皮肤作为单一网格蒙在骨骼之外,决定角色的外观;单一网格模型动画由一个完整的网格模型构成,在动画序列的关键帧里记录各个顶点的原位置及其改变量,然后插值运算实现动画效果,角色动画较真实。
21.请描述为什么Unity3d中会发生在组件上出现数据丢失的情况一般是组件上绑定的物体对象被删除了22.alpha blend工作原理Alpha Blend 实现透明效果,不过只能针对某块区域进行alpha 操作,透明度可设。
23.写出光照计算中的diffuse的计算公式diffuse = Kd x colorLight x max(N*L,0);Kd 漫反射系数、colorLight 光的颜色、N 单位法线向量、L 由点指向光源的单位向量、其中N与L点乘,如果结果小于等于0,则漫反射为0。
24.Lod是什么,优缺点是什么?LOD(Level of detail)多层次细节,是最常用的游戏优化技术。
它按照模型的位置和重要程度决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算。
25.两种阴影判断的方法、工作原理。
26.Vertex Shader是什么,怎么计算?顶点着色器27.MipMap是什么,作用?MipMapping:在三维计算机图形的贴图渲染中有常用的技术,为加快渲染进度和减少图像锯齿,贴图被处理成由一系列被预先计算和优化过的图片组成的文件,这样的贴图被称为MipMap。
28.机试:二选一1.用代码实现第三角色控制器2.实现吊机吊物体的功能29.反向旋转动画的方法是什么?30.碰撞检测需要物体具备什么属性?31.获取、增加、删除组件的命令分别是什么?获取:GetComponent增加:AddComponent删除:Destroy32.Animation.CrossFade命令作用是:(C)A.动画放大B.动画转换C.动画的淡入为其他动画33.Application.loadLevel命令为:(A)A.加载关卡B.异步加载关卡C.加载动作34.调试记录到控制台的命令是什么?Debug.Log();35.编辑器类存放路径是什么?工程目录下的Assets/Editor文件夹下。
36.使用原生GUI创建一个可以拖动的窗口命令是什么?GUI.DragWindow();37.localPosition与Position的使用区别?localPosition:自身位置,相对于父级的变换的位置。
Position:在世界坐标transform的位置38.意义连线Mathf.Round 插值Mathf.Clamp 四舍五入Mathf.Lerp 限制39.写一个计时器工具,从整点开始计时,格式为:00:00:0040.写出Animation的五个方法41.怎么拿到一个对象上脚本的方法GameObject.GetComponent<>();42.上机题:用鼠标实现在场景中拖动物体,用鼠标滚轮实现缩放(用一个Cube即可)。
43.请简述向量的点乘,向量的叉乘以及向量归一化的几何意义?点乘的几何意义是:计算两个向量之间的夹角,以及在某一方向上的投影;叉乘的几何意义是:创建垂直于平面,三角形,或者多边形的向量;参考:/s/blog_9283b6f601017hfw.html。
unity3d面试题与参考答案
unity3d⾯试题与参考答案1、C#程序题1 2 3 4 5 6 7 8 9 10 11private static void aaa(int x) { x = 10; } private static void bbb(ref int x) { x = 10; } static void Main(string[] args){int x = 0; aaa(x); //现在x的值是:___ bbb(ref x); //现在x的值是:___}答案:0,,10。
详细解答:⼀个是复制⼀份值过去,⼀个是把地址传过去2、英⽂翻译题(把下⾯⽂字翻译成中⽂)Transform.LocalPositionvar localPosition:Vector3;Description:Position of the transform relative to the parent transform.If the transform has no parent,it is the same as Transform.position.Note that the parent transform's world rotation and scale are applied to the local position when calculating the world position.This means that while 1 unit in Transform.position is always 1 unit in transform.localPosition will get scaled by the scale of all ancestors.描述:相对于⽗级的变换的位置。
如果该变换没有⽗级,那么等同于Transform.position。
注意当计算世界的位置时,⽗级变换的世界旋转和缩放被应⽤到⾃⾝的位置。
总结的U3D面试题
总结的U3D⾯试题1.配置Unity 3d调试环境?1) Visual Studio Tools for Unity3)安装对应的版本4)使⽤⽅法(⽣成项⽬⽂件,如何调试)2.Array(数组)和List<T>的异同点?相同点:1)存储⼀组类型相同的数据2)都可以通过”[i]”数组访问符获取内部数据不同点:Array声明时需要指定固定的⼤⼩,且以后再也⽆法改变⼤⼩;List<T>声明时⽆需设定⼤⼩,且以后可以Add和Remove元素。
答案⼆、int[]--->数组,只能放int类型的元素,并且必须定长度ArrayList-->集合的⼀种,其中可以放任何类型,不受限制,长度可变,⾃增加长度List--->集合的⼀种,其中只能放相同类型的数据,长度可变,增长度3.Unity3D常⽤的组件有哪些?1)Transform组件(Transformers变形⾦刚)2)Camera 摄象机组件3)Collder碰撞器组件4)Renderer 渲染器组件(Teach---Teacher)5)RigidBody刚体组件6)CharacterController⾓⾊控制器组件7)AudioListener⾳频监听器(⽿朵)8)AudioSource⾳频源(喇叭)4.Unity3D⾥的游戏对象(GameObject)有哪些属性?1)name 名字作⽤:对对象进⾏标识2)tag 标签作⽤:对对象进⾏分组(Group)3)layer 层作⽤:1.射线投射2.摄象机裁剪5.Unity3D 中实现UI有哪⼏种技术?1)GUI(绝对布局),GUILayout(⾃动布局)特点:只能在OnGUI函数中使⽤。
2)NGUI (Next-Gen UI)中⽂:下⼀代通⽤的UI系统特点:80%的游戏都采⽤3)UGUI (Unity3D GUI)GUI:Game User Interface特点:开发者就是NGUI的原班⼈马6.NGUI的UI动画怎么实现?动画:在⼀段时间以内,对象的某个属性值从⼀个状态过渡到另外⼀个状态。
U3d面试题(全)
U3d面试题(全)换点什么是渲染管道?是指在显示器上为了显示出图像而经过的一系列必要操作。
渲染管道中的很多步骤,都要将几何物体从一个坐标系中变换到另一个坐标系中去。
主要步骤有:本地坐标->视图坐标->背面裁剪->光照->裁剪->投影->视图变换->光栅化。
一.如何优化内存?有很多种方式,例如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插件,如:2DT oolKit;2.Unity3d中的碰撞器和触发器的区别?碰撞器有碰撞的效果,IsTrigger=false,可以调用OnCollisionEnter/Stay/Exit函数;触发器没有碰撞效果,IsTrigger=true,可以调用OnTriggerEnter/Stay/Exit函数。
3.物体发生碰撞的必要条件两个物体都必须带有碰撞器(Collider),其中一个物体还必须带有Rigidbody刚体。
游戏公司unity面试题
Unity3d 程序员面试题1.什么是渲染管道?渲染管道有哪些步骤?答:渲染管道是指程序为了在显示器上输出图像而经过的一系列必要操作.渲染管道的步骤有:本地空间->世界空间->视图空间->背面剔除->光照计算->相机裁剪->投影计算->视口变换->光栅化2.Unity3d有几种加载Prefab的方式?答: 1.静态引用,建一个public变量,在Inspector里把prefab拉上去,在场景运行时会自动加载,用的时候instantiate2.Resource.Load, 在调用该函数后加载, Load以后instantiate3.AssetBundle.Load 在调用该函数后加载, Load以后instantiate3.什么是协同程序?答:在主线程序运行时同时开启另一段逻辑处理,来协助当前程序的执行.换名话说.开启协程就象开启一个线程.4.你例举几个你用过的Unity3d插件,并说明它们的用途和特点.5.Unity3d中的碰撞器Collision和触发器Trigger的区别?答:碰撞器有碰撞效果, IsTrigger = false 在碰撞发生时会调用OnCollisionEnter,OnCollisionStay,OnCollisionExit函数.触发器没有碰撞效果, IsTrigger = true, 可被触发时会调用OnTriggerEnter,OnTriggerStay,OnTriggerExit函数6.物体发生碰撞的必要条件答:两件物体都必须有碰撞组件(Collider),其中一物体还必须带有Rigidbody刚体组件7.在物体发生碰撞的整个过程中,有几个阶段,不同阶段分别调用哪些函数答:1.OnCollisionEnter2.OnCollisionStay3.OnCollisionExit8.在unity3D中有Update还有FixedUpdate,物理引擎的更新一般放在哪个系统函数里,为什么?答:物理引擎的更新一般放在FixedUpdate里面,和Update不同,FixedUpdate是渲染帧执行,如果你的渲染效率低下的时候FixedUpdate调用次数就会跟着下降.因为FixedUpdate是每固定帧绘制时执行一次,所以更适合做物理控制.9.移动摄像机的动作放在哪个系统函数中,为什么放在这个函数中?答:移动摄像机的动作应该放在LateUpdate函数中.在每帧执行完毕调用,它是在所有Update结束后才调用,比较适合用于命令脚本的执行.如果不是在所有Update执行完后就移动摄像机可能会出现摄像机移动了,视口里的内容还没有更新的空帧现象.10.场景中有多个相机(Camera)时,怎么来设置多个相机的渲染顺序.答: Depth参数,设为-1会最先被渲染,值越大越后被渲染.11.LOD是什么, 优缺点是什么?答: LOD 是Level Of Detail的缩写,是指的多层次细节技术,是最常用的游戏优化技术.它按照模型的位置和重要程度决定物体渲染的精细层度,从而降低非重要物体的在视口中的面数和细节度,来提高渲染运算的速度.12.写出光照计算中的Diffuse的计算公式?答: diffuse = Kd * colorLight *max(N . L, 0) ; Kd漫反射系数,ColorLight光照的颜色,N物体表面单位法线向量, L由点指向光源的单位向量, 其中N与L为点乘,如果结果小于等于0,则漫反射为013.Vertex Shader是什么?答:顶点着色器14.MipMap是什么,作用?答:MIP map技术与材质帖图技术结合,根据距观看者远近距离的不同,以不同的分辨率将单一的材质帖图以多重图像的形式表现出来并代表平面纹理:尺寸最大的图像放在前面显著的位置,而相对较小的图像则后退到背景区域。
unity高级工程师面试题
unity高级工程师面试题Unity3D工程师一:值类型和引用类型有何区别?(6分)二:C#中所有引用类型的基类是什么?(4分)三:结构体和类有何区别?(5分)四:请描述Interface与抽象类之间的不同(5分)五:请简述GC(垃圾回收)产生的原因,并描述如何避免?(5分)六:Unity3d脚本从唤醒到销毁有着一套比较完整的生命周期,请列出系统自带的几个重要的方法。
(5分)七:OnEnable、Awake、Start运行时的发生顺序?哪些可能在同一个对象周期中反复的发生?(5分)八:物理更新一般放在哪个系统函数里?(5分)九:CharacterController和Rigidbody的区别?(5分)十:MeshRender中material和sharedmaterial的区别?(5分)十一:什么是协同程序?(5分)十二:什么是渲染管道?(5分)十三:.Net与Mono的关系?(4分)十四:向量的点乘、叉乘以及归一化的意义?(6分)十五:Heap与Stack有何区别?(5分)十六:概述序列化:(5分)十七.如何优化内存?(10分)十八:N个元素取出最大(小)的K个元素,请说明思路及算法?(10分二十一:物理更新一般放在哪个系统函数里?FixedUpdate,每固定帧绘制时执行一次,和Update不同的是FixedUpdate是渲染帧执行,如果你的渲染效率低下的时候FixedUpdate调用次数就会跟着下降。
FixedUpdate比较适用于物理引擎的计算,因为是跟每帧渲染有关。
Update就比较适合做控制。
二十二:在场景中放置多个Camera并同时处于活动状态会发生什么?游戏界面可以看到很多摄像机的混合。
二十三:如何销毁一个UnityEngine.Object及其子类?使用Destroy()方法;二十四:请描述为什么Unity3d中会发生在组件上出现数据丢失的情况一般是组件上绑定的物体对象被删除了二十五:LOD是什么,优缺点是什么?LOD(Levelofdetail)多层次细节,是最常用的游戏优化技术。
unity常见面试题
21.请描述为什么Unity3d中会发生在组件上出现数据丢失的情况一般是组件上绑定的物体对象被删除了22.alpha blend工作原理Alpha Blend 实现透明效果,不过只能针对某块区域进行alpha操作,透明度可设。
23.写出光照计算中的diffuse的计算公式diffuse = Kd x colorLi【狗刨学习网】ght x max(N*L,0);Kd 漫反射系数、colorLight 光的颜色、N 单位法线点指向光源的单位向量、其中N与L点乘,如果结果小于等于0,则漫反射为0。
24.Lod是什么,优缺点是什么?LOD(Level of detail)多层次细节,是最常用的游戏优化技术。
它按照模型的位置和重要程度决定物体渲染的资非重要物体的面数和细节度,从而获得高效率的渲染运算。
25.两种阴影判断的方法、工作原理。
26.Vertex Shader是什么,怎么计算?顶点着色器27.MipMap是什么,作用?MipMapping:在三维计算机图形的贴图渲染中有常用的技术,为加快渲染进度和减少图像锯齿,贴图被处理成预先计算和优化过的图片组成的文件,这样的贴图被称为Mip【狗刨学习网】Map。
28.机试:二选一1.用代码实现第三角色控制器2.实现吊机吊物体的功能29.反向旋转动画的方法是什么?30.碰撞检测需要物体具备什么属性?31.获取、增加、删除组件的命令分别是什么?获取:GetComponent增加:AddComponent删除:Destroy32.Animation.CrossFade命令作用是:(C)A.动画放大B.动画转换C.动画的淡入为其他动画33.Application.loadLevel命令为:(A)A.加载关卡B.异步加载关卡C.加载动作34.调试记录到控制台的命令是什么?Debug.Log();35.编辑器类存放路径是什么?工程目录下的Assets/Editor文件夹下。
上最全的Unity面试题职场文档
一:什么是协同程序?在主线程运行的同时开启另一段逻辑处理,来协助当前程序的执行,协程很像多线程,但是不是多线程,Unity的协程实在每帧结束之后去检测yield的条件是否满足。
二:Unity3d中的碰撞器和触发器的区别?碰撞器是触发器的载体,而触发器只是碰撞器身上的一个属性。
当Is Trigger=false时,碰撞器根据物理引擎引发碰撞,产生碰撞的效果,可以调用OnCollisionEnter/Stay/Exit 函数;当Is Trigger=true时,碰撞器被物理引擎所忽略,没有碰撞效果,可以调用OnTriggerEnter/Stay/Exit函数。
如果既要检测到物体的接触又不想让碰撞检测影响物体移动或要检测一个物件是否经过空间中的某个区域这时就可以用到触发器三:物体发生碰撞的必要条件?两个物体都必须带有碰撞器(Collider),其中一个物体还必须带有Rigidbody刚体,而且必须是运动的物体带有Rigidbody脚本才能检测到碰撞。
四:请简述ArrayList和List的主要区别?####ArrayList存在不安全类型(ArrayList会把所有插入其中的数据都当做Object来处理)装箱拆箱的操作(费时)L ist是接口,ArrayList是一个实现了该接口的类,可以被实例化五:如何安全的在不同工程间安全地迁移asset数据?三种方法1.将Assets目录和Library目录一起迁移2.导出包,export Package3.用unity自带的assets Server功能六:OnEnable、Awake、Start运行时的发生顺序?哪些可能在同一个对象周期中反复的发生Awake –>OnEnable->Start,OnEnable在同一周期中可以反复地发生。
七:MeshRender中material和sharedmaterial的区别?修改sharedMaterial将改变所有物体使用这个材质的外观,并且也改变储存在工程里的材质设置。
unity3d 面试题
unity3d 面试题Unity3D面试题Unity3D是一款用于游戏开发的跨平台游戏引擎,广泛应用于游戏开发、虚拟现实和增强现实等领域。
在Unity3D面试中,面试官通常会考察候选人对Unity3D的了解程度,包括其核心概念、常用功能和技术以及解决问题的能力。
本文将针对Unity3D面试常见的题目进行介绍和解答。
1. 请简要介绍一下Unity3D的主要特点和优势。
Unity3D作为一款综合性游戏开发引擎,有以下几点主要特点和优势:- 跨平台支持:Unity3D可以在多个平台上运行,包括Windows、Mac、iOS、Android等,方便开发者进行跨平台的游戏开发。
- 强大的编辑器:Unity3D提供了强大的可视化编辑器,开发者可以方便地进行场景编辑、物体创建、材质设置等操作。
- 丰富的资源库:Unity3D拥有庞大的资源库,包括模型、贴图、音频等素材,开发者可以在开发过程中快速找到适合的资源。
- 灵活的脚本支持:Unity3D支持多种脚本语言,包括C#、JavaScript等,开发者可以根据自身喜好和项目需求选择使用。
- 社区活跃:Unity3D拥有庞大的开发者社区,开发者可以在社区中交流、分享经验和解决问题。
2. 请说明一下Unity3D的游戏开发流程。
Unity3D的游戏开发流程通常包括以下几个主要阶段:- 设计阶段:包括游戏的创意构思、关卡设计、物体设计等。
- 美术阶段:包括游戏角色和场景的建模、贴图、动画制作等。
- 编程阶段:根据设计阶段的需求,通过编写脚本实现游戏的各种功能,包括玩家控制、碰撞检测、音效播放等。
- 调试和优化阶段:测试游戏的各种功能和性能,修复bug,优化游戏的性能和体验。
- 发布阶段:将游戏打包成可执行文件,发布到对应平台(如PC、手机等)。
3. 请介绍一下Unity3D中常用的游戏物体组件。
在Unity3D中,常用的游戏物体组件包括:- Transform:控制物体的位置、旋转和缩放。
Unity3D面试题
Unity3D面试题1.哪种实时光源是Unity中没有的?A:点光源B:方向光C:聚光灯D:日光灯3.以下哪种操作步骤可以在场景中添加“WindZone”?A:Terrain->WindZone5.下列哪一项不属于Camera中的“ClearFlag”?A:Skybo某B:SolidColorC:DepthOnlyD:Background6.以下哪种脚本语言是Unity编辑器所不支持的?A:JavaScriptB:C#C:BooD:Perl7.对于Prefab,以下说法错误的是?A:Prefab资源可以在项目中多次重复使用B:由Prefab实例出的GameObject,其在Hierarchy视图中表现为蓝色C:Prefab上的组件信息一经改变,其实例出的GameObject也会自动改变D:实例出的GameObject上的组件信息一经改变,其对应的Prefab 也会自动改变8.下面哪种做法可以打开Unity的AetStore?A:Window->AetStoreB:Edit->AetStoreC:File->AetStoreD:Aet->AetStore9.在哪个面板中可以修改物体的空间属性,如位置、朝向、大小等?A:ProjectB:InpectorC:HierarchyD:Toolbar10.如何为一个Aet资源设定一个Label,从而能够方便准确的搜索到A:在Project窗口中选中一个Aet,右键->Create->LabelB:在Project窗口中选中一个Aet,右键->AddLabelC:在Project窗口中选中一个Aet,在Inpector窗口中点击添加Label的图标D:在Project窗口中选中一个Aet,在Inpector窗口中点击按钮“AddLabel”1.Mecanim系统中,BodyMak的作用是?A:指定身体的某一部分是否参与骨骼动画B:指定身体的某一部分是否参与物理模拟C:指定身体的某一部分是否可以输出骨骼信息D:指定身体的某一部分是否参与渲染3.下列关于光照贴图,说法错误的是?A:使用光照贴图比使用实时光源渲染要快B:可以降低游戏内存消耗C:可以增加场景真实感D:多个物体可以使用同一张光照贴图4.如何为物体添加光照贴图所使用的UV?A:不用添加,任何时候都会自动生成B:更改物体导入设置,勾选”GenerateLightmapUV”C:更改物体导入设置,勾选“SwapUV”D:更改物体导入设置,在UV选项中选择”UeLightmap”5.在哪个模块下可以修改RenderPath?A:CameraB:LightC:RenderSettingD:ProjectSetting->Quality6.以下哪项技术不是目前Unity所支持的OccluionCulling技术?A:PVSonlyB:PVSanddynamicobjectC:AutomaticPortalGenerationD:DynamicOnly7.关于Vector3的API,以下说法正确的是?A:Vector3.normalize可以获取一个三维向量的法线向量;B:Vector3.magnitude可以获取一个三维向量的长度;C:Vector3.forward与Vector3(0,0,1)是一样的意思;D:Vector3.Dot(向量A,向量B)是用来计算向量A与向量B的叉积8.以下哪个函数在游戏进入新场景后会被马上调用?A:MonoBehaviour.OnSceneWaLoadedB:MonoBehaviour.OnSceneEnterC:MonoBehaviour.OnLevelWaLoadedD:MonoBehaviour.OnLevelEnter9.什么是导航网格(NavMeh)?A:一种用于描述相机轨迹的网格B:一种被优化过的物体网格C:一种用于物理碰撞的网格D:一种用于实现自动寻路的网格10.下列那些选项不是网格层属性的固有选项A:DefaultB:WalkableC:NotWalkableD:Jump。
unity3d-高频率面试题目
unity3d-高频率面试题目(单选)选择题(共50题,每题2分)1、NavMeshAgent组件中的Speed指的是答案:(A)A、导航移动最大速度B、移动速度和旋转速度C、加速度D、移动起始速度2、LeapMotion的核心脚本是答案:(A)A、HandControllerB、GameControllerC、ControllerD、FingerController3、unity2D平台开发,碰撞方法是()答案:(D)A、OnCollisionEnter(Collision other)B、OnCollisionEnter(Collision2D other)C、OnCollisionEnter2D(Collision other)D、OnCollisionEnter2D(Collision2D other)4、Unity中使用LitJSON,将对象转换成字符串是用哪个方法答案:(A)A、()B、()C、()D、()5、物理更新一般放到哪个函数里面答案:(D)A、OnEnableB、AwakeC、StartD、FixedUpdate6、Unity发布安卓程序,Sqlite数据库应该存在那个路径下答案:(C)A、B、、、7、发布PC端程序,使用WWW加载本地文件,正确的URL是答案:(C)A、、XXXC、""++"/xxxx"D、以上都不对8、JSON格式比XML更小,更快,以下说法错误的是答案:(B)A、数据在键值对中B、数据由分号分隔C、花括号保存对象D、方括号保存数组9、外部引入的DLL需要放到哪个文件夹下答案:(A)A、PluginsB、ResourcesC、PluginD、Resource10、使用导航系统,想要实现VR效果,船员爬上绳索,肯定需要设置那个属性答案:(A)A、autoTraverseOffMeshLinkB、autoRepathC、autoBrakingD、currentOffMeshLinkData11、要使用IK,必须使用新版动画,除此之外还需要实现系统自带的什么函数答案:(A)A、OnAnimatorIK(int layerIndex)B、OnAnimatorIK()C、OnIKAnimator(int layerIndex)D、OnIKAnimation()12、Unity3d提供了一个用于保存和读取数据的类是答案:(A)A、PlayerPrefsB、ResourceC、DataSaveD、Players13、角色控制器(CharacterController)组件中自动使用重力的方法是答案:(A)A、SimpleMoveB、MoveC、SimpleMove和MoveD、以上都不对14、Unity中的Light组件,那个属性可以实现图案投影答案:(A)A、CookieB、FlareC、ShadowTypeD、Color15、移动相机动作最好在哪个函数里答案:(B)A、UpdateB、LateUpdateC、FixedUpdateD、OnGUI16、物体自身旋转使用的函数是答案:(C)A、()B、()C、()D、()17、关于烘焙导航网格,说法错误的是答案:(C)A、表示为Static的物体才可以烘培B、Drop Height表示能跳下的高度C、Jump Distance表示能跳上的高度D、Agent Radius表示物体能通过的半径18、下列选项中,哪个选项表示从游戏开始到到现在所用的时间答案:(A)A、B、、、19、物体发生碰撞的必要条件是答案:(C)A、两个物体都有碰撞器即可B、都有刚体即可C、都有碰撞器,至少一个刚体D、都有刚体,至少一个碰撞体20、使用UGUI中的拖拽接口,需要引入那个命名空间答案:(A)A、B、、、21、关于动画系统中的融合树,描述错误的是答案:(D)A、融合树的1D类型是指用一个参数控制融合树B、Blend Tree可以自动融合两个动作,实现自然过渡效果C、2D Simple Directional类型的融合树,在某一个方向上只能有一个状态D、融合树内部不能嵌套融合树22、关于Avatar,描述错误的是答案:(C)A、Humanoid和Generic类型的模型,都需要AvatarB、Avatar是骨骼绑定的映射,是系统自动生成C、要使用新版动画,每一个人物模型都必须要有自己的AvatarD、Avatar配置不对,可能导致人物动画无法正常播放23、关于拖尾组件的描述错误的是答案:(C)A、一般选用粒子效果的材质B、Time表示拖尾的生命周期C、Colors下面可以设置1个颜色D、Autodestruct 勾选后,物体一旦静止,将被自动销毁游戏物体24、关于四元数说法错误的是答案:(C)A、能避免万向锁B、表示没有旋转C、()方法不需要参数D、表示球形插值25、关于预设体,以下说法错误的是答案:(D)A、空的预设体是白色,非空为蓝色B、反复需要实例化的物体通常设为预设体C、只要预设体原型发生改变,所有Prefab实例都会发生改变D、声音资源可以作为预设体26、Unity引擎自带的回调函数中OnEnable、Awake、Start哪个可能在同一个对象周期中反复的发生答案:(A)A、OnEnableB、AwakeC、StartD、以上都不对27、导航系统中,想要实现路障效果,需要使用答案:(A)A、NavMeshAgent和NavMeshObstacle组件B、NavMeshObstacle和OffMeshLink组件C、NavMeshAgent和OffMeshLink组件D、NavMeshAgent和NavMeshLayer组件28、关于射线,以下说法错误的是答案:(C)A、射线可以用于物体检测B、射线有两个属性,direction和originC、()用于产生多条射线D、 ()方法可以用射线检测指定层29、关于Unity自己封装了一个Network类,主要用于状态同步,开启服务器的方法是答案:(D)A、()B、()C、()D、()30、新版动画系统中,模型的Rig模块下,Animation Type不包括答案:(C)A、HumanoidB、GenericC、NormalD、Legacy31、Sqlite数据库,ExecuteReader方法的作用是答案:(C)A、连接数库库B、执行命令,返回第一行第一列的值C、执行命令,返回所有结果D、读取数据,返回所有数据,返回值为字符串数组32、UGUI中可以实现穿透效果的组件是答案:(C )A、Canvas ScalerB、Graphic RaycasterC、Canvas GroupD、Canvas Mask33、LOD优化的是答案:(C)A、内存B、CPUC、GPUD、以上都不对34、关于XML,描述错误的是答案:(B)A、XML是可扩展标记语言,用于数据传输B、XML比JSON的可读性更高,占用资源更少C、XML只能有一个根节点D、XML 是W3C的举荐标准35、自动布局控件中,可以实现固定子元素宽高的控件是答案:(B)A、Horizontal Layout GroupB、Grid Layout GroupC、Vertical Layout GroupD、Content Size Fitter36、关于协程,以下说法正确的是答案:(A)A、方法的返回值必须为IenumeratorB、协程是多线程C、协程里面不能再次开启另一个协程D、yield return 2;表示等待2帧37、LineRender组件不包含那个属性答案:(D )A、SetColorB、SetVertexCountC、SetWidthD、SetLength38、光照贴图,描述错误的是答案:(C)A、烘培完毕,可以删掉灯光B、优化的是GPU的DrawCallC、所有的灯光都可以烘培D、当场景很大时,全局烘培非常费时39、NetworkView默认情况下,不能同步什么属性答案:(D)A、位置B、刚体C、动画D、脚本40、以下说法正确的是答案:(A)A、TCP是基于连接的,保证数据正确性,不会丢包B、UDP是基本非连接的,保证了数据顺序,不会丢包C、Unity内部不能使用Socket 编程D、Socket可以发送字符串数据41、关于MVC描述错误的是答案:(D)A、结构清晰B、减少耦合度C、容易理解、有利于标准化D、减少了代码量和工作量42、关于StreamingAssetsPath路径描述不正确的是答案:(D)A、该路径在移动端可读不可写B、在安卓路径下是jar:,打包成一个Assetbundle之后,所占空间可能是多少答案:(C)A、小于4KBB、大于8KBC、小于8KBD、12KB44、以下说法正确的是()答案:(B)A、Sprite Renderer支持的图片类型为TextureB、精灵编辑器Sprite Editor可以给图片添加borderC、使用图集会增加DrawCall值D、2D游戏无法控制层级关系45、下列选项中,可以找到隐藏物体的方法是答案:(C)A、()B、()C、()D、()46、实现鼠标拉近人物模型,人物模型自动看向摄像机(时时)需要使用什么技术答案:(B)A、遮罩技术B、动画头部IKC、动画事件D、动画融合47、Unity中鼠标的位置用屏幕的像素坐标表示,描述正确的是()答案:(C)A、左上为坐标原点(0, 0),右下为(, )B、右上为坐标原点(0, 0),左下为(, )C、左下为坐标原点(0, 0),右上为(, )D、右下为坐标原点(0, 0),左上为(, )48、关于动画系统中,要实现边走边换子弹的效果,描述错误的是答案:(B)A、需要用到遮罩技术B、原有层的权重值需为1C、需要添加AvatarMaskD、在新建层中设置一个空的状态机49、使用导航系统,想获取到达目标点内包含的所有路径,需要用到答案:(B)A、B、、、50、UGUI中的Canvas不包含那种渲染类型答案:(D )A、Screen Space - overlayB、Screen Space - CameraC、World SpaceD、Camera Space。
