开发者

Mirror iPhone on external display with cocos2d

I want to reproduce my iPhone display for demoing purposes. I've tried this and this, but both give me a black screen. Finally, I headed out to make my own solution. Here's what I have:

// Check for external screen.
if ([[UIScreen screens] count] > 1) {

    externalWindow = [[UIWindow alloc] initWithFr开发者_运维问答ame:[[UIScreen mainScreen] bounds]];


    // Internal display is 0, external is 1.
    externalScreen = [[[UIScreen screens] objectAtIndex:1] retain];

    screenModes = [externalScreen.availableModes retain];


    UIScreenMode *desiredMode = [screenModes objectAtIndex:0];
    externalScreen.currentMode = desiredMode;

    externalWindow.screen = externalScreen;

    [screenModes release];
    [externalScreen release];

    CGRect rect = CGRectZero;
    rect.size = desiredMode.size;
    externalWindow.frame = rect;
    externalWindow.clipsToBounds = YES;

    externalWindow.hidden = NO;
    [externalWindow makeKeyAndVisible];

    [externalWindow setUserInteractionEnabled:YES]; 
    [externalWindow setMultipleTouchEnabled:YES];


    //[[CCDirector sharedDirector] attachInView:externalWindow];    

Now, I can display on the external display or on my iPhone, but I can't display on both at the same time, because [[CCDirector sharedDirector] attachInView:externalWindow]; will only take one UIWindow. How can I get around this and/or get the displayed image and set it to my external display?

Thanks,

Dave


The only solution i see is to render your scene to a texture and render that texture twice as a full screen quad to the backbuffer, once for each UIWindow

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜