搜档网
当前位置:搜档网 › Unity3d面试题总结

Unity3d面试题总结

Unity3d面试题总结
Unity3d面试题总结

Unity3d面试题总结

本人总结的一些Unity3d高频面试题目,希望能够帮助到大家。限于个人水平有限,只附上一些参考答案。

====================================== =

数据结构和算法很重要,图形学也很重要!

大的游戏公司很看重个人基础、综合能力;

小公司看你实际工作能力,看你的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.OnCollisionEnter

2.OnCollisionStay

3.OnCollisionExit

6.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 Light

12.Unity3d脚本从唤醒到销毁有着一套比较完整的生命周期,请列

史上最全的Unity面试题(三)

二十一:物理更新一般放在哪个系统函数里? FixedUpdate,每固定帧绘制时执行一次,和Update不同的是FixedUpdate是渲染帧执行,如果你的渲染效率低下的时候FixedUpdate调用次数就会跟着下降。FixedUpdate比较适用于物理引擎的计算,因为是跟每帧渲染有关。Update就比较适合做控制。 二十二:在场景中放置多个Camera并同时处于活动状态会发生什么?游戏界面可以看到很多摄像机的混合。 二十三:如何销毁一个UnityEngine.Object及其子类? 使用Destroy()方法; 二十四:请描述为什么Unity3d中会发生在组件上出现数据丢失的情况一般是组件上绑定的物体对象被删除了 二十五:LOD是什么,优缺点是什么? LOD(Level of detail)多层次细节,是最常用的游戏优化技术。它按照模型的位置和重要程度决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算。缺点是增加了内存。 二十六:MipMap是什么,作用? MipMapping:在三维计算机图形的贴图渲染中有常用的技术,为加快渲染进度和减少图像锯齿,贴图被处理成由一系列被预先计算和优化过的图片组成的文件,这样的贴图被称为MipMap。 二十七:请描述Interface与抽象类之间的不同 抽象类表示该类中可能已经有一些方法的具体定义,但接口就是公公只能定义各个方法的界面,不能具体的实现代码在成员方法中。类是子类用来继承的,当父类已经有实际功能的方法时该方法在子类中可以不必实现,直接引用父类的方法,子类也可以重写该父类的方法。实现接口的时候必须要实现接口中所有的方法,不能遗漏任何一个。

JAVA、net 后端技术岗笔试题

net开发工程师笔试题目 1.一列数的规则如下:1、1、2、3、5、8、13、21、34……求第30位数是多少,用递归算法实现。 2.用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层? 3.在C#中,string str = null 与string str = "" 请使用文字说明其中的区别。 4.根据线程安全的相关知识,分析以下代码,当调用test方法时i>10时是否会引起死锁?并简要说明理由。 public void test(int i) { lock(this) { if (i>10) { i--; test(i); } } }

5.简要谈一下您对微软。NET 构架下remoting和webservice两项技术的理解以及实际中的应用。 6.公司要求开发一个继承System.Windows.Forms.ListView类的组件,要求达到以下的特殊功能:点击ListView各列列头时,能按照点击列的每行值进行重排视图中的所有行(排序的方式如DataGrid相似)。根据您的知识,请简要谈一下您的思路 7.给定以下XML文件,完成算法流程图。 < DriverC >

请请使用递归算法遍历所有文件名(FileName)。 8.写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。

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刚体。

游戏公司unity面试题

Unity3d 程序员面试题 1.什么是渲染管道?渲染管道有哪些步骤? 答:渲染管道是指程序为了在显示器上输出图像而经过的一系列必要操作. 渲染管道的步骤有: 本地空间->世界空间->视图空间->背面剔除->光照计算->相机裁剪->投影计算->视口变换->光栅化 2.Unity3d有几种加载Prefab的方式? 答: 1.静态引用,建一个public变量,在Inspector里把prefab拉上去,在场景运行时会自动加载,用的时候instantiate 2.Resource.Load, 在调用该函数后加载, Load以后instantiate 3.AssetBundle.Load 在调用该函数后加载, Load以后instantiate 3.什么是协同程序? 答:在主线程序运行时同时开启另一段逻辑处理,来协助当前程序的执行.换名话说. 开启协程就象开启一个线程. 4.你例举几个你用过的Unity3d插件,并说明它们的用途和特点. 5.Unity3d中的碰撞器Collision和触发器Trigger的区别? 答:碰撞器有碰撞效果, IsTrigger = false 在碰撞发生时会调用 OnCollisionEnter,OnCollisionStay,OnCollisionExit函数. 触发器没有碰撞效果, IsTrigger = true, 可被触发时会调用 OnTriggerEnter,OnTriggerStay,OnTriggerExit函数 6.物体发生碰撞的必要条件 答:两件物体都必须有碰撞组件(Collider),其中一物体还必须带有Rigidbody刚体组件 7.在物体发生碰撞的整个过程中,有几个阶段,不同阶段分别调用哪些函数 答:1.OnCollisionEnter 2.OnCollisionStay 3.OnCollisionExit 8.在unity3D中有Update还有FixedUpdate,物理引擎的更新一般放在哪个系统函数里,为什 么? 答:物理引擎的更新一般放在FixedUpdate里面,和Update不同,FixedUpdate是渲染帧执行,如果你的渲染效率低下的时候FixedUpdate调用次数就会跟着下降.因为FixedUpdate是每固定帧绘制时执行一次,所以更适合做物理控制. 9.移动摄像机的动作放在哪个系统函数中,为什么放在这个函数中? 答:移动摄像机的动作应该放在LateUpdate函数中.在每帧执行完毕调用,它是在所有Update结束后才调用,比较适合用于命令脚本的执行.如果不是在所有Update执行完后就移动摄像机可能会出现摄像机移动了,视口里的内容还没有更新的空帧现象.

DoNet面试题(选择题)原题

1.下面有关用户控件与aspx页面区别说法错误的是(B) A.用户控件不能再包含

标记,而aspx页面可以包含 B.用户控件不能触发服务器端的事件,只是一种外观重用方式,而aspx页面可以 C.用户控件继承自https://www.sodocs.net/doc/1513857977.html,erControl,而aspx页面继承自System.Web.UI.Page D.用户控件可以包含其它用户控件,但是不能直接访问,必须包含在某个aspx页面中才可以访问,而aspx 页面是可以直接访问的 2.想在在aspx页面使用用户控件,则aspx页面开始部分必须添加下面哪个页面指令A A. <%@ Page %> B.<%@ Master %> C. <%@ Control %> D. <%@ Register %> 3.根据你的理解,你认为第三控件与用户控件的主要区别是A A.第三方控件是编译后的代码,后缀为dll,只要应用程序引用进来,就可以使用,而用户控件是页面文件,属于非编译代码,只限于在当前应用程序中使用 B.用户控件比第三方控件更灵活,可以在应用程序中多个地方使用 C.用户控件出现在工具箱中,而第三方控件不会出现在工具箱中 D.用户控件比第三方控件的执行效率要高一些 4.下面关于HttpHandler与HttpModule说法正确的是C A.一个Http请求中可以经历多个HttpModule和一个HttpHandler B.一个Http请求中可以经历多个HttpHandler和一个HttpModule C.HttpModule是一个Http请求的最终处理者 D.HttpHandler通常做一些停止数据向客户端输出的操作 5.在aSPNET中,关于HttpHandler说法不正确的是:(D) A.通常文件后缀名为ashx B.它是一个Http请求处理的最终点 C.它实现了IHttpHandler D.当它的IsReusable属性为false时,表示只能使用一次 6.下面哪个选项不能在web.config文件中配置的(C) A.连接字符串 B.身份验证 C.网站导航 D.程序出现错误时,定向到的错误提示页面 7.a SPNET支持三种验证方式,不属于其中的是(B) A.passport B.SqlServer身份 C.Windows D.Forms

Unity3d面试题总结

Unity3d面试题总结

本人总结的一些Unity3d高频面试题目,希望能够帮助到大家。限于个人水平有限,只附上一些参考答案。 ====================================== = 数据结构和算法很重要,图形学也很重要! 大的游戏公司很看重个人基础、综合能力; 小公司看你实际工作能力,看你的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中的碰撞器和触发器的区别?

.net高级工程师面试题

.net软件工程师面试题 基础题: 1.简述string[]、ArrayList、List的区别。 数组: 优点: o数组在内存中是连续存储的,索引速度非常快; o赋值和修改元素也很简单; 不足: o两个数据之间插入数据比较麻烦; o声明数组的时候,必须指明数组的长度,数组长度过长会造成内存浪费,数组的长度过短,会造成数据溢出错误。 ArrayList: 优点: https://www.sodocs.net/doc/1513857977.html, framework 提供的用于数据存储和检索的专用类 o大小依据存储的数据来动态扩展和收缩 o继承IList,可以方便的进行数据的添加、插入和删除 缺点: o允许插入不同类型的数据,都当做object类型处理 o数据处理时可能出现类型不匹配的错误

o存在装箱(值=》引用)拆箱的操作,会带来很大的性能损耗 List: 优点: o声明List集合时,需要声明集合内数据的对象类型 o避免了类型安全问题和装箱拆箱的性能问题 2.简述装箱和拆箱操作中的性能损耗是如何产生的。 3.简述对https://www.sodocs.net/doc/1513857977.html,中的事件机制的理解。 4.在一个https://www.sodocs.net/doc/1513857977.html,的三层结构系统中,以登录操作为例,简述在各层中如何组织代码。 5.简述相比DATASET,实体类在WEB项目中的优点与缺点。 6.简述GC是如何工作的。 Java采用VM(Virtual Machine)机制,由VM来管理程序的运行当然也包括对GC管理。90年代末期.NET出现了,.NET采用了和Java类似的方法由CLR(Common Language Runtime)来管理。 Garbage Collector(垃圾收集器,在不至于混淆的情况下也成为GC)以应用程序的root 为基础,遍历应用程序在Heap上动态分配的所有对象[2],通过识别它们是否被引用来确定哪些对象是已经死亡的、哪些仍需要被使用。已经不再被应用程序的root或者别的对象所引用的对象就是已经死亡的对象,即所谓的垃圾,需要被回收。这就是GC工作的原理。为了实现这个原理,GC有多种算法。比较常见的算法有Reference Counting,Mark Sweep,Copy Collection等等。目前主流的虚拟系统.NET CLR,Java VM和Rotor都是采用的Mark Sweep算法。

软件开发工程师面试题(基础知识)

.NET开发人员试题(综合) 1、用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的 关系以及为什么要这样分层? 2、软件开发过程一般有几个阶段?每个阶段的作用? 3、您对编程的兴趣如何?工作中遇到不懂的问题是怎样去解决的?您一 般怎样去提高自己的编程水平? .NET开发人员试题(基础) 1、请你说说.NET中类和结构的区别? 答:结构是值类型,在堆栈上分配地址,所有的基类型都是结构类型,如 System.int或System.string,不能被继承 类是引用类型(new),可以被继承,在堆上分配地址,堆栈的执行效率要比堆的执行效率高,但堆栈的资源有限, 2、死锁的必要条件?怎么克服? 答:系统资源不足,资源分配不当,一个资源每次只能被一个进程使用,一个资源请求资源时,而此时这个资源阻塞,且对已获得的资源不放 3、接口是否可以继承接口?抽象类是否可以实现接口?抽象类是否可以 继承实 体类? 答:接口是可以继承接口;抽象类是可以实现接口;抽象类可以继承实体类,只要实体类有明确的构造函数. 4、构造器 Constructor是否可以被继承?是否可以被Override? 答: Constructor不可以被继承,因此不能被重写(Override),但可以被重载(Overloading) 5、当一个线程进入一个对象的方法后,其它线程是否可以进入该对象的 方法?

答:不可以,一个对象的方法只能由一个线程访问 6、C#是否可以对内存直接进行操作? 答:可以,因为可以使用指针 7、数组有没有Length()这个方法?string有没有这个方法?8、谈谈final,finally,finallize的区别? 答:final用来申明属性、方法、类,表示属性不可变,方法不可以被覆盖,类不可以被继承 Finally是异常处理语句结构,总是执行 Finallize是object类一个方法,在垃圾回收机制中执行的时候会被调用被回收对象的方法 9、C#中委托是什么?事件是不是一种委托? 答:委托是一种安全的类似于函数指针,但比指针安全,它可以把方法作为一个参数传递给另一个方法,可理解为指向函数的引用,事件是一种消息机制,是一种委托,委托不带方法体。 10、Override, Overload,的区别? 11、概述反射、序列化和反序列化?12、UDP和TCP连接有和异 同?13、进程和线程分别该怎么理解? 14、ASP。NET页面之间传递值的几种方式? 15、a=10,b=15在不使用第三方变量的前提下,把a,b的值互换。 答:a=b+(b=a)*0; 16、请简述面向对象的多态的特性及意义? 17、Session喜欢丢值且占内存,Cookies不安全,请问用什么办法替代这两种方法? 18、try{}里有一个return语句,那紧跟在这个后边有个finally{}里的代码会不会被执行,什么时候执行? 20、求当前日期所在的周的起止日期。 答:select sysdate-to_char(sysdate, 'D ')+1 as起始日 期,sysdate+7-to_char(sysdate, 'D ') as 中止日期 from dual 21、c#中的&符号与&&符号有什么区别?22、函数和存储过程的区别?

unity3d笔试题

Unity 1. u3d用u3d实现2d游戏,有几种方式 1.利用引擎自带的GUI 2.把摄像机设为Orthographic,用面片作为2d元素 3.利用第三方插件:NGUI、2dToolkit 2. u3d物体发生碰撞时,有几个阶段,分别对应的函数 三个阶段,OnCollisionEnter/Stay/Exit()函数 提供了一个用于保存读取数据的类,(playerPrefs),请列出保存读取整形数据的函数 (string, int) 与(string) 从唤醒到销毁有一段生命周期,请列出系统自己调用的几个重要方法(按执行顺序书写至少五个)。 Awake –>OnEnable –> Start –> Update –> FixedUpdate –> LateUpdate –> OnGUI –> OnDisable –> OnDestroy 下如何安全的在不同工程迁移asset数据 方法1,可以把assets目录和Library目录一起迁移, 方法2,导出包Export Package 方法3,用unity带的assets server功能或meta功能 Ngui 1 NGUI:有两张图集Altas1和Altas2,Altas1中有一张图Background,Altas2中有一张图叫Element,分别作出三个Sprite B1、E、B2,如何让这三个Sprite在镜头前显示顺序为B2盖住E且E盖住B1(如下图所示) 将B1和E放在在同一个Panel P1下,调整E的depth高于B1;将B2放在另一个Panel P2下,将P2所在的z轴调整为-1(或更小的数) 2 NGUI:图集里有图A,使用哪种控件可以实现在场景中显示为图B: 图A 图B SlicedSprite,设置这张图在图集中的Border的上下左右边框范围,再拉伸UISprite 3 NGUI: Sprite有哪几种分别有什么用途 Sprite(一张普通的图片)

网络工程师面试题(附答案)

1、解决路由环问题的方法有(ABD) A.水平分割 B.路由保持法 C.路由器重启 D.定义路由权的最大值 2、下面哪一项正确描述了路由协议(C) A.允许数据包在主机间传送的一种协议 B.定义数据包中域的格式和用法的一种方式 C.通过执行一个算法来完成路由选择的一种协议 D.指定MAC地址和IP地址捆绑的方式和时间的一种协议 3、以下哪些内容是路由信息中所不包含的(A) A.源地址 B.下一跳 C.目标网络 D.路由权值 4、以下说法那些是正确的(BD) A.路由优先级与路由权值的计算是一致的 B.路由权的计算可能基于路径某单一特性计算,也可能基于路径多种属性

C.如果几个动态路由协议都找到了到达同一目标网络的最佳路由,这几条路由都会被加入路由表中 D.动态路由协议是按照路由的路由权值来判断路由的好坏,并且每一种路由协议的判断方法都是不一样的 5、IGP的作用范围是(C) A.区域内 B.局域网内 C.自治系统内 D.自然子网范围内 6、距离矢量协议包括(AB) A.RIP B.BGP C.IS-IS D.OSPF 7、关于矢量距离算法以下那些说法是错误的(A) A.矢量距离算法不会产生路由环路问题 B.矢量距离算法是靠传递路由信息来实现的 C.路由信息的矢量表示法是(目标网络,metric) D. 使用矢量距离算法的协议只从自己的邻居获得信息

A. MTU B. 时延 8、如果一个内部网络对外的出口只有一个,那么最好配置 (A ) A. 缺省路由 B. 主机路由 C. 动态路由 9、BGP 是在(D)之间传播路由的协议 A. 主机 B. 子网 C. 区域 (area) D. 自治系统 (AS) 10、在路由器中,如果去往同一目的地有多条路由, 则决定最佳路由的因素有 (AC) A. 路由的优先级 B. 路由的发布者 C. 路由的 metirc 值 D. 路由的生存时间 11、在RIP 协议中,计算metric 值的参数是(D)

Unity面试题

最近unity3d找工作有些受挫,自己也开始补课了。 下面把这段时间看到的些面试题供出来让大家也学习下,题目只是面试官选拔人才的一部分,在研究面试题目的过程中,多检测下自己的不足,及时温习或补习下,最终学到真本事才是最重要的。 祝自己也祝大家好运哈! 题目中有些答案有网上搜的,也有个人整理的,有错误或不足的地方,望指正,谢谢! 文章最后会有参考的一些网址或资料的链接,有想看原址的朋友可以直接跳到最后哦。 题目归类区(看题目字体颜色识第几部分) ps:下面题目可能稍有点多,翻页会较麻烦,根据题目的颜色辨别是第几部分吧(超链接功能不会,也懒得做了) 第一部分 1.请简述值类型与引用类型的区别 2.C#中所有引用类型的基类是什么 3.请简述ArrayList和List的主要区别 4.请简述GC(垃圾回收)产生的原因,并描述如何避免? 5.请描述Interface与抽象类之间的不同 6.下列代码在运行中会产生几个临时对象? 7.下列代码在运行中会发生什么问题?如何避免? 8.请简述关键字Sealed用在类声明和函数声明时的作用 9.请简述private,public,protected,internal的区别 10.反射的实现原理? 11. .Net与Mono的关系? 12.简述unity3d支持的作为脚本的语言的名称 13.Unity3D是否支持写成多线程程序?如果支持的话需要注意什么? 14.Unity3D的协程和C#线程之间的区别是什么? 15.U3D中用于记录节点空间几何信息的组件名称,及其父类名称 16.简述四元数的作用,四元数对欧拉角的优点?

17.向量的点乘、叉乘以及归一化的意义? 18.矩阵相乘的意义及注意点 19.为何大家都在移动设备上寻求U3D原生GUI的替代方案 20.请简述如何在不同分辨率下保持UI的一致性 21.为什么dynamic font在unicode环境下优于static font 22.Render的作用?描述MeshRender和SkinnedMeshRender的关系与不同 23.简述SkinnedMesh的实现原理 24.在场景中放置多个Camera并同时处于活动状态会发生什么? 25.Prefab的作用?如何在移动环境的设备下恰当地使用它? 26.如何销毁一个UnityEngine.Object及其子类 27.为什么Unity3D中会发生在组件上出现数据丢失的情况? 28.如何安全的在不同工程间安全地迁移asset数据?三种方法 29.MeshCollider和其他Collider的一个主要不同点? 30.当一个细小的高速物体撞向另一个较大的物体时,会出现什么情况?如何避免? 31.OnEnable、Awake、Start运行时的发生顺序?哪些可能在同一个对象周期中反复的发生? 32.请简述OnBecameVisible及OnBecameInvisible的发生时机,以及这一对回调函数的意义? 33.Unity3D如何获知场景中需要加载的数据? 34.MeshRender中material和sharedmaterial的区别? 第二部分 1.请描述游戏动画有哪几种,以及其原理。 2.alpha blend 工作原理 3.写光照计算中的diffuse的计算公式 4.lod是什么,优缺点是什么 5.两种阴影判断的方法工作原理 6.MipMap是什么?作用? 7.用u3d实现2d游戏,有几种方式? 8.u3d中碰撞器和触发器的区别? 9.物体发生碰撞的必要条件 10.CharacterController和Rigidbody的区别 11.物体发生碰撞时,有几个阶段,分别对应的函数 12.u3d中,几种施加力的方式,描述出来。

Unity一些面试题整理

60、关于光照贴图 A:使用光照贴图比使用实时光源渲染要快B:可以降低游戏内存消耗C、多个物体可以使用同一张光照贴图 61、关于Vector3的API,以下说法正确的是? Vector3.forward与Vector3(0,0,1)是一样的意思; 62、以下哪个函数在游戏进入新场景后会被马上调用? MonoBehaviour.OnLevelWasLoaded 63、什么是导航网格(NavMesh)? 一种用于实现自动寻路的网格 64、什么是局部坐标,什么是世界坐标? 世界坐标是不会变的,一直以世界坐标轴的XYZ为标准。局部坐标其实就是自身的坐标,会随着物体的旋转而变化的。 65、itween插件的作用是什么,itween【狗刨学习网】作用于世界坐标还是局部坐标,请列举出3个其常用方法? iTween是一个动画库,作者创建它的目的就是最小的投入实现最大的产出。让你做开发更轻松,用它可以轻松实现各种动画,晃动,旋转,移动,褪色,上色,控制音频等等“

方法:a、MoveTo 物体移动;b、ColorTo:随着时间改变对象的颜色组;c、LookTo:随时间旋转物体让其脸部朝向所提供的Vector3或Transform位置 66、请简述NGUI中Panel和Anchor的作用? Anchor包含UIAnchor脚本。UIAnchor的功能是把对象锚定在屏幕的边缘(左上,左中,左下,上,中,下,右上,右中,右下),或缩放物体使其匹配屏幕的尺寸Panel对象有UIPanel脚【狗刨学习网】本,UIPanel是一个容器,它将包含所有UI 小部件,并负责将所包含的部件组合优化,以减少绘制命令的调用。 68、https://www.sodocs.net/doc/1513857977.html,ToLayer()这个方法有什么作用? LayerMask的使用是按位操作的,https://www.sodocs.net/doc/1513857977.html,ToLayer("Players") 返回该Layer的编号。 69、请描述MeshRender中material和shader的区别? Shader(着色器)实际上就是一小段程序,它负责将输入的Mesh(网格)以指定的方式和输入的贴图或者颜色等组合作用,然后输出。绘图单元可以依据这个输出来将图像绘制到屏幕上。输入的贴图或者颜色等,加上对应的Shader,以及对Shader的特定的参数设置,将这些内容(Shader及输入参数)打包存储在一起,得到的就是一个Material(材质)

史上最全的Unity面试题(一)

一:什么是协同程序? 在主线程运行的同时开启另一段逻辑处理,来协助当前程序的执行,协程很像多线程,但是不是多线程,Unity的协程实在每帧结束之后去检测yield的条件是否满足。 二:Unity3d中的碰撞器和触发器的区别? 碰撞器是触发器的载体,而触发器只是碰撞器身上的一个属性。当Is Trigger=false时,碰撞器根据物理引擎引发碰撞,产生碰撞的效果,可以调用OnCollisionEnter/Stay/Exit函数;当Is Trigger=true时,碰撞器被物理引擎所忽略,没有碰撞效果,可以调用OnTriggerEnter/Stay/Exit函数。如果既要检测到物体的接触又不想让碰撞检测影响物体移动或要检测一个物件是否经过空间中的某个区域这时就可以用到触发器 三:物体发生碰撞的必要条件? 两个物体都必须带有碰撞器(Collider),其中一个物体还必须带有Rigidbody刚体,而且必须是运动的物体带有Rigidbody脚本才能检测到碰撞。 四:请简述ArrayList和List的主要区别? ####ArrayList存在不安全类型(ArrayList会把所有插入其中的数据都当做Object来处理)?装箱拆箱的操作(费时)?List是接口,ArrayList是一个实现了该接口的类,可以被实例化 五:如何安全的在不同工程间安全地迁移asset数据?三种方法 1.将Assets目录和Library目录一起迁移 2.导出包,export Package 3.用unity自带的assets Server功能 六:OnEnable、Awake、Start运行时的发生顺序?哪些可能在同一个对象周期中反复的发生 Awake –>OnEnable->Start,OnEnable在同一周期中可以反复地发生。 七:MeshRender中material和sharedmaterial的区别?

.net开发工程师面试问题

竭诚为您提供优质文档/双击可除.net开发工程师面试问题 篇一:net开发工程师面试题 姓名:日期: 1、简述private、protected、public、internal修饰符的访问权限。 2、c#中的委托是什么?编写一个简单的委 托代码。3、c#中抽象类是什么?编写一个简单的抽象类代码。4、例举https://www.sodocs.net/doc/1513857977.html,页面之间传值的几种方式。5、override 与重载的区别? 6、求出下表达式的值1-2+3-4+……..+m=?(要求:任意写出一种实现方法) 7、.net中读写数据库需要用到哪些类?他们的作用是什么? 8、简述.net异常处理机制? 9、写出下面题目的sql语句: 表1tb_bmbm部门基本信息表 bmbm部门编码bmmc部门名称 表2tb_bmje部门月营业表, yy年mm月 bmbm部门编码je部门营业额 a.要求写一条sql语句查询有哪些部门年累计营业

额>1000的,注意要按年yy,部门名称bmmc分组的累计金额查询。 b.查找表1中有哪些部门不在表2中(查询条件为季度累计营业额>200)。 10、用一条sql语句查询出每门课都大于80分的学生姓名。 —1— —2— 篇二:c#.net开发工程师面试题 c#开发工程师面试题 答题人______________________ 答题日期______________________ 1.简述c#中类与结构的异同及适用情形 2.请编写一段你最熟悉的数组排序算法 3.假使(用https://www.sodocs.net/doc/1513857977.html,)开发了一个资讯类网站,新闻列表及内容均为每次从数据库加载,对 于优化该网站,你有什么好的想法? 4.简述dictionary(dictionary)与hashtable异同,及各自适用的情形 5.表 student(classidint,studentidint,scoreint)class(clas sidint,classname

史上最全的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 Package 3.用unity自带的assets Server功能 六:OnEnable、Awake、Start运行时的发生顺序哪些可能在同一个对象周期中反复的发生 Awake –>OnEnable->Start,OnEnable在同一周期中可以反复地发生。

技术岗位(.net工程师)面试初试题

技术岗位(.net工程师)初试题 应聘人姓名:应聘时间: 1.简述 private、 protected、 public、internal 修饰符的访问权限 2.列举https://www.sodocs.net/doc/1513857977.html,页面之间传递值的几种方式 3.C#中的委托是什么?事件是不是一种委托? 4.实现多态的过程中overload 与override 的区别 5.用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层? 6.什么是装箱和拆箱? https://www.sodocs.net/doc/1513857977.html,中常用的对象有哪些?分别描述一下。 8.在C#中,string str = null 与string str = “”请说明其中的区别。 9.请详述在C#中类(class)与结构(struct)的异同? 10.SQLSERVER服务器中,给定表table1 中有两个字段ID、LastUpdateDate,ID表示更新的事务号,LastUpdateDate表示更新时的服务器时间,请使用一句SQL语句获得最后更新的事务号。 11.写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。

12.GC是什么? 13.String s = new String("xyz");创建了几个String Object? 14.try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后? 15.进程和线程的区别? 16.堆和栈的区别? 17.面向对象的语言具有________性、_________性、________性。 18.C#中的接口和类有什么异同。

NET软件工程师48个面试题目

NET软件工程师48个面试题目

.NET软件工程师48个面试题目 一.填空题 1.面向对象的语言具有(继承)性、(多态)性、(封装)性。 2.能用foreach遍历访问的对象需要实现(IEnumberable)接口或声明(GetEnumberator)方法的类型。 3.列举https://www.sodocs.net/doc/1513857977.html,中的五个主要对象(Command)、(Connection)、(DataReader)、(DataSet)、(DataAdapter)。 4.C#中的三元运算符是__(?:)__ 5.当整数a赋值给一个object对象时,整数a将会被__(装箱)___ 6.类成员有__(3)__种可访问形式 7.float f=-123.567F;int i=(int)f;i的值现在是_(-123)__

8.委托声明的关键字是___(delegate)_ 9.在https://www.sodocs.net/doc/1513857977.html,中所有的自定义用户控件都必须继承自_ (https://www.sodocs.net/doc/1513857977.html,erControl) __ 10.在.Net中所有可序列化的类都被标记为__[serializable]___ 11.在.Net托管代码中我们不用担心内存漏洞,这是因为有了_ GC __ 12.当类T只声明了私有实例构造函数时,则在T的程序文本外部,_不能够_(能够or 不能够)从T派生出新的类,_不能够_(能够or 不能够)直接创立T的任何实例。 二.选择题 1.以下叙述正确的是:BC A. 接口中能够有虚方法。 B. 一个类能够实现多个接口。 C. 接口不能被实例化。 D. 接口中能够包含已实现的方法。

2.从数据库读取记录,你可能用到的方法有:BCD A. ExecuteNonQuery B. ExecuteScalar C. Fill D. ExecuteReader 3.对于一个实现了IDisposable接口的类,以下哪些项能够执行与释放或重置非托管资 相关的应用程序定义的任务?(多 选) ( ABC ) A.Close B.Dispose C.Finalize D. using E.Quit 4.以下关于ref和out的描述哪些项是正确的?(多选) ( ACD ) A.使用ref参数,传递到ref参数的参数必须最先初始化。 B.使用out参数,传递到out参数的参数必须最先初始化。 C.使用ref参数,必须将参数作为ref参数显式传递到方法。

Unity3d面试题总结

本人总结的一些Unity3d 高频面试题目,希望可以帮助到大家。 限于个人水平有限,只附上一些参考答案。 数据结构和算法很重要,图形学也很重要!大的游戏公司很看重个人基础、综合能力;小公司看你实际工作能力,看你的Demo 。高频问答的问题:一.什么是渲染管道是指在显示器上为了显示出图像而经过的一系列必要操作。渲染管道中的很多步骤,都要将几何物体从一个坐标系中变换到 另一个坐标系中去。 主要步骤有: 本地坐标-> 视图坐标-> 背面裁剪-> 光照-> 裁剪-> 投影-> 视图变换-> 光栅化。 二.如何优化内存 有很多种方式,例如 1. 压缩自带类库; 2. 将暂时不用的以后还需要使用的物体隐藏起来而不是直接Destroy 掉; 3. 释放AssetBundle 占用的资源; 4. 降低模型的片面数,降低模型的骨骼数量,降低贴图的大小; 5. 使用光照贴图,使用多层次细节(LOD),使用着色器(Shader),使用预设(Prefab)。

三、动态加载资源的方式(有时候也问区别,具体请百度) 四、什么是协同程序 在主线程运行时同时开启另一段逻辑处理,来协助当前程序的执行。换句话说,开启协程就是开启一个线程。可以用来控制运动、序列以及对象的行为。 五、你用过哪些插件 (最好多熟悉几个插件,问的时候好回答) 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) ,其中一个物体还必须带有

NET初级开发工程师面试题

资料来源:中国教育在线 https://www.sodocs.net/doc/1513857977.html,/ 资料来源:中国教育在线 https://www.sodocs.net/doc/1513857977.html,/ 1.在web 页面中不论显示器的分辨率的大小是800×600,还是1024×768使得页面都显示在屏幕中间。 2.请利用正则表达式验证一个字符串是否为数字串 (请用csharp )。 3.请用HTML 在客户端画出一个5行4列的表格,并用Javascript 访问表格第1行的2列的内容 4.请用javascript 脚本实现弹出无边框窗口显示a.htm 页 5.运用ASP .NET 的输出缓冲来存储动态页面 6.本地计算机上有SQL 2000登录密码式 password 请用CSharp 创建与SQL 的连接并把Northwind 数据库中的sysusers 表中的数据读出放入Table 数据集。 7.请用csharp 设计一个算法,实现将数字转化为字符。 如(0-A ,1-B ,26-AA )。 8.Session 的作用是什么,当不能使用Session 会话时最可能出现的原因是什么? 9.Application 和 Session 两种会话有什么不同。Application 会话自身具有那些属性? 10.请简述一下你对WebService 的了解。 11..net 的机制是什么? 12.请说出ASP ,ASP .NET 的区别 13.说出下面几个函数的区别: private void test(string str){…} private void test(ref string str){…} private void test(out string str){…}

unity3d-高频率面试题目(单选)

unity3d-高频率面试题目(单选) 选择题(共50题,每题2分) 1、 NavMeshAgent组件中的Speed指的是?答案:(A) A、导航移动最大速度 B、移动速度和旋转速度 C、加速度 D、移动起始速度 2、 LeapMotion的核心脚本是?答案:(A) A、HandController B、GameController C、Controller D、FingerController 3、 unity2D平台开发,碰撞方法是()答案:(D) A、OnCollisionEnter(Collision other) B、OnCollisionEnter(Collision2D other) C、OnCollisionEnter2D(Collision other) D、OnCollisionEnter2D(Collision2D other) 4、 Unity中使用LitJSON,将对象转换成字符串是用哪个方法?答案:(A) A、JsonMapper.ToJson() B、JsonMapper.ToObject() C、JsonMapper.ToGameObject() D、JsonMapper.ToString() 5、 物理更新一般放到哪个函数里面?答案:(D) A、OnEnable B、Awake C、Start D、FixedUpdate 6、

Unity发布安卓程序,Sqlite数据库应该存在那个路径下?答案:(C) A、Application.dataPath B、Application.streamingAssetsPath C、Application.persistentDataPath D、Application.temporaryCachePath 7、 发布PC端程序,使用WWW加载本地文件,正确的URL是?答案:(C) A、https://www.sodocs.net/doc/1513857977.html,/XXX B、Application.streamingAssetsPath/XXX C、 "file://"+Application.streamingAssetsPath+"/xxxx"D、以上都不对 8、JSON格式比XML更小,更快,以下说法错误的是?答案:(B) A、数据在键值对中 B、数据由分号分隔 C、花括号保存对象 D、方括号保存数组 9、 外部引入的DLL需要放到哪个文件夹下?答案:(A) A、Plugins B、Resources C、Plugin D、Resource 10、 使用导航系统,想要实现VR效果,船员爬上绳索,肯定需要设置那个属性?答案:(A) A、autoTraverseOffMeshLink B、autoRepath C、autoBraking D、currentOffMeshLinkData 11、 要使用IK,必须使用新版动画,除此之外还需要实现系统自带的什么函数?答案:(A) A、OnAnimatorIK(intlayerIndex) B、OnAnimatorIK() C、OnIKAnimator(intlayerIndex) D、OnIKAnimation() 12、 Unity3d提供了一个用于保存和读取数据的类是?答案:(A) A、PlayerPrefs B、Resource C、DataSave D、Players 13、 角色控制器(CharacterController)组件中自动使用重力的方法是?答案:(A) A、SimpleMove B、Move C、SimpleMove和Move D、以上都不对 14、 Unity中的Light组件,那个属性可以实现图案投影?答案:(A)

相关主题