forked from LeenkxTeam/LNXSDK
		
	
		
			
	
	
		
			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
							 |