学习过程中遇到的一些小笔记,不对的地方帮忙指正一下,拜托了
触发器(trigger)物体通过时直接穿过collider:
关于OnTrigger的方法:
OnTriggerEnter:进入触发器
OnTriggerExit:离开触发器
OnTrigerStay; 处于触发器里面
用法: void OnTriggerEnter(collider other)// other 是一个碰撞器的引用,用other.tag来识别collider
冲突器 (默认的Collider)物体会与之发生碰撞:
OnCollisionEnter:物体与之发生接触
用法: void OnCollsionEnter(collision other)// other是一个碰撞器的引用,用other.gameObject.tag来识别collider
qual上显示透明的texture,方法:
无论texture的Texture Type如何,在材质的着色器模式(Rendering Mode)上选择除了Opaque(不透明)模式以外的模式。
同一个GameObject上多个声音文件的播放控制,在脚本里声明(AudioSource)引用,然后调用 对象.Play() 方法激活audio。
可以使用游戏状态来控制有效声音的播放,避免重复播放。
在创建ImageUI时必须将texture的Texture Tpye改为 Sprite(2D&UI) 格式
关于UI使用:
Image:
创建一个Image后,在Rect Transform 的center位置修改Image的位置,按住alt键可以直接选择Image在屏幕上的位置。
自适屏: 把Image锚点的四个角移动到图片的四个角上。
Text;
自适屏: 在Text组件里勾选best fit(可以随着屏幕的大小自动改变字体的大小),将锚点的位置固定到text的四个角上。(字体必须是dynamic的)
unity5.0 UI 笔记:
创建UI引用,必须引用 UnityEngine.UI 库 ,才能创建Text 或者 Image 的类型,使用 GameObject.Find("").GetComponent<类型>() 来给
这个引用赋值。
unity5.0 数据存放:
简单数据存放,使用PlayerFerbs.GetInt("key",默认值) 在这之前不用去拿SetInt 声明,这个函数已经给Key键添加了默认值了
而SetInt的用法只是拿来改变key键里面的值。
性能监视器(profiler):用于监视程序在运行的时候各个硬件的使用情况包括(cpu,声卡,内存)
在一个物体的脚本上调用该物体上的另一个脚本里的属性:
tagr=this.GetComponent<register>().primary; //调用物体上register脚本里的primary属性(public)
给物体动态的添加指定脚本:
物体名.gameObject.Addcomponent(typeof(需要添加的脚本名字));
给物体动态的添加预制组件:
物体名.gameObject.Addcomponent<组件名>(); 列如: child.gameObject.Addcomponent<Rigidbody>(); //给child物体添加Rigidbody组件
关于UI特效层,UI层的事件被影响的解决方案:
采用给特效对象添加一个画布(Canvas) ,让特效对象在这个Canvas上绘制,然后改变Canvas的渲染顺序,让特效层的渲染次序高于UI(事件)层,就可以让特效层显示在事件层的上方
!!!!!!!!!注意:(1) UI(事件)层的Canvas对象里的Render mode 必须是screen space-camera
(2) 给特效层添加的Canvas里的overrideSorting 属性必须为true ,才能给特效层设置 渲染顺序属性(sortingOrder)
(3) Canvas的渲染顺序是从int数,数字越小,越先渲染