2017-08-28 7 views
0

J'ai une simple application ARKit (en utilisant SceneKit) avec des cubes flottant dans l'espace que je photographie avec d'autres objets. J'ai créé le fichier .scnp avec le feu comme modèle et l'ai personnalisé pour ressembler à l'explosion.Swift: Comment définir la taille des effets de particules avec SCNParticleSystem?

Tout semble bon et fonctionne sur la collision, mais mon effet de particule entier prend tout l'écran. J'ai essayé toutes les propriétés disponibles sur le fichier .scnp mais la taille est encore énorme.

Comment puis-je régler la taille de la zone d'effet? Par exemple être légèrement plus grand que mes cubes (avec une largeur de 0.1 mètres).

Voici comment fonctionne l'explosion:

let fire = SCNParticleSystem(named: "explosion.scnp", inDirectory: nil) 

contactNode.addParticleSystem(fire!) 

contactNode est mon cube cible.

Répondre

1

La propriété du système de particules que vous recherchez est particleSize. (Il y a une commande pour régler cette propriété dans l'éditeur GUI système de particules Xcode, mais j'oublier ce qu'il est étiqueté ...)

Les documents pour cette propriété disent:

La taille de rendu, en unités de l'espace de coordonnées du monde de la scène, de l'image de la particule.

Dans ARKit, les unités de scène sont les mêmes que les compteurs réels. Donc, alors qu'une taille de particule de, disons, 10x10 pourrait avoir du sens dans une scène arbitraire, dans AR qui fait de chaque particule la taille d'une maison. Vous voulez probablement des valeurs quelque part dans l'échelle de millimètres à centimètres (0.001 - 0.01).

+0

Merci, c'était en fait l'une des premières choses que j'ai essayées. Cela a fonctionné un peu - les particules étaient plus petites mais l'effet a complètement changé (au lieu d'une explosion, j'ai eu quelque chose comme de l'éclat). Je l'ai résolu par essais et erreurs à la fin en changeant toutes les valeurs possibles :-) – Filip

+0

Oui, * toutes * les dimensions géométriques qui configurent un système de particules sont basées sur les compteurs (taille, vitesse, etc.), donc malheureusement il n'y a pas de façon de configurer un système de particules une fois, puis mettre à l'échelle l'ensemble. – rickster