打造趣味游戏:从物理攻击到粒子特效的实现
1. 用物理引擎攻击敌人
当前游戏缺少一些重要玩法元素,敌人不会攻击玩家,玩家也无法通过射击消灭敌人。下面将实现射击敌人使其从屏幕上被击飞的效果,这主要借助物理引擎,需对 PlayerNode 、 EnemyNode 和 GameScene 进行修改。
- 添加物理体 :
- EnemyNode.swift :在 init() 方法中添加 initPhysicsBody() 调用,然后实现该方法:
private func initPhysicsBody() {
let body = SKPhysicsBody(rectangleOf: CGSize(width: 40, height: 40))
body.affectedByGravity = false
body.categoryBitMask = EnemyCategory
body.contactTestBitMask = PlayerCategory | EnemyCategory
body.mass = 0.2
body.angularDamping = 0
body.linearDamping = 0
body.fieldBitMask = 0
physicsBody = body
}
游戏开发:物理与粒子特效实现
超级会员免费看
订阅专栏 解锁全文
1046

被折叠的 条评论
为什么被折叠?



