1

Я пытаюсь сделать игру о шарах и с помощью комплекта спрайтов с физическим телом для IOS 7. Моя проблема заключается в том, чтобы отдыхать при контакте/столкновении. Вот мой код в didBeginContact:Sprite Kit - Отдыхающий физический объект тела при правильной точке контакта с столкновением

[contact.bodyA setVelocity:CGVectorMake(0, 0)]; 
[contact.bodyB setVelocity:CGVectorMake(0, 0)]; 
contact.bodyA.resting = YES; 
contact.bodyB.resting = YES; 

На самом деле contact.bodyA уже отдыхает, но я просто установить его, чтобы убедиться, что оба объекта устанавливаются отдыха. Проблема в том, что шары не касаются друг друга, даже если я установил contact.bodyA(or B).resting = YES.

Это то, что я хочу:

http://i.stack.imgur.com/p8JTk.png

Это то, что происходит иногда:

http://i.stack.imgur.com/LWORO.png

Как вы можете видеть на втором снимке, синий шар немного далеко от другие шары. Есть ли другой способ повредить шар в точке контакта всегда?

ответ

0

Возможно, это может быть проблема с физическим телом. Я предполагаю, что вы используете [SKPhysicsBody bodyWithCircleOfRadius:spriteWidth/2]. Вы уверены, что ваше изображение спрайта соответствует размеру и соответствует w/радиусу, который вы кормите конструктором физического тела?

Может быть, вы могли бы сохранить положение объекта в свойстве prevPosition, и когда столкновение обнаружено, возвращает положение узла спрайтов в prevPosition и установить тело resting?
`

+0

Да, именно так я создаю SKPhysicsBody. Кроме того, я уверен, что изображение правильное и соответствует, потому что мячи правильно опираются, когда я нажимаю прямо на шар. Но когда я бросаю мяч через стену, зависит от угла, скорость шара увеличивается/умножается после удара стены (мне также нужно решить это, установив постоянную скорость как-то). После отскока от стены мяч идет намного быстрее, чем первое положение, и зависит от этой скорости, он отходит далеко от другого шара (ов). – Integer

+0

Я отредактировал в возможном решении – Monkeyanator

+0

Просто скажите, работает ли это решение, я считаю, что это общий метод. – Monkeyanator