系统 | System

这些拼图可以用来执行各种系统功能,比如打印到控制台,测量性能,获取/设置渲染的像素比,检索GPU信息以及使用持久性浏览器存储。

系统可视化编程块

内容

拼图参考

print to console

打印任何类型的数据(某个拼图的输出,一个变量,或者只是一个文本)到浏览器控制台。打印到控制台是调试脚本最通用和最简单的方法。

打印到浏览器控制台的可视化逻辑块

print performance info

记录1秒钟内的性能概况,并将其打印到浏览器控制台。使用此概况可以找到性能瓶颈,提高应用的渲染和加载速度。在这里查看详情。

检索性能信息的可视化编程块

check performance

测量用户计算机或设备的渲染能力。其底层使用开源库Detect GPU来查找现有的基准测试结果并将用户的GPU分类为"good"或"poor"。

GPU基准测试的可视化编程块

您可以使用此拼图的槽位为性能较差的GPU加载更简单的场景或禁用一些消耗图形性能较多的功能(例如后期处理效果)。另一方面——如果用户的GPU性能更强大——您可以提高渲染质量。

我们还将此基准测试添加到了WebGL Report页面,以便您在浏览器中打开此页面即可快速检查GPU。

WebGL系统报告页面

如果用户的GPU报告为"good",并不意味着您可以任意加载性能繁重的图形。您仍然需要尽可能多地优化您的应用!

feature available

检查从下拉菜单中选择的功能在用户的浏览器中是否可用。如果功能可用,拼图返回true,否则返回false

查询浏览器功能的可视化逻辑块

可以使用此拼图检查的功能包括:

功能 描述
Mobile Device 应用正在移动设备(手机、平板电脑、便携式VR头显)上运行。
Android 应用正在Android设备上运行。
iOS 应用正在iOS或iPadOS设备上运行。
Windows 应用正在Windows操作系统上运行。
macOS 应用正在macOS上运行。
ChromeOS 应用正在ChromeOS上运行。
Linux 应用正在Linux(Ubuntu, Fedora, Red Hat等)上运行。
Google Chrome 应用正在Google Chrome浏览器或其克隆版(Chromium, Brave,但不包括Edge)中运行。
Firefox 应用正在Firefox浏览器中运行。
Internet Explorer 此功能始终为false,因为Verge3D很久以前就不再支持Internet Explorer。保留此选项是为了兼容性。
Microsoft Edge 应用正在Microsoft Edge浏览器中运行。
Safari 应用正在Apple Safari浏览器中运行。
Touch Screen 系统具有触摸屏设备。
Retina Display (HiDPI) 系统具有高分辨率显示器(Retina),即其原生屏幕比例值大于或等于2
High Dynamic Range (HDR) Verge3D应用在启用了HDR功能的情况下运行。这与目标系统显示器的HDR支持无关。
Web Audio API 系统支持Web Audio(现在始终为true)。
WebGL 系统支持WebGL(至少此3D Web标准的1.0版本)。
WebGL 2.0 系统支持WebGL 2.0版本。
WooCommerce 应用正在由WordPress的WooCommerce插件创建的产品页面上运行。
Do Not Track 用户的浏览器启用了"Do Not Track"设置。此功能被视为已弃用,不应再使用。

get GPU

输出用户的GPU信息——供应商,例如:NVIDIA Corporation, Apple Inc., Qualcomm,以及GPU型号,例如:GeForce GTX 1060 3GB/PCIe/SSE2, Apple A9 GPU, Adreno (TM) 330。

查询GPU供应商和型号的可视化编程块

set screen scale

为渲染的画布设置屏幕分辨率系数。设置 >1 以提高质量,<1 以提高性能。1是Retina(又称HiDPI)和非Retina显示器上的默认屏幕比例。

设置屏幕缩放的可视化逻辑块

Verge3D使用1作为默认比例因子,以防止在Retina显示器上渲染过多的像素。如果性能不是问题,可以通过将屏幕比例设置为原生屏幕比例来启用Retina渲染,或者使用中间值(例如1.5)。

native screen scale

原生(取决于硬件或浏览器缩放)画布分辨率系数。如果您没有放大缩小页面,这个值对于非Retina显示器来说等于1,对于HiDPI显示器、现代智能手机和平板电脑来说大于1。

原生屏幕比例可视化编程块

detect gamepad device

检测连接到系统或与系统断开连接的游戏手柄设备。当发现新的游戏手柄设备时,在once connected do槽中指定的拼图会被触发。当设备断开连接时,在once disconnected do槽中指定的拼图会被触发。在任何情况下,gamepad index值都会被设置并返回设备索引。

查询游戏手柄的可视化编程块

gamepad index

返回连接/断开连接的游戏手柄设备索引。

查询游戏手柄索引的可视化编程块

get gamepad property

返回具有给定索引的设备的游戏手柄属性。

获取游戏手柄属性的块

属性:

有关使用示例,请查看 Farmers Journey 演示(也可在资源商店中找到)。

要在您的应用中正确分配摇杆/按键,请使用Gamepad Diagnostics工具、debug info属性,或遵循标准游戏手柄布局(可能不适用于所有类型的设备):

标准游戏手柄摇杆/按键布局

在标准AR/VR控制器的情况下,布局有所不同:

标准AR/VR控制器摇杆/按键布局

storage set

将键值对存储在浏览器的本地存储中,数据不会过期。这意味着即使浏览器窗口关闭,存储在浏览器中的数据仍将保留。注意:在"隐私浏览"或"无痕"会话中,最后一个"隐私"标签关闭时,浏览器的本地存储将被清除。

键必须是文本。支持将以下数据类型作为赋值:数字、文本、列表、字典。

在浏览器本地存储中记录数据的块

storage get

返回浏览器本地存储中与指定键关联的值。

访问浏览器本地存储的可视化编程块

storage remove

删除浏览器本地存储中与指定键关联的值。

从浏览器本地存储中删除数据的可视化编程块

storage check

检查浏览器的本地存储中是否存在指定的键。返回布尔类型的结果truefalse

用可视化编程检查本地存储

close app

关闭Verge3D应用。由于浏览器施加的安全限制,此拼图仅适用于ElectronCordova以编程方式打开的页面。

关闭应用的可视化逻辑块

在使用拼图时遇到困难?

欢迎您随时在 论坛上提问!您还可以加入中文用户社区QQ群(171678760),在线寻求帮助。