资源描述
Unity
1. u3d用u3d实现2d游戏,有几种方式?
1.利用引擎自带的GUI
2.把摄像机设为Orthographic,用面片作为2d元素
3.利用第三方插件:NGUI、2dToolkit
2. u3d物体发生碰撞时,有几个阶段,分别对应的函数
三个阶段,OnCollisionEnter/Stay/Exit()函数
3.u3d提供了一个用于保存读取数据的类,(playerPrefs),请列出保存读取整形数据的函数
PlayerPrefs.SetInt(string, int) 与 PlayerPrefs.GetInt(string)
4.unity3d从唤醒到销毁有一段生命周期,请列出系统自己调用的几个重要方法(按执行顺序书写至少五个)。
Awake –>OnEnable –> Start –> Update –> FixedUpdate –> LateUpdate –> OnGUI –> OnDisable –> OnDestroy
5.u3d下如何安全的在不同工程迁移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(一张普通的图片)
Sliced Sprite(一个含有9个切片的Sprite,创建固定边框的拉伸控件最佳选择)
Tiled Sprite(一个Sprite缩放填充整个区域,即平铺)
Filled Sprite(一个Sprite有一个参数来控制哪些是可见的,常被用来做进度条或者技能CD)
4 NGUI:NGUI的控件A上脚本里的方法OnClick()、OnPressed()的触发原理是什么?控件有什么比较条件才能被触发这些方法?
UICamera每帧从鼠标的位置向场景打射线,遇到有Collidier的控件后,根据鼠标的操作(悬浮、点击、按下、松开等)向控件A上调用gameObject.SendMessage(funcName)触发。控件必须有碰撞盒Collider并且大小不为0脚本才可以被触发。
展开阅读全文