遇到一个朋友,你来就行的朋友,我过去了,管吃管住,这样的朋友真的很难求。
最近离职了,很难想象,一份策划书一天能给你改n次,一周能郁闷,上一个功能没搞完,让你搞下一个功能。
于是去散心了,三亚确实很美。
**************************************************************************************************************
//1、官方定义 刚体是组成物理世界的基本对象,可以将刚体想象成一个你不能看到(绘制)也不能摸到(碰撞)的且不能变形的物体。
//也就是在物理世界中,发生的各种物理运动,比如碰撞、受力等情况下,形状不会发生改变。
//分类: 静态 运动学【变换信息操控】 动力学【改变物理数值】
//项目设置--->物理---> y -10 这个重力加速度
//是否允许休眠 刚体休眠状态下,不参加运算,被动唤醒后,才会加入运算。
//进入休眠的默认速度临界值 休眠状态下 线性速度与角速度趋近于0[毕竟是浮点值]
//是否开启自动模拟 物理世界中的各种变化将会被迭代
//每步模拟消耗的固定时间 fixedUpdate?cocos没这个周期函数 大概是修正不同帧率的下的每一次迭代时间间隔的
//每步模拟的最大子步数 不懂就默认
//碰撞矩阵 竖着的是分组 横的是掩码 分组就是: 1<<index 掩码看不懂,咱看分组就行
//2、物理碰撞器+碰撞组件
//Physic 与 Physic2D 物理碰撞器
//Collider
//Material:Collider上可以绑定物理材质
//点击资源管理器,右键创建物理材质PhysicsMaterial
//Is Trigger 只有碰撞检测,没有物理上的一些运动,就是直接穿透,常用做传送门、掉落道具、开关等
//性能上 圆形、球体大于其它的【可能会有穿透,需要各种代码的加成去避免被穿透】
//3、RigidBody 我没找到如何对范围的编辑哎
//现在的分组信息是加在刚体上的,所以单独的碰撞器就不要想那些分组计算了
// 静态
// 运动学【变换信息操控】重力、线性速度与角速度,弹力等需要物理材质支持
// 动力学【改变物理数值】通过代码改变状态,修改Transform
//遇到一个问题,我创建的物理材质没起作用,不知道是哪里没设置,还是什么情况
//dynamic 类型也没改错 测试效果都有
private cubebody: RigidBody = null!;
//测试一下3D下的刚体属性
start() {
this.cubebody = this.node.getComponent(RigidBody);
//力 牛顿 F Ft Fs
this.cubebody.applyForce(v3(3, 0, 0));
//m/s
this.cubebody.setLinearVelocity(v3(3, 0, 0));
//围绕那个轴旋转 单位是弧度 Math.PI
this.cubebody.setAngularVelocity(v3(0, 45, 0));
}
//模仿fixedUpdate
//固定帧计时
private _now_time = 0;
//固定帧时间
private frameTime = 0.016;
update(deltaTime: number) {
this._now_time += deltaTime;
while (this._now_time >= this.frameTime) {
//迭代逻辑
this.childUpdate(this.frameTime);
this._now_time -= this.frameTime;
}
}
childUpdate(deltaTime: number) {
}