您现在的位置是:首页 > 文章详情

Verge3D 3.3 for Blender 发布

日期:2020-07-28点击:609

发布时间:2020年7月27日
下载地址:https://verge3d.funjoy.tech/get-verge3d

作为面向艺术家与设计师的WebGL开发套件,Verge3D一直在可用性和易用性角度做出改进与升级。

Verge3D 3.3 版显著加快了应用的加载速度及整体性能,引入了用拼图将Verge3D场景导出为glTF格式的方式,并实现了动态画布纹理。此版本还增加了一些新的拼图,改进了导出器插件的一致性,支持了Woocommerce的全局产品属性。请从下文中了解更多新增特性与性能改进。

加载速度

基于用户的关注,此版本我们将优化的重心放在优化加载效率方向。着色器编译通常是加载过程中的瓶颈,经过新版本对此执行的一系列优化,场景的加载速度有了显著地提升(部分场景可达3倍)。

loading-time-optimization2.jpg

这些优化措施包括:

  • 引入了并行着色器编译,(在着色器逐个编译之前)若存在KHR_parallel_shader_compile WebGL扩展,编译将更高效;
  • 优化了代表环境光的着色器;
  • 优化了与实时阴影有关的着色器;
  • 优化了材质着色器;
  • 重组了加载流程,整个加载过程更为平滑和快速;

其中一些优化嗨提高了Verge3D的渲染性能,尤其是在低端硬件或移动设备上。

glTF导出

现在可以以glTF格式导出对象、对象组或整个场景,可用.gltf或.glb(二进制)两种格式。

此拼图可用于保存应用中的配置好的物体。

为了获得最佳效果,以及创建可由第三方glTF查看器(如Microsoft Windows 10的默认glTF查看器)打开的标准glTF文件(不带Soft8Soft/Verge3D扩展名),我们建议您使用与glTF兼容的材质

摄影机补间轨迹

您现在可以在**tween camera(摄影机补间)**拼图中选择球形轨迹了。球形轨迹意味着摄影机将围绕中心轴,以插值距离作为半径,旋转到新位置。

当新的视点位于模型后面时,此功能尤其有用。对于轨道摄影机,球面轨迹更为自然,可以防止摄影机在移动途中与模型发生交叉现象。

另外,tween camera(摄影机补间)拼图现在可以使用附近物体的坐标,坐标可以用列表或向量方式提供给拼图。

画布纹理

HTML画布现在可以作为材质纹理使用了。可以使用新引入的HTML拼图create canvas elem来创建<canvas>元素,并如之前一样为材质指定纹理,即使用replace texture(替换纹理)拼图。

一旦创建好,画布即可通过JavaScript进行绘制。您可以在以应用名开头的js文件(your_app_name.js)的runCode() 功能更新画布。为此,请在此处使用拼图中指定的ID来检索画布纹理:

 var canvasTex = v3d.puzzles.canvasTextures['my_canvas']; 

之后,您可以按如下方式访问HTML画布元素:

 var canvas = canvasTex.image; 

您可以使用可用于在HTML画布上绘制的标准方法。例如,如下代码即在白色背景上画了一个蓝色的笑脸:

 var ctx = canvas.getContext("2d"); ctx.fillStyle = 'white'; ctx.strokeStyle = 'blue'; ctx.fillRect(0, 0, canvas.width, canvas.height); ctx.beginPath(); ctx.arc(75, 75, 50, 0, Math.PI * 2, true); // Outer circle ctx.moveTo(110, 75); ctx.arc(75, 75, 35, 0, Math.PI, false); // Mouth (clockwise) ctx.moveTo(65, 65); ctx.arc(60, 65, 5, 0, Math.PI * 2, true); // Left eye ctx.moveTo(95, 65); ctx.arc(90, 65, 5, 0, Math.PI * 2, true); // Right eye ctx.stroke(); 

最后,如果您希望更新在3D渲染中立即可见,则应该将画布纹理标记为动态:

 canvasTex.needsUpdate = true; 

Blender集成

为更新相关文档,我们审查了所有的Eevee节点,并修复了其中发现的一些问题:

  • 修复了Glass BSDF(玻璃BSDF)节点阴影的一些小问题。
  • Hue/Saturation(色相/饱和度)节点现在可以在设置 >1 或 <0 时正常工作。
  • Mapping(映射)节点现在支持非均匀比例。
  • Clamp(节点)Min(最小值)超过Max(最大值)时也可以正常运行。

当缺少世界材质时,保持灯光与场景中的设置一致。

Point(点光)Spot(聚光)灯光中支持了Custom Distance(自定义距离) 参数。

修复了曲线对象缺少材质时导致的导出器崩溃问题。

为以下节点优化了着色器代码:Diffuse BSDF, Glossy BSDF, Glass BSDF, Translucent BSDF, 和Refraction BSDF. 这样有助于提升整体性能并加快加载速度(见上文描述)。

 

拼图

将拼图库中的Misc(杂项)类重命名为了Advanced(高级),并在此类中新增wait promisepromise value拼图。

可以使用这些拼图取回来自JavaScript promises 中检索的数据,这些数据由generate normal map(生成法线贴图)export glTF(导出glTF)拼图返回。

部署了新的Material(材质)拼图:get color(获取颜色)get value(获取值)与先前可用的set color(设置颜色)set value(设置值)拼图在一起提供。

拼图get object transform(获取对象位移)现在可以使用列表同时检索三个坐标系信息。

这个选项可以用于直接为矢量拼图提供输出。

 

 

 

JavaScript

现在在JavaScript方法 Geometry.fromBufferGeometry() 中可以正常使用顶点色了。

新版提供了之前仅在企业版中提供的Verge3D运行时(run-time)变体v3d.module.js。这一方式修复了运行示例代码时遇到的大部分问题。

如果需要在JavaScript代码中导入声明,,可以使用此运行时。这个模块也简化了您在自己的编程项目中嵌入Verge3D代码的过程。

 

其他改进

在Verge3D WordPress插件中支持了WooCommerce的全局产品属性。

为3.2版本中引入的高级代码合并功能做了进一步的改进、加速和稳定性优化。

为引擎着色器代码做了一些代码清理和重构。

在稳定中做了各种小的改进,包括修复失效链接、缺失的媒体文件等。

 

故障修复

修复了应用管理器中与应用更新功能相关的一些错误,同时提高了更新的稳定性。

修复了退出应用时的内存泄漏错误。

修复了论坛中上报使用JavaScript为对象指定自定义材质时的崩溃问题

修复了论坛中上报的create environment(创建环境)拼图出现的翻转问题

原文链接:https://www.oschina.net/news/117525/verge3d-3-3-for-blender-released
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章