跳转至内容

1

在线

677

用户

201

主题

520

帖子

中文社区

有关WebGPU引擎的技术分析与探讨,包括引擎设计,编辑器,GFX,Shader语言编译器,3D文件转换器等。

155 主题 394 帖子
  • 内存占用与闪屏

    2
    0 赞同
    2 帖子
    1k 浏览
    goodgaG

    @bestsam 我虽然没用orillusion 引擎,但引擎中也使用了webgpu, 跟 webgl 比, pipeline 和 bindgroup 资源管理有点闹心,尤其是bindgroup, 也就是vulkan 或dx中的描述符, 一旦涉及到场景中有动态更新的对象,这种东西在设计类软件中存在较多, 比如过程话的缩放对象(坐标轴、标注、、、)在屏幕空间中保持大下,会不断的创建描述符,但 webgpu 并没有提供手动回收的内存接口,导致内存占用越来越高,靠javascript gc 机制是不及时的,最后out of memory 就白屏了。管理好内存资源确实是挑战。

  • 0 赞同
    2 帖子
    527 浏览
    goodgaG

    @wslyx 我目前在已有的引擎上接入了 webgpu, 用wasm 的形式, 发现比webgl 会占用更多的内存,毕竟要自己创建和管理各种管线资源,尤其 pipeline 和 bindgroup 这些资源。开销主要集中在 wasm 与 js api 的调用上,如果不是利用webgpu 的多线程命令缓冲区的形式构建多线程渲染, 感觉还不如 webgl。 原生效率差多少就得看 dawn 是不是靠谱了。

  • Orillusion对gis的支持

    7
    0 赞同
    7 帖子
    1k 浏览
    B

    @aichangqing 只是还没计划吧,webgl对与cesium这种大型的gis引擎来说,简直就是慢性毒药啊,官方不可能不知道

  • Scene3D的removeChild

    12
    0 赞同
    12 帖子
    1k 浏览
    shuangliuS

    @jkwang007 0.6.2已修复removeChild相关bug

  • 0 赞同
    2 帖子
    341 浏览
    shuangliuS

    gltf生态非常复杂,有很多扩展,我们目前的gltf解析只支持一部分,一些模型当前版本可能无法解析,后续会慢慢支持相关扩展

    如果方便,您可以提供一下gltf模型,我们看一下具体问题,可以加快我们对gltf解析的开发工作

  • 如何绘制Line

    2
    0 赞同
    2 帖子
    945 浏览
    shuangliuS

    当然版本还没有加入 line,后续加入更多的geometry 类型

  • 点光源问题

    5
    0 赞同
    5 帖子
    1k 浏览
    shuangliuS

    最好能有个完整示例,这段代码单看是没问题,用法正确,但没有完整示例,无法验证xyz具体位置是否正确,从效果上看,可能是计算的位置不正确

  • 灯光不起作用

    2
    0 赞同
    2 帖子
    672 浏览
    shuangliuS

    请发一下代码,文档中使用的就是最新0.6.1的package,如果方便可以提供 Codepen 链接 https://codepen.io/pen?template=QWQrRmr

  • 正式版本什么时候能发布?

    1
    0 赞同
    1 帖子
    643 浏览
    尚无回复
  • 如何绘制Polygon

    1
    0 赞同
    1 帖子
    522 浏览
    尚无回复
  • 先体验一下,期待效果惊艳

    1
    0 赞同
    1 帖子
    536 浏览
    尚无回复
  • Engine初始化出错

    3
    0 赞同
    3 帖子
    976 浏览
    J

    谢谢大佬,竟然是因为不是localhost...

  • 修改背景报错

    2
    0 赞同
    2 帖子
    647 浏览
    shuangliuS

    @歘歘歘 loadLDRTexture 是一个异步函数,需要等待图片加载结果

    Engine3D.res.loadLDRTextureCube('/my.jpg').then(mg=>{ scene3D.envMap = mg })

    或者使用 async/await

    async setMap(){ let mg = await Engine3D.res.loadLDRTextureCube('/my.jpg') scene3D.envMap = mg } setMap()

    另外,在 0.6 版本中,想加载全景图,还需要设置 SkyRenderer:

    let scene = new Scene3D(); let mg = await Engine3D.res.loadLDRTextureCube('/my.jpg'); // 显示全景图 let sky = scene.addComponent(SkyRenderer) sky.map = mg; // 设置场景环境光 scene.envMap = mg;

    详情参考文档:全景立方贴图

  • 关于模型加载的问题

    3
    0 赞同
    3 帖子
    804 浏览
    sirbignianS

    这个问题是引擎内部bug,新版 0.6.1 已经解决

  • orillusion入门系列七 | 媒体扩展

    1
    0 赞同
    1 帖子
    482 浏览
    尚无回复
  • orillusion入门系列六 | 系统交互02

    1
    0 赞同
    1 帖子
    493 浏览
    尚无回复
  • GUIHelp没法使用

    2
    0 赞同
    2 帖子
    889 浏览
    king54346K

    我看到快速入门的教程了,但是为什么文档上没有写

  • 加载gltf与glb内存溢出

    1
    0 赞同
    1 帖子
    469 浏览
    尚无回复
  • 此主题已被删除!

    1
    0 赞同
    1 帖子
    10 浏览
    尚无回复
  • 不支持meshopt压缩

    1
    0 赞同
    1 帖子
    365 浏览
    尚无回复