SpriteBuilder中的碰撞分类(Categories)和掩码(Masks)
来源:互联网 发布:攻守道 知乎 编辑:程序博客网 时间:2024/05/01 05:21
假如有2种对象player和触发器(trigger),当玩家进入到触发器区域时则由触发器对象通知所有注册过触发器通知的对象,然后由这些对象自行选择做一些事情,比如:阻碍player的前景,触发陷阱等等.
那么如何检测player是否进入触发器区域呢?这就需要player和trigger对象发生碰撞.但是等等,player对象不仅仅和触发器对象发生碰撞,还和边界(border)对象发生碰撞.
为了区分不同种类的对象是否发生碰撞,我们需要正确设置好对象的分类属性和掩码属性.
先看player对象,其分类为player,掩码设置为trigger,border和obstacle;因为player需要和trigger,边界和障碍物发生碰撞.
再看trigger对象,其分类为trigger,掩码设置为player;这意味着trigger只能和分类为player的对象发生碰撞(除非对象分类为空?),因为player已经在其masks中设置了trigger,并且trigger也在自身的masks中设置了player.
碰撞仅仅发生参与的两者相互的分类在对方的掩码中,或者当至少一个参与者的掩码区域为空(这表示该参与者masks包括所有的其他mask,意味着它将和所有其他对象碰撞).
0 0
- SpriteBuilder中的碰撞分类(Categories)和掩码(Masks)
- 分类categories动态添加方法和属性
- cocos2dx 3.x 物理引擎接触检测掩码、碰撞掩码和类别掩码问题解析
- Masks
- iOS分类和扩展(Categories和Extensions)
- iOS分类和扩展(Categories和Extensions)
- iOS分类和扩展(Categories和Extensions)
- iOS分类和扩展(Categories和Extensions)
- iOS分类和扩展(Categories和Extensions)
- iOS分类和扩展(Categories和Extensions)
- Categories和Poof软件图标隐藏分类教程
- ios分类(Categories)和类扩展(Extensions)的区别
- 识别有效的IP地址和掩码并进行分类
- OC的Categories(分类)
- OC的Categories(分类)
- 掩码、反掩码和通配符
- 如何缩放SpriteBuilder中的scene
- SpriteBuilder中的CCB Node尺寸
- 《赢在中国》观后感
- 功能测试用例
- 浅谈跨站攻击
- 三表联接查询
- 《构建之法》第十三章 软件测试
- SpriteBuilder中的碰撞分类(Categories)和掩码(Masks)
- 「Redis学习笔记」任务队列
- 【解决方法】ld: warning: directory not found for option
- Java 面向对象
- 「Redis学习笔记」优化空间
- javascript使用eventutil绑定事件
- *LeetCode-Basic Calculator II
- 事件分发器
- PHP漏洞全解(五)-SQL注入攻击