Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

栏目: 编程工具 · 发布时间: 5年前

内容简介:经过潜心月余持续对预发行版的改进,现在我们正式为大家发布Verge3D 2.10 for Blender/3ds Max!这个版本中,我们增加了许多新特性:试验性VR支持,自动更新应用程序,部署第一人称控制,增加动态加载拼图,截图,通过网络发送接收数据,增加对一些Max新贴图的支持,增加对Blender EEVEE节点的支持等等。在最新版中我们引入了实验性VR支持,即开发中的浏览器技术WebXR(Web上的eXtended Reality),它允许创建增强现实(AR)和虚拟现实(VR)在线体验。目前在Web

Verge3D 2.10 Blender/3ds Max 发布

经过潜心月余持续对预发行版的改进,现在我们正式为大家发布Verge3D 2.10 for Blender/3ds Max!这个版本中,我们增加了许多新特性:试验性VR支持,自动更新应用程序,部署第一人称控制,增加动态加载拼图,截图,通过网络发送接收数据,增加对一些Max新贴图的支持,增加对Blender EEVEE节点的支持等等。

Virtual Reality - 虚拟现实

在最新版中我们引入了实验性VR支持,即开发中的浏览器技术WebXR(Web上的eXtended Reality),它允许创建增强现实(AR)和虚拟现实(VR)在线体验。

目前在WebXR堆栈中,虚拟现实特性较为稳定。鉴于此,我们在Verge3D中暂时只添加了VR拼图,待WebXR规范稳定后再推出AR拼图。

我们强大的工业机器人demo现已升级为VR演示器。通过使用注视点控制的方法,为无控制手柄的VR设备(例如Cardboard)执行对3D对象的交互。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

截图自三星S6 Edge手机Cardboard演示,当前注视点正在触发按钮#1

对于有控制手柄的VR设备(例如HTC Vive, Oculus, Google Daydream等),交互控制则通过手柄来实施。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

截图自三星S8手机Google Daydream演示,当前控制手柄的激光指针正在触发按钮#2

因此,您可以使用标准 when hover(光标移入)when clicked(光标点击) 拼图来处理用户事件。关于场景设置和使用VR功能的详细信息,请参阅用户手册。

应用管理器改进

新版应用程序创建对话框已进行重新组织设计,现有2个应用程序模板:基于拼图的标准应用模板,和为喜欢JavaScript编程的用户提供的基于代码的应用模板;另外还添加了启用Internet Explorer 11和旧版VR模块兼容的选项。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

创建新应用面板

简化了应用程序更新过程。您现在不仅可以方便地更新引擎模块,还可以更新HTML / CSS / JavaScript模板。请务必在更新前备份项目,因为此功能会覆盖文件!

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

一键更新应用程序

为使用基于物理特性的工作流,Blender和Max的默认应用模板一并进行了升级。当前模板使用了中等多边形模型,删除了法线贴图,从而使默认项目更加简洁。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

新版默认立方体

新模板中包含了HDR环境纹理,您可以在项目中重复使用(官网最新教程系列中有详细介绍)。

第一人称控制

现在可在Blender与3ds Max项目中开启第一人称控制功能。您可以为地板指定用于进行碰撞检测的材质 ,从而实现在场景中行走的功能。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

3ds Max(左侧)和Blender(右侧)中的第一人称控制选项

Blender版本中的城市Demo已更新,现可允许进行第一人称控制。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

启用了第一人称控件的城市Demo

动态加载

现在可以通过Puzzles或JavaScript支持在替换和追加模式下加载场景以及卸载场景。此功能是创建具有大量场景或高多边形模型的应用程序的关键,现在可以按需加载(定制器,游戏关卡等)。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

加载新的gltf文件并将其附加到主场景

可以指定预加载器来显示加载进度。摄像机和灯的加载是可选的,默认情况下禁用,以防止浪费内存和处理能力。

通过JavaScript启用功能

感谢用户的贡献,我们实现了暂停和恢复渲染的可能性,以及通过JavaScript降低帧速率,如下所示:

app.disableRendering();
app.enableRendering();
app.setFrameRateDivider(2); // enables maximum 30 FPS instead of 60

具体使用方法,请参阅3ds Max和Blender版Verge3D中提供的名为“Load Unload”演示应用。

此外,实现了用于释放CPU和GPU资源的JavaScript方法 dispose() 。如果您的网站创建并动态删除了Verge3D应用程序实例,此方法非常有用。

例如,如果用户单击某个页面上的某个按钮或标签以导出3D应用时,而无需重新加载整个页面,只需呼出

app.dispose();

这样引擎不会将加载的场景保留在内存中,也不会在后台进行渲染。

更多拼图

除了上面提到的VR和场景谜题之外,还增加了一堆新的谜题,包括:

  • is visible– 用于检查对象是否可见或隐藏

  • get material– 用于检索对象的材质

  • screenshot– 用于捕捉品目截图并以 data URI(统一资源标识符) 格式返回

  • all variable names – 返回一个包含全部已使用的变量的名称列表

  • variable value by name – 作为标准变量值使用的拼图,但没有下拉列表

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

新的变量拼图

所有对象,材质和动画拼图现在都可以使用 Text 拼图指定名称。如果要按需加载场景,当对象选择器下拉列表中没有其他场景中的对象名称时,这将非常有用。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

使用选择器或文本拼图指定对象。这两种形式都可以正常运行

另一项改进涉及 tween camera(补间相机) 拼图,适用于飞行摄像机类型。

Puzzles Editor(拼图编辑器)现在在所有活动选项卡及编辑器选项卡中的缩放比例、视图中心多会在保存时保留下来,以便再次开启式恢复上次编辑状态。你一定会喜欢这一项功能。

还有更多的拼图

添加了通过拼图保存和恢复应用程序状态的实验性支持。例如,此功能可用于实现自定义程序的“撤消”按钮。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

Save state和undo state拼图

在执行您希望能够撤消的某个操作(例如隐藏对象)之前,使用 save state 拼图保存该对象的状态。之后,你可以使用 undo state 拼图撤销隐藏。这些拼图也适用于动作序列,因此您可以像在3D编辑器中一样撤消多个动作。

添加了 Dictionary(词典) (又名map,地图)数据类型到拼图。它可用于方便地存储和检索基于键值的数据。

添加了以纯文本或JSON格式通过网络发送和接收数据的实验性支持。这对于以RESTful方式与网站后端进行交互非常有用。

上述特征可用于可视化从远程网站检索到的数据。例如,在访问网站 http://ip.jsontest.com 特定的词典时,可返回如下的IP地址:

{"ip": "77.91.80.242"}

因此,您可以通过检索“ip”键的值来检测3D应用程序中用户的IP地址。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

使用拼图轮询远程服务器

图形性能改进

【仅3ds Max】因以下新特性的支持,材质预设现在可以更好地支持Verge3D了:位图贴图( Bitmap map)的输出贴图( Output map)和输出面板( Output panel),以及物理材质的粗糙度不可见开关(Roughness Invisible),(此开关使粗糙度表现为光泽度)。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

位图贴图(Bitmap map)的输出贴图(Output map)和输出面板(Output panel)

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

物理材质的粗糙度不可见开关(Roughness Invisible)

【仅Blender】实现了对多个EEVEE / Cycles节点的支持,其中包括Refraction BSDF, Glass BSDF和Wave Texture。 此外也可使用 Principled BSDFTransmission 输入,及 NoiseTextureDetail 输入。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

EEVEE的Wave Texture可以产生各种图案

新支持的EEVEE节点将用作即将推出的珠宝材质库的基础。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

即将发布的珠宝材质库的一些宝石

其他特性

在教程系列中创建的名为“Simple Configurator”的完整应用已添加到包含入门文件的3ds Max和Blender版本中。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

为学习目的而创建的简单配置器应用

Verge3D Network的缓存超时减少到15分钟(之前为1小时)。这可能有助于更新部署的应用程序。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

现在安装后无需配置路径

【仅3ds Max】自动配置选项已添加到安装程序(默认启用)以自动设置Verge3D插件路径。

【仅3ds Max】现在可以为对象提供 Rendering order(渲染顺序)frustum culling(视体体剔除) 选项。

【仅Blender】现在可以使用对象选择器方便地设置摄像机目标,并且可以相应地更新视图方向。

Verge3D 2.10 for Blender 发布,WebGL 应用构建框架

现在更容易定义相机目标

WordPress插件

Verge3D的WordPress插件现在支持以JSON格式发送的订单,并且现在还支持自定义通知邮件(使用 templates/order_email_body.php )和管理页面( templates/order_admin_form.php )。要在WordPress中启用这些模板,请将它们复制到WordPress主题的verge3d文件夹中。

Bug修复

  • 【仅Blender】修复了使用 Child Of 约束时Blender 2.8中的崩溃问题。还修复了由最近的Blender 2.8更新后由透明材质引起的崩溃。

  • 解决了启用透明背景时别名的问题。

  • 现在可以在Verge3D应用程序中加载由第三方导出器创建的gltf场景。

  • 修复了Firefox移动版上的黑屏渲染问题。

  • 修复了SSAO效果在启动时产生像素化效果的问题。

  • 修复了错误阻止克隆非轨道相机的问题。

  • 修复了点击拼图不能使用 Flying 相机类型的错误。

  • 修复了使用变换拼图缩放对象的错误。

  • 【仅Blender】隐藏了Blender UI中不相关的对象属性。

  • 【仅Blender】修复了在Blender 2.8中打开具有旧版GLSL材质的场景时导出崩溃的问题。

结语

这是一个大版本更新!非常感谢我们积极主动的社区用户,在过去几周内下载和测试我们发布的4个预发布版本,并提出宝贵的建议。一如往常,期待您留下评论或论坛中提供的反馈和建议!

Yuri Kovelenov撰写,FunJoy Tech中文化


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

敏捷估计与规划

敏捷估计与规划

[美] Mike Cohn / 宋锐 / 清华大学出版社 / 2007-7 / 39.90元

《敏捷估计与规划》一书为对敏捷项目进行估计与规划提供了权威实际的指导方针。在本书中,敏捷联盟的共同创始人Mike Cohn讨论了敏捷估计与规划的思想,并使用现实的例子与案例分析向您详细地展示了如何完成工作。本书清晰地阐述了有关的概念,并引导读者逐步认识到下列一些问题的答案:我们要构建什么?它的规模有多大?需要在什么时候完成?到那个时候我们到底能完成多少?您首先会认识到优秀的计划由哪些东西组成,接着......一起来看看 《敏捷估计与规划》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码