一.物理系统
1.触发器
带有碰撞组件,IsTrigger被勾选上; 现象:无碰撞效果
触发的三个条件:
OnTriggerEnter(Collider collider) 触发进入 Collier 被触发对象的信息
OnTriggerStay() 触发等待
OnTriggerExit() 触发结束
2.关节
铰链关节 如门的合页效果
弹性关节 如模拟弹簧效果
固定关节 如模拟两个物体相互绑定
角色关节
可配置关节
布料
角色控制器
CharacterController.IsGrounded( bool ) : 判断是否接触到地面
CharacterController.Move() : 提供游戏对象的移动
角色控制器的消息机制 OnControllerCollierHit( ControllerCollierHit hit )
3.力的四种模式
Force 施加力 不忽略质量
Acceleration 加速度力 忽略了质量
Impulse 冲力 忽略了质量
VelocityChange 持续力 忽略了质量
二.射线
1.Ray
RaycastHit 返回被检测到的物体身上的信息
Physics.Raycast() layerMark 可以填写二进制 或者 填写给定的layer的字符串名称
Physics.Raycast(Vector3 origin, Vector3 direction, float maxDistance = Mathf.Infinity, int layerMask = DefaultRaycastLayers)
Debug.DrawLine() ;Debug.DrawRay() ; 实现的效果相同,可以将射线显示出来
2.二进制
按位运算符
& 与 相同则为真
| 或 一真则为真
^ 抑或 相同则为假
<< 左移 x<<n 相当于 结果在换成2进程的形式 高位舍弃,低位补零
>> 右移 x>>n 相当于 高位补零,低位舍弃
3.屏幕射线的应用
Camera.main 获取带有主相机标签MainCamera标签的相机
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);