73 lines
1010 B
C
73 lines
1010 B
C
|
#import "GLView.h"
|
||
|
#import "GLViewController.h"
|
||
|
|
||
|
#import <Foundation/Foundation.h>
|
||
|
|
||
|
#include <kinc/graphics5/rendertarget.h>
|
||
|
#include <kinc/math/core.h>
|
||
|
|
||
|
#include <objc/runtime.h>
|
||
|
|
||
|
static GLView *glView;
|
||
|
|
||
|
static bool visible;
|
||
|
|
||
|
void beginGL(void) {
|
||
|
#ifdef KINC_METAL
|
||
|
if (!visible) {
|
||
|
return;
|
||
|
}
|
||
|
#endif
|
||
|
[glView begin];
|
||
|
}
|
||
|
|
||
|
void endGL(void) {
|
||
|
#ifdef KINC_METAL
|
||
|
if (!visible) {
|
||
|
return;
|
||
|
}
|
||
|
#endif
|
||
|
[glView end];
|
||
|
}
|
||
|
|
||
|
void showKeyboard(void) {
|
||
|
[glView showKeyboard];
|
||
|
}
|
||
|
|
||
|
void hideKeyboard(void) {
|
||
|
[glView hideKeyboard];
|
||
|
}
|
||
|
|
||
|
#ifdef KINC_METAL
|
||
|
|
||
|
CAMetalLayer *getMetalLayer(void) {
|
||
|
return [glView metalLayer];
|
||
|
}
|
||
|
|
||
|
id getMetalDevice(void) {
|
||
|
return [glView metalDevice];
|
||
|
}
|
||
|
|
||
|
id getMetalLibrary(void) {
|
||
|
return [glView metalLibrary];
|
||
|
}
|
||
|
|
||
|
id getMetalQueue(void) {
|
||
|
return [glView metalQueue];
|
||
|
}
|
||
|
|
||
|
#endif
|
||
|
|
||
|
@implementation GLViewController
|
||
|
|
||
|
- (void)loadView {
|
||
|
visible = true;
|
||
|
self.view = glView = [[GLView alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
|
||
|
}
|
||
|
|
||
|
- (void)setVisible:(BOOL)value {
|
||
|
visible = value;
|
||
|
}
|
||
|
|
||
|
@end
|