技术大大们求解答

我对Cocos Creator编辑器中的渲染视口(预览窗口)的实现比较好奇,是用webgl自己渲染还是用的原生的窗口嵌入到编辑器中做展示的呀?

一般都是嵌入了个html 做预览吧, 和你本地运行html是一样的,这样兼容性比较好

但是我看

这里有做原生窗口嵌入到编辑器的操作,就不太确定是哪里用到了

native 实现早就被放弃了,现在是用的electron 的webview实现的。

https://www.electronjs.org/docs/latest/api/webview-tag

这也是为什么编辑器预览不支持在vscode里面调试,只能打开一个chrome dev的根本原因。

具体你可以在编辑器里面打开开发者模式看到的

套个iframe/webview ?
或者渲染到纹理,预览窗口就是个帧缓冲“图片”,但需要额外处理事件。
应该用的和编辑器同一个绘制窗口,原生窗口太麻烦了。

他是两个webview 交替使用。一个是 编辑器编辑场景的 webview,一个是 预览窗口的 webview