[LayaAir 2.0]关于绳子的缠绕和解开效果实现(不使用物理引擎)
## 关于绳子的缠绕和解开效果实现(不使用物理引擎)
*现在只实现了规则四边形的的缠绕和解开(已在项目中使用)*
**大概的思路:绳子在什么情况下会发生缠绕,什么情况会解开大概的思路:绳子在什么情况下会发生缠绕,什么情况会解开**
- 1,绳子在碰到一个突出的点(就是四边形的一个角时)会出现一个打弯的情况
- 2,当前这段绳子(包括开始点和结束点)和任何四边形没有接触,则出现解开情况
**基于以上这两点,开始准备相应的东西**
- 1,怎么指定发生碰撞?
- 2,怎么处理打弯后绳子效果?
- 3,怎么处理绳子解开效果?
*碰撞相关*:基于网格和直线的方式来检测碰撞,如果直线穿过了填充(需要一个编辑器去配置填充)的网格说明发生的碰撞
*绳子相关*:绳子是由一段一段的Section组成,当发生一个碰撞后,就会添加一个section,并把这个section设置成当前section,每次移动绳子时去检查,当前section是否还有碰撞,如果没有就触发解开绳子效果,删除当前section,并把上一次section设置为当前激活section
**有不对的地方请大佬指正**
**QQ交流群:1087682890**
*现在只实现了规则四边形的的缠绕和解开(已在项目中使用)*
**大概的思路:绳子在什么情况下会发生缠绕,什么情况会解开大概的思路:绳子在什么情况下会发生缠绕,什么情况会解开**
- 1,绳子在碰到一个突出的点(就是四边形的一个角时)会出现一个打弯的情况
- 2,当前这段绳子(包括开始点和结束点)和任何四边形没有接触,则出现解开情况
**基于以上这两点,开始准备相应的东西**
- 1,怎么指定发生碰撞?
- 2,怎么处理打弯后绳子效果?
- 3,怎么处理绳子解开效果?
*碰撞相关*:基于网格和直线的方式来检测碰撞,如果直线穿过了填充(需要一个编辑器去配置填充)的网格说明发生的碰撞
*绳子相关*:绳子是由一段一段的Section组成,当发生一个碰撞后,就会添加一个section,并把这个section设置成当前section,每次移动绳子时去检查,当前section是否还有碰撞,如果没有就触发解开绳子效果,删除当前section,并把上一次section设置为当前激活section
**有不对的地方请大佬指正**
**QQ交流群:1087682890**
没有找到相关结果
已邀请:
要回复问题请先登录
0 个回复