iOS Sprite Kit + 입자 이미 터를 사용하는 게임을 만들고 있습니다. 그것은 내 시뮬레이터에서 완벽하게 잘 실행되지만, 내 아이폰 6 게임을 실행하면 슈퍼 느리고 지루한 및 나는 거의 그것을 상호 작용할 수 있습니다.iphone 6에서 입자 방출기가 천천히 느림
왜 시뮬레이터가 내 전화기와 다른지, 그리고 그것을 고치는 방법에 대한 제안? 정말 어떤 조언을 주셔서 감사합니다!
iOS Sprite Kit + 입자 이미 터를 사용하는 게임을 만들고 있습니다. 그것은 내 시뮬레이터에서 완벽하게 잘 실행되지만, 내 아이폰 6 게임을 실행하면 슈퍼 느리고 지루한 및 나는 거의 그것을 상호 작용할 수 있습니다.iphone 6에서 입자 방출기가 천천히 느림
왜 시뮬레이터가 내 전화기와 다른지, 그리고 그것을 고치는 방법에 대한 제안? 정말 어떤 조언을 주셔서 감사합니다!
동일한 현상이 발생합니다. 이상하게도 iPhone 5 및 iPad 성능이 뛰어납니다. 보통 60fps.
iPhone 6의 경우 0-2fps에서 시작하며 대개 여기에 있습니다. 때로는 20-30 초가 지나면 모든 것을 완전히 버퍼링하고 60fps를 얻습니다. 보통, 결코 거기에 가지 않습니다.
그래서 시뮬레이터와 실제 하드웨어의 차이 만은 아닙니다. iPhone 6 및 6+에 대해 매우 다른 (그리고 잘못 된) 것이 있습니다.
그런데 SKEmitterNodes를 코드로 작성하는 것이 유용하다는 것을 알았습니다. 다른 값을 시도하는 것이 빠르기 때문에 유용합니다. 여기에 유용한 방법이다 : 위의 코드에서
- (SKEmitterNode *)buildEmitterWithImageName:(NSString *)imagefile {
//instantiate explosion emitter
SKEmitterNode *explosion = [[SKEmitterNode alloc] init];
UIImage *image = [UIImage imageNamed:imagefile];
[explosion setParticleTexture:[SKTexture textureWithImage:image]];
[explosion setParticleColor:[UIColor whiteColor]];
[explosion setParticleBirthRate:2];
[explosion setNumParticlesToEmit:0];
[explosion setParticleLifetime:3];
[explosion setParticleLifetimeRange:1];
[explosion setParticlePositionRange:CGVectorMake(60, 40)];
[explosion setEmissionAngleRange:360];
[explosion setParticleSpeed:80];
[explosion setParticleSpeedRange:30];
[explosion setXAcceleration:0.05];
[explosion setYAcceleration:0.05];
[explosion setParticleAlpha:1.0];
[explosion setParticleAlphaRange:0];
[explosion setParticleAlphaSpeed:0];
[explosion setParticleScale:0.35];
[explosion setParticleScaleRange:0.2];
[explosion setParticleScaleSpeed:0];
[explosion setParticleRotation:0];
[explosion setParticleRotationRange:0];
[explosion setParticleRotationSpeed:0];
[explosion setParticleColorBlendFactor:0];
[explosion setParticleColorBlendFactorRange:0];
[explosion setParticleColorBlendFactorSpeed:0];
[explosion setParticleBlendMode:SKBlendModeAlpha];
return explosion;
}
, 나는 2의 출산율을 사용했는데 그것은 여전히 6
가 --------- 업데이트 아이폰에 대한 문제였다 새로운 정보 ----------
많은 앱에서 표준 탐색 컨트롤러를 사용하기 때문에 내 앱에는보기 컨트롤러가 두 개 이상 있습니다. 또한 일부 뷰 컨트롤러에는 자체 SKView 및 SKScene 인스턴스가 있습니다.
iPhone 5 및 iPad에서 문제가되지 않았지만 iPhone 6 및 6+에서는 살인자로 보입니다. 나는 내가 애니메이션을 만들려고했던 SKScene과 SKEmitterNode가있는 단일 VC로 응용 프로그램을 축소 한 실험을 수행했습니다. 갑자기 60fps에서 작동합니다.
참고로 저는이 장면에서 다른 예술 자산을 실행하는 4 개의 이미 터 노드를 가지고 있으며 매우 빠른 것입니다.
나는 단지 이것 때문에 앱을 다시 설계해야한다는 매우 짜증나게합니다.
코드를 게시하십시오. 일반적으로 그것은 반대로, 시뮬레이터가 느리다. – LearnCocos2D