В определенные моменты игры я хочу, чтобы на экран падала тонна мячей. Как только они упадут на землю и немного подпрыгнут, я хочу, чтобы они просто сидели там, и им больше не нужно было двигаться.
Как только я доберусь до 200 физических тел, игра станет очень медленной, поэтому я хотел бы уничтожить тела. Вот что я пытался в своем коде:
-(void)didBeginContact:(SKPhysicsContact *)contact {
if (contact.contactPoint.y < 150) {
if (contact.bodyA.categoryBitMask == MYPhysicsCategoryBall) {
NSLog(@"body a is ball");
contact.bodyA = nil;
}
if (contact.bodyB.categoryBitMask == MYPhysicsCategoryBall) {
NSLog(@"body b is a weapon");
}
}
Это не работает, потому что contact.bodyA и contact.bodyB оба доступны только для чтения, поэтому я должен это исправить, но кроме этого, просто установив фактическое физическое тело на nil, уничтожит его и заставит физический симулятор работать быстрее? Или есть лучший способ исправить падение производительности? Я хочу иметь возможность добавить более 200 мячей, может быть, 500 или 600.