我正在尝试构建一个MacOS应用程序,它创建一个OpenGL视图并将其嵌入webview作为它的元素(使用OpenGL而不是WebGL)。主要目标是使用Web(html / javascript)作为UI并使用OpenGL视图绘制结果。 (此外,OpenGL视图也将处理用户输入)
问题是webview和OpenGL视图之间的叠加。如果在webview之上的OpenGL视图,则可以通过OpenGL视图剪切webview UI(如:下拉框)。在OpenGL视图之上的webview,所有webview视图都将阻止OpenGL视图。
有没有解决方案可以解决这个问题? (OpenGL和Webview)
答案 0 :(得分:1)
WebKit有一个有趣的功能,您可以将webview与某些MIME类型关联到您自己的自定义NSView类。
在HTML网页视图中,您可以放置一个具有自定义mimetype的iframe(例如“application / my-custom-view”)。
之后,您可以从原生应用中致电:
[WebView registerViewClass:[MyCustomView class] representationClass:[MyCustomRepresentation class] forMIMEType:@"application/my-custom-view"];
MyCustomRepresentation可以非常轻量级,我的Representation类没有做任何事情,它只是定义了存根委托函数。