Was ist der Mindeststandardcode, der zum Erstellen einer OpenGL-Ansicht (mit den erforderlichen Projektionen, Kamerawinkeln usw.) zum Zeichnen eines 2D-Spiels erforderlich ist?Was ist der Mindeststandardcode für eine OpenGL 2D-Ansicht?
Zum Beispiel benötigt die minimale Quartz 2D-Zeichnung in einer benutzerdefinierten Ansicht zu tun (und, sagen wir, ein Hintergrundbild geladen werden) ist die folgende:
#import <Cocoa/Cocoa.h>
@interface MyView : NSView {
}
@end
= = =
#import "MyView.h"
@implementation MyView
- (id)initWithFrame:(NSRect)frame {
self = [super initWithFrame:frame];
return self;
}
- (void)drawRect:(NSRect)rect {
CGContextRef myContext = [[NSGraphicsContext currentContext] graphicsPort];
CGRect frame = CGRectMake(bounds.origin.x, bounds.origin.y, bounds.size.width, bounds.size.height);
CFBundleRef mainBundle = CFBundleGetMainBundle();
CFURLRef url = CFBundleCopyResourceURL(mainBundle, CFSTR("background"), CFSTR("png"), NULL);
CGDataProviderRef provider = CGDataProviderCreateWithURL (url);
CGImageRef image = CGImageCreateWithPNGDataProvider (provider, NULL, true, kCGRenderingIntentDefault);
CGDataProviderRelease (provider);
CGContextDrawImage (myContext, frame, image);
CGImageRelease (image);
//rest of drawing code here...
}
@end
Würde sich irgendetwas im Standardcode für Open GS ES auf dem iPhone anders als in Open GL auf einem Mac befinden?
Oh, und bitte keine Empfehlungen für Spielebibliotheken, cocos2D et al. Ich möchte eine Antwort, die nur auf OpenGL basiert. – Hejazzman