需求分析:用threejs开发的数字孪生模型, 但是通过webgl技术网页中使用,因为模型数据量大,加载比较慢,且需要和其他的业务系统进行网页嵌套和交互,使用云渲染技术形成的推流网址,如何与外部网页嵌套和交互?有可能会跨域
以上实时云渲染技术应用中询问比较多的,其实不论是webgl还是UE或者Unity 应用,推流后都可以和网布网页嵌套以及交互,我们分两种情况来明确。
- 云渲染推流后的网址中,如何和应用做实时交互。点量云流的实时渲染,不会改变程序原本的交互方式,原来在Webgl/UE/Unity中是如何和模型交互的,还是怎么交互。目前点量云流前端交互方式支持:鼠标键盘、触摸屏/板、游戏手柄、语音,基本涵盖了模型交互需要的方式。
- 对于一些可视化项目,云渲染推流的网址需要和其他的业务系统对嵌套对接,除了上文说的模型本身的推流网址交互外,还需要考虑和嵌套网页的交互。这又该如何实现呢?点量云流提供了详细的使用文档,具体可参考:WebGL应用或者普通Web应用集成示例代码(https://doc.dolit.cn/dolitcloudserver/data_channel_app_web):
// window.dlcaSend 和 window.dlcaReg 两个函数为云流化引擎内置的,在Web应用流化时自动定义,无需导入任何js文件。
// web 应用仅支持文本数据,如需二进制数据,可以base64编码下。
setInterval(()=>{
// 发送数据给云流化前端.
if(window.dlcaSend) {
window.dlcaSend("test")
}
},1000);
// 接收来自从云流化前端传过来的数据
if(window.dlcaReg) {
window.dlcaReg('on_message',(data)=>{
console.log("on data channel message:" + data);
});
}
以上是关于webgl应用云渲染推流后的网页嵌套和交互,如果是UE/Unity程序,也提供了详细的使用方法,因此对于实时渲染推理后的网址和外部网页嵌套以及交互,可以很方便的解决。