2016-03-09 2 views
2

Как установить радиус или диапазон попаданий узла, инициализированного текстурой - изображение? Конечно, я могу сделать это с увеличением его размера, но на самом деле я хочу сделать это без изменения размера изображения. Этот узел перемещается по экрану с небольшой скоростью. Вот мой код:Как увеличить диапазон попаданий узла?

monster.physicsBody = SKPhysicsBody(circleOfRadius: 50.0) 

Как обнаружить штрихи внутри тела физики? Я знаю, где это, у меня есть showPhysics. Пожалуйста, расскажите мне, как что-то сделать, когда я касаюсь этого круга тела физики. OfRadius: что угодно!

+1

ваша физика тела определяет хит, просто сделать что больше – Knight0fDragon

+0

Что вы подразумеваете под «результатом не изменено вообще»? Вы говорите, что физическое тело остается неизменным? Если это так, я не вижу, как это возможно. Поверните представление визуальной физики и посмотрите, что на самом деле происходит ... (skView.showsPhysics = true) – Whirlwind

+0

Ну, я имею в виду, что после установки SKPhysicsBody с кругом диапазон попадания не влияет. Он по-прежнему размером с размер узла! Таким образом, физический организм меняется, но диапазон ударов не делает. Другое дело, что после установки этого происходит странное: узлы движутся в правильном направлении, но они слишком быстро поднимаются и опускаются, даже не подозревая, почему это происходит. Свойство showPhysics помогло мне визуализировать картинку, спасибо за подсказку :) – xdevx32

ответ

3

Просто добавьте physicsBody и указать размер хитбокс:

self.physicsBody = SKPhysicsBody(rectangleOfSize: CGSize(width: 8, height: 8)) 

Вы также можете инициализировать его с круглой формой:

self.physicsBody = SKPhysicsBody(circleOfRadius: 8.0) 
+0

Это похоже на правильное и прямое решение, но после того, как я его протестировал, результат не изменился вообще. Я обновлю свой пост с кодом, который я использую для своих узлов. – xdevx32

+0

Хорошо, вы знаете, как обнаружить прикосновения внутри этого физического тела? – xdevx32

Смежные вопросы