Egret社区
1银子
本帖最后由 Geshuffle 于 2019-8-12 11:03 编辑

324234.jpg
如图所示,我想实现的效果是:
    点击向上按钮,横杠向上移动,同时会扛着小球向上移动;
    点击向下按钮,横杠向下移动,同时会扛着小球向下移动;
    点击顺时针按钮,横杠以自己中心点旋转5度,横杠变斜杠,小球向右下转圈滚动;
    点击逆时针按钮,横杠以自己中心点旋转-5度,横杠变斜杠,小球向左下转圈滚动;
    横杠越斜,小球转圈滚动越快,反方向再点击按钮旋转时,小球滚动变慢或者 当横杠从斜着变横直时,小球就不滚动了;


参数如下:    world.step(1);
    圆球mass为10,横杠mass为20;
    向上、向下按钮长按代码为 boxBody.velocity = [0, -10] 和 boxBody.velocity = [0, 10];
    松开按钮代码为  boxBody.velocity = [0, 0];
    顺时针、逆时针按钮点击代码为  boxBody.angle = boxBody.angle + 5 * Math.PI / 180   和  boxBody.angle = boxBody.angle - 5 * Math.PI / 180;

唯一的问题,,玩的时间稍微长点,小球就卡在那里一动不动,只有横杠在动!!就这一个问题了




2341.jpg
分享到 :
0 人收藏

9 个回复

倒序浏览
技术友  圆转纯熟 | 2019-8-8 14:54:36
横杠是待检测的显示对象,(x, y)是待检测的点的位置。如果小球等于横杠发生碰撞,然后执行事件。
dbw  初窥堂奥 | 2019-8-8 15:34:13
参数是step方法执行的时间间隔,单位秒,通常取值为游戏帧频的倒数         
然后你旋转是直接改的角度吗   ,这样的话你两个刚体可能会瞬时发生挤压  所以会飞,你可以把那个旋转弄成缓动试试
你可以看看这个文章   http://www.dwenzhao.cn/profession/netbuild/egretp2.html
Geshuffle  登堂入室 | 2019-8-8 15:41:25
dbw 发表于 2019-8-8 15:34
参数是step方法执行的时间间隔,单位秒,通常取值为游戏帧频的倒数         
然后你旋转是直接改的角度吗   ...

对,是angle,很痛苦
Geshuffle  登堂入室 | 2019-8-8 16:31:34
dbw 发表于 2019-8-8 15:34
参数是step方法执行的时间间隔,单位秒,通常取值为游戏帧频的倒数         
然后你旋转是直接改的角度吗   ...

缓动是哪个?能方便说下单词吗,这个文档看过,比较老,很多都不对。
a18050123231  圆转纯熟 | 2019-8-8 17:52:10
Geshuffle 发表于 2019-8-8 16:31
缓动是哪个?能方便说下单词吗,这个文档看过,比较老,很多都不对。

Tween啊,使用Tween改变显示对象的角度,每次世界更新时间时把刚体角度同步为显示对象的角度
sunsnail  登堂入室 | 2019-8-9 16:59:10
你的小球质量太轻了可能
Geshuffle  登堂入室 | 2019-8-9 17:52:12
把横杠变宽后就不穿透了
Geshuffle  登堂入室 | 2019-8-9 17:54:44
dbw 发表于 2019-8-8 15:34
参数是step方法执行的时间间隔,单位秒,通常取值为游戏帧频的倒数         
然后你旋转是直接改的角度吗   ...

游戏帧频的倒数一般设置多少合适,,我如果设置1/60就太慢了,设置为1就很正常。。横杠加宽后玩起来好多了,问题是点击上、下、左转、右转 玩的多的话,小球就卡在那里不动了,,只有横杠在动
Geshuffle  登堂入室 | 2019-8-12 11:28:09
重新编辑了一下,上面有各个参数和方法设置,现在就一个问题了,玩的时间稍微长点,小球就卡在那里一动不动,只有横杠在动!!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|京网文[2014]0791-191号|京ICP证150115号|Egret社区 ( 京ICP备14025619号 )

Powered by Discuz! X3.4 © 2001-2019 Comsenz Inc.

返回顶部