gpt4 book ai didi

iphone - 未调用 glkView drawInRect

转载 作者:技术小花猫 更新时间:2023-10-29 11:14:19 26 4
gpt4 key购买 nike

我正在学习 OpenGLES,我正在尝试将 GLKViewer 放入 UIViewController 中。

我知道我可以通过使用 GLViewController 来解决主要问题,但我正在努力学习如何以这种方式做到这一点。

我发现了这个问题,Nesting GLKView into UIViewControllerNested GLKView and GLKViewController但是即使我认为我正在执行所有正确的步骤,我也必须遗漏一些东西,因为当我运行我的项目时,我没有到达 drawInRect 打印行。

在 Storyboard 中,我将 ViewController 指向 glkview 组件的委托(delegate)。

我尽量保持代码简单,我们将不胜感激:

MyController.h

#import <Foundation/Foundation.h>
#import <GLKit/GLKit.h>

@interface MyGLController : UIViewController <GLKViewDelegate>
{
GLuint vertexBufferID;

}

@property (weak, nonatomic) IBOutlet GLKView *glview;

@property (strong, nonatomic) GLKBaseEffect *baseEffect;

@end

MyGLController.m

#import "MyGLController.h"

@implementation MyGLController

//@synthesize baseEffect;

-(void) viewDidLoad{
[super viewDidLoad];

self.glview.context = [[EAGLContext alloc] initWithAPI:
kEAGLRenderingAPIOpenGLES2];

[EAGLContext setCurrentContext:self.glview.context];
printf("View Loaded");
}


- (void)glkView:(GLKView *)view drawInRect:(CGRect)rect
{
printf("DrawInRect");
}

@end

* 更新 *

据我所知,glkview 已按照建议正确连接并添加了 josh-knapp 并调用了 setNeedsDisplay。

以防万一我遗漏了什么,我已经在此处上传了该项目的副本:https://github.com/jcrogel/OpenGLDebug.git

我完全是个菜鸟,所以我为任何愚蠢的疏忽道歉:)

最佳答案

你没有说你在 Storyboard中连接了 MyGLController 的 glview 属性,所以验证一下。

接下来,您将在加载后设置 glview 上下文。没有 GLKViewController,就没有什么可以告诉 glview 它需要被绘制。确保在设置上下文后在某处调用 [self.glview setNeedsDisplay]

关于iphone - 未调用 glkView drawInRect,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13347480/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com