前白:突然间的感想,开始自己的笔记记录,内容比较初级,目的也就是记录一下自己的学习旅程,路过的大佬希望手下留情。
需求:大概就是一个不断掉落小球,然后落在一个半圆里面
加个旁白:自己也是第一次使用物理引擎,有不足之处多指教
前文:P2的形状也就那么几个,要弄个半圆弧,没有直接能用的,只能自己去变通,弄个类半圆弧,看起来像是半圆就好了。这里用的就是p2.Heightfield这个类。具体如何实现看下面正文。
正文:开始代码部分了
var factor: number = GameUtil.factor;//GameUtil.factor = 50
var sh: number = (egret.MainContext.instance.stage.stageHeight) / factor;
var sw: number = (egret.MainContext.instance.stage.stageWidth) / factor;
// 创建物理世界
this.world = new p2.World();
this.world.sleepMode = p2.World.NO_SLEEPING;
// 设置弹力
this.world.defaultContactMaterial.restitution = 0;
// 创建地面刚体
var body:p2.Body = new p2.Body({