2017-01-08 2 views
3

Je ne veux pas changer quoi que ce soit d'autre que le corps qui définit la forme d'un SKPhysicsBody. Comment puis-je faire cela?Modifier la forme du corps d'un SKPhysicsBody

Je n'arrive pas à trouver où je peux changer cela.

Ou même des commentaires sur la façon de le changer.

Oui, je sais que cela doit être fait avec soin, afin d'éviter toutes les nouvelles collisions, chevauchements, etc., mais mis à part, comment puis-je changer le corps d'un SKPhysicsBody?

+0

Comment créer ce corps physique particulier? Ou vous demandez en général? Mais, le corps physique peut être créé de différentes manières. De toute façon, vous allez changer sa forme si vous le recréer. – Whirlwind

+0

Je pense que l'objectif est de changer par exemple d'une forme rectangle PhysicsBody à physique shape circle circle –

+1

Vous ne pouvez pas, vous n'avez pas accès à la propriété 'path'. Tout ce que vous pouvez faire est de créer un nouveau corps et de copier ce qui est défini dans l'ancien – Knight0fDragon

Répondre

1

Vous pouvez créer manuellement une forme personnalisée pour un corps physique à l'aide de CGMutablePath, puis la transmettre au constructeur SKPhysicsBody.

Par exemple:

let path = CGMutablePath() 
path.move(to: CGPoint(.....)) 
path.addLine(to: CGPoint(.....)) 

let customPhysicsBody = SKPhysicsBody(edgeChainFrom: path) 
+0

Peut-il être passé, encore et encore, changeant ainsi la forme, ou est-ce qu'un nouveau corps physique est requis pour chaque nouvelle forme? – Confused

+0

Vous pouvez passer dans le même chemin pour créer autant de corps physiques que vous le souhaitez. Est-ce ce que vous demandez? – claassenApps

+0

Non. Je veux changer le corps utilisé par physicsBody. – Confused