CCVideoPlayer を使用してゲームでビデオを再生していますが、再生前に黒い画面が表示される原因となるわずかな遅延があります。ビデオをプリロードするか、この遅延をなくす方法で CCVideoPlayer をセットアップする方法はありますか? これが私がそれをどのように使用しているかです。起動時にロードシーンがあり、すべてのリソースがロードされたら、次のようにメインメニューに切り替えるように指示します:
[[CCDirector sharedDirector] replaceScene:[MainMenu scene]];
そして、これは私がメインメニューで映画を再生する方法です:
+(CCScene *) scene
{
CCScene *scene = [CCScene node];
MainMenu *layer = [MainMenu node];
[scene addChild: layer];
return scene;
}
- (id) init {
if( (self=[super init])) {
[CCVideoPlayer setDelegate: self];
}
return self;
}
- (void)onEnter{
[self playVideo];
}
[super onEnter];
}
-(void)onExit{
[super onExit];
}
- (void) playVideo {
[CCVideoPlayer playMovieWithFile: @"MenuBuild.m4v"];
}
- (void) movieStartsPlaying {
[[CCDirector sharedDirector] stopAnimation];
}
- (void) moviePlaybackFinished
{
[[CCDirector sharedDirector] startAnimation];
}
#ifdef __IPHONE_OS_VERSION_MAX_ALLOWED
// Updates orientation of CCVideoPlayer. Called from SharedSources/RootViewController.m
- (void) updateOrientationWithOrientation: (UIDeviceOrientation) newOrientation
{
[CCVideoPlayer updateOrientationWithOrientation:newOrientation ];
}
#endif
- (void) dealloc {
[CCVideoPlayer setDelegate: nil];
[super dealloc];
}
@end
黒い画面でわずかな遅延が発生するのではなく、すぐにビデオの再生を開始するためにできる別のことはありますか?