如何在使用 Delphi XE5 开发应用程序时,在 Android 设备上创建 OpenGL 渲染上下文?
基本上我不知道从哪里开始。目前还没有 OpenGL 的示例。
我希望有以下内容:
一种事件(Panel.OnRender),可以提供现有的上下文,我可以在其中调用OpenGL。
通用的 TOpenGLSurface 控件,可以放置在窗体设计器中。
一种在运行时在主窗体上创建上下文的方法。
根据我的研究所得,TWindowManager.Render
具有访问 OpenGL 调用并使用它们来呈现弹出式窗口的功能。
编辑:将计时器添加到窗体并调用此过程会将屏幕填充为绿色,这意味着 GL 上下文已经存在:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
glClearColor(0, 1, 0, 0);
glClear(GL_DEPTH_BUFFER_BIT or GL_STENCIL_BUFFER_BIT or GL_COLOR_BUFFER_BIT);
eglSwapBuffers(TCustomAndroidContext.SharedDisplay, TCustomAndroidContext.SharedSurface);
end;
问题是如何正确处理它,因为在受控环境中定时器渲染绝对是一个坏主意。