当前位置: 首页 > Web前端 > HTML5

关于webgl的大规模应用

时间:2023-04-04 23:46:49 HTML5

概述最近公司在做一个webgl的大规模应用,总结如下:1.建模软件建模(3dMaxrevit)2.自定义一套语义模型formatsandwritemodelformats转换插件将建模软件的模型格式转换成自定义格式。为什么要自定义语义模型格式?因为,现在浏览器的性能很尴尬,不管好不好,都不差。必须优化!例如:模型包含描述数据,指的是这个单个模型的长宽高等自定义数据,这些数据往往比较大,每个小模型都有,所以加载到是不可能的浏览器连同模型。然后有必要将模型数据与几何数据分开。模型数据存入数据库,保留几何数据,并做一定的优化,比如只存原始几何的基本信息,通过变换得到相似的几何(很多场景下,有很多相同的cuboids,模型格式只能存一个,其他的3.浏览器性能有限,无法直接加载过大的模型文件。(太大了,用户无法忍受全部加载时间。)你得自己写一个裁剪模型的小工具,把大模型一个一个裁剪成小块,小模型,按需加载,或者分布式。4.写presentation交互操作的包装layertowebgl,推荐库Three.jsbabylon.jscannon.jsxeogl.js各有千秋,这里不再赘述。5.后台提供了一个api,可以点击某个模型返回对应的模型数据。在总结一下,webgl的应用是1.webgl表现层封装了基本的交互操作等2.webgl服务层1).提供用户上传的模型2)。自动转换模型并将模型数据与几何数据分离3).将模型切割成小模型4).提供apitodoList1。完成webglserver2.完善webgl表现层的各种交互操作。这是我暂时想到的。自己写的一个小demo,会慢慢完善。..https://github.com/shinseed/T...使用1.npminstall||yarninstall2.npmrundev3.超级玛丽模式操作w,a,s,d空间(只做向下碰撞检测)SloceJson使用1.model文件夹作为原始模型文件2.输出切割后的模型文件3.终端进入目录节点sliceJson.js文档目录1.src源码2.sliceJson将大模型文件切割成小模型3.static静态资源4.configwebpack配置