2009-06-22 7 views
0

Grüße Freunde,CoreAnimation Game - Hinzufügen eines Videofeeds als Hintergrund?

Ich versuche, das einfache 2D-Spiel zu überlagern, das ich auf einem Quicktime (.mov) Film entwickle. Ich habe keine Erfahrung damit (oder viel Spieleprogrammierung xp), also frage ich mich, ob jemand mit diesem Problem früher fertig werden musste und, wenn ja, wie sind Sie gegangen, um es zu lösen?

Ich habe in die QuickTime-API (QTKit) geschaut und es sieht vielversprechend aus, aber wenn es einen besseren Weg gibt - einen, der erweitert werden könnte, um Live-Videostreams zu unterstützen, wäre das WUNDERBAR.

Das Spiel verwendet CoreAnimation-Layer für Spielobjekte und hat derzeit ein Bild als Fensterhintergrund. Im Grunde genommen muss ich dieses Bild in einen Film verwandeln. Vielen Dank, ich schätze die Hilfe und Anregungen.

// < Mr. Buffalo > 

Antwort

0

Ich habe das irgendwann gestern herausgefunden. Ziemlich geradlinig eigentlich. Allerdings habe ich nicht in Streaming-Video sah noch ..

Application:

- (void) setupQTMovieLayer 
{ 
    // Get the movie and make it loop (my test canned video is short so I loop it) 
    QTMovie * movie = [QTMovie movieNamed:@"Sample.mov" error:nil]; 
    [movie setAttribute: [NSNumber numberWithBool:YES] forKey:QTMovieLoopsAttribute]; 

    // Create the movie on the (CALayer) backgroundLayer, make it sexy, and add it to our view atIndex:0 
    // note: backgroundLayer is a property of this class 
    backgroundLayer = [QTMovieLayer layerWithMovie:movie]; 
    backgroundLayer.masksToBounds = YES; 
    [[contentView layer] insertSublayer:backgroundLayer atIndex:0]; 

    // Goto the beginning and play the movie 
    [movie gotoBeginning]; 
    [movie play]; 
} 
0

Ich habe so etwas noch nie gemacht, aber schauen Sie in QTMovieLayer.

... wenn es einen besseren Weg gibt - einen, der erweitert werden könnte, um Live-Videostreams zu unterstützen, wäre das WUNDERBAR.

QuickTime unterstützt bereits Live-Streams. (Apple-Keynotes wurden früher gestreamt, bevor sie zu Podcasts über den iTunes Store wechselten.)