5

W Cocos2d Obecnie ma bardzo prostą emiter cząstek zainicjowany tak:Cocos2d - emiter cząstek śledzić zamiast pozostania w pozycji zostały dopuszczone

turnEmitter = [[CCParticleFlower alloc] init]; 
    turnEmitter.texture = [[CCTextureCache sharedTextureCache] addImage:@"Pocket.png"]; 
    [self addChild:turnEmitter z:1]; 
    turnEmitter.scale = 0.7f; 
    turnEmitter.positionType = kCCPositionTypeFree; 

Jest to po prostu dodaje się bezpośrednio do warstwy gry.

Ten nadajnik następuje ikonki wokół ekranu w ten sposób (dzieje się w sposób aktualizacji)

turnEmitter.position = turnEmblem.position; 

Obecnie problemem jest to, że ogon cząstek pozostawione ruchów emitera z emiterem zamiast uwolnione cząsteczki po prostu pozostały w pozycji, w której zostały wypuszczone, co daje naprawdę dziwny i głupi efekt.

Co chcę zrobić, to mieć cząstki nie śledzić emiter w ogóle po ich zrodził, niestety nie udało mi się znaleźć żadnego sposobu robić.

Jak widać z kodu powyżej już przeszukany wokół i znalazł ludzi, co sugeruje, zmieniając positionType własność emitera, chociaż próbowałem wszystkie możliwości i nie rozwiązuje problemu.

Czy ktoś ma jakieś pomysły, co to może być?

+0

„który daje naprawdę dziwne i głupie patrząc efekt” lol –

+1

jesteś na właściwej drodze, zmieniając positionType powinno rozwiązać problem, co najmniej jeden z positionTypes powinien. Czy na pewno wypróbowałeś wszystkie opcje i przetestowałeś każdy z nich? – LearnCocos2D

+0

Hej :) Tak, jestem prawie pewien, że próbowałem użyć wszystkich możliwych opcji. Niestety nie jestem w stanie tego wypróbować, ale później. Opowiem o dokładnie właściwościach, które wypróbowałem. Dziękuję za poświęcenie czasu na pomoc! – CodingBeagle

Odpowiedz

8

Możesz spróbować zmienić „emitterMode” oraz do „kCCPositionTypeFree”. Miałem podobny problem, gdy miałem emiter jako dziecko CCNode. Węzeł CCNode był obracany, ale cząsteczki i emiter nie. W ten sam sposób wyglądał głupio, ponieważ złudzenie rotacji zostało zrujnowane. Muszę ustawić następujące w moim emitera:

emitter.emitterMode = kCCPositionTypeRelative; 
emitter.positionType = kCCPositionTypeRelative; 
+1

emitermode nie ma tu nic do roboty. Powinien być ustawiony na tryb grawitacyjny lub tryb promienia. – zeroliu

Powiązane problemy