全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货  >  unity技术干货  >  详情

Unity常用技术点集锦(一)

来源:千锋教育
发布人:syq
2022-11-07

推荐

在线提问>>

  一:什么是协同程序?

  在主线程运行的同时开启另一段逻辑处理,来协助当前程序的执行,协程很像多线程,但是不是多线程,Unity的协程实在每帧结束之后去检测yield的条件是否满足。

Unity常用技术点

  二:Unity3d中的碰撞器和触发器的区别?

  碰撞器是触发器的载体,而触发器只是碰撞器身上的一个属性。当Is Trigger=false时,碰撞器根据物理引擎引发碰撞,产生碰撞的效果,可以调用OnCollisionEnter/Stay/Exit函数;当Is Trigger=true时,碰撞器被物理引擎所忽略,没有碰撞效果,可以调用OnTriggerEnter/Stay/Exit函数。如果既要检测到物体的接触又不想让碰撞检测影响物体移动或要检测一个物件是否经过空间中的某个区域这时就可以用到触发器

  三:物体发生碰撞的必要条件?

  两个物体都必须带有碰撞器(Collider),其中一个物体还必须带有Rigidbody刚体,而且必须是运动的物体带有Rigidbody脚本才能检测到碰撞。

  四:请简述ArrayList和List的主要区别?

  ArrayList存在不安全类型(ArrayList会把所有插入其中的数据都当做Object来处理),装箱拆箱的操作(费时),List是泛型类,功能跟ArrayList相似,但不存在ArrayList所说的问题。

  五:如何安全的在不同工程间安全地迁移asset数据?三种方法

  1.将Assets目录和Library目录一起迁移

  2.导出包,export Package

  3.用unity自带的assets Server功能

  六:OnEnable、Awake、Start运行时的发生顺序?哪些可能在同一个对象周期中反复的发生

  Awake –>OnEnable->Start,OnEnable在同一周期中可以反复地发生。

  七:MeshRender中material和sharedmaterial的区别?

  修改sharedMaterial将改变所有物体使用这个材质的外观,并且也改变储存在工程里的材质设置。不推荐修改由sharedMaterial返回的材质。如果你想修改渲染器的材质,使用material替代。

  八:Unity提供了几种光源,分别是什么?

  四种。

  平行光:Directional Light

  点光源:Point Light

  聚光灯:Spot Light

  区域光源:Area Light

  九:简述一下对象池,你觉得在FPS里哪些东西适合使用对象池?

  对象池就存放需要被反复调用资源的一个空间,当一个对象回大量生成的时候如果每次都销毁创建会很费时间,通过对象池把暂时不用的对象放到一个池中(也就是一个集合),当下次要重新生成这个对象的时候先去池中查找一下是否有可用的对象,如果有的话就直接拿出来使用,不需要再创建,如果池中没有可用的对象,才需要重新创建,利用空间换时间来达到游戏的高速运行效果,在FPS游戏中要常被大量复制的对象包括子弹,敌人,粒子等

  十:CharacterController和Rigidbody的区别

  Rigidbody具有完全真实物理的特性,Unity中物理系统最基本的一个组件,包含了常用的物理特性,而CharacterController可以说是受限的的Rigidbody,具有一定的物理效果但不是完全真实的,是Unity为了使开发者能方便的开发第一人称视角的游戏而封装的一个组件。

相关文章

经典Unity面试题之Unity3D篇

简述StringBuilder和String、Heap与Stack的区别

学习unity3D之前,首先需要知道这些(二)

学习unity3D之前,首先需要知道这些(一)

UNITY3d在移动设备上的一些优化资源的方法

开班信息 更多>>

课程名称
全部学科
咨询

HTML5大前端

Java分布式开发

Python数据分析

Linux运维+云计算

全栈软件测试

大数据+数据智能

智能物联网+嵌入式

网络安全

全链路UI/UE设计

Unity游戏开发

新媒体短视频直播电商

影视剪辑包装

游戏原画

    在线咨询 免费试学 教程领取