UNITY 2D学习笔记(一):Sprite

本篇用于记录UNITY的学习历程   引用尽量注明出处


初期搜到的一些资料:

Manual:

https://docs.unity3d.com/Manual/Unity2D.html 

Scripting API:

https://docs.unity3d.com/ScriptReference/index.html

官方脚本教程:

https://unity3d.com/cn/learn/tutorials/s/scripting 


Unity常用函数:

http://blog.csdn.net/wwwang89123/article/details/26507461

刚体(Rigidbody)、碰撞体(Colider)、触发器(Is Trigger):

http://blog.csdn.net/monzart7an/article/details/22739421


Layer:碰撞检测中的层

Sort Layer:渲染层


刚体(Rigidbody2D):个人理解具有物理属性(比如质量),以及接受物理作用(比如重力)的Component(组件)。

碰撞体(Collider):用于碰撞检测,定义物体形状等。

is Trigger:勾选后该物体变为触发器,不受碰撞影响改变物理状态。

碰撞事件产生条件:两者都为碰撞体,至少有一个为刚体


触发信息检测:

1.MonoBehaviour.OnTriggerEnter(Collider collider)当进入触发器

2.MonoBehaviour.OnTriggerExit(Collider collider)当退出触发器

3.MonoBehaviour.OnTriggerStay(Collider collider)当逗留触发器

碰撞信息检测:

1.MonoBehaviour.OnCollisionEnter(Collision collision) 当进入碰撞器

2.MonoBehaviour.OnCollisionExit(Collision collision) 当退出碰撞器

3.MonoBehaviour.OnCollisionStay(Collision collision)  当逗留碰撞器


Sprite类型 Sort layer: 需要在脚本里增加参数来设置。



2D物理(与3D不干扰,发生在Z=0处):


Rigidbody2D碰撞可以接受力和扭距

属性调整:


 



Rigidbodt2D.Collition Detection连续、离散碰撞检测:

(引用自贴吧)






Rigidbody2D.Interpolate/ex



Sleeping mode

Never Sleep

Start Awake:保证实体化时Rigidbody2D是唤醒状态

Start Asleep:初始化是为休眠,但可以被碰撞唤醒

(具体应用待补充)


Used by Effector


边缘碰撞体(edge collider)和多边形碰撞体(polygon)编辑时摁住ctrl可以删除顶点

Hinge Joint


Enable Collision:是否与被链接刚体碰撞

:锚点位置

被链接的锚点


Motor Speed:转动动力源的目标速度,单位是角度/s

Maximum Motor Force:为打到目标速度的最大扭距



Distance Joint


/False:距离不变



Spring Joint

弹性

玩家对弹簧的影响力


2D材质Material:


 

Area Effector:

方向

大小

大小+-n(随机数)

Drag 和Angular Drag会叠加到已经在Rigidbody2D上设置的Drag上,力施加到刚体的质心(?)


Point Effector:


不变

与距离平方成正比

Distance Scale:距离影响系数