拼图库参考 - Soft8Soft
Description: 使用Verge3D拼图库来长期保存拼图模组，并在不同应用间复用。

# 为您的拼图建立库(Library)

拼图库里可以长期存储拼图模组，并在不同项目间复用您存储的自定义模组。

## 内容

- 简介
- 添加条目
- 使用条目
- 重命名条目
- 删除条目
- 备份
- 系统库参考
  - Hovered Cursor
  - Context Menu
  - Detect Pressed/Released
  - Keyboard Controls
  - Performance Tweaks
  - Setup Fullscreen iFrame
  - Sound iOS Workaround
  - Alert Message
  - Inquiry Form
  - VR Controls

#

## 简介

Verge3D中有两个库：

- 系统库(Stock Library) — 存储在安装目录的 puzzles 子目录中的 library.xml 文件中。这是Verge3D自带的只读拼图库。参考下文。
- 用户库(User Library) — 存储在指定应用目录下的 my_library.xml 文件中。您可以使用这个库来添加您自己的拼图。

#

## 添加条目

您可以通过右键单击拼图组并选择选项 Save N Puzzles to Library 来将拼图组添加到 用户库 。在模式窗口中输入组的名称，随后它将出现在库的条目列表中。用拼图编辑器重新加载页面即可更新条目列表。

#

## 使用条目

已保存的拼图组可以从库中拖放到工作区来使用。

#

## 重命名条目

库中没有专门的重命名控件。但您可以通过编辑 my_library.xml 文件（两处位置）来轻松重命名条目。

重命名后，拼图库条目名称将在刷新编辑器后更新。

#

## 删除条目

点击 ❌ 按钮即可从用户库中删除一个条目。

#

## 备份

每次保存或删除条目时，之前保存的文件 my_library.xml 都会复制到名为 library_backup 的文件夹中，并在文件名中添加时间戳。

这样，当您需要时可以恢复用户库之前保存的任何修订版本。只需将文件复制回应用程序目录，并从文件名中删除时间戳即可。刷新编辑器后，您的库将会更新。

#

## 系统库参考

以下是Verge3D自带的系统拼图库中各条目的参考。

#

### Hovered Cursor

检测鼠标光标是否恰好位于目标对象上方，然后将鼠标光标更改为"指针"样式，从而提示用户该对象是可点击的。

将 Cube 替换为实际的对象名称。如果您需要在应用中执行除简单光标样式之外的其他操作，也可以替换 set style 拼图。

有关使用示例，请查看 Ring 演示（也可在资源商店中找到）。

#

### Context Menu

禁用浏览器默认的右键菜单，替换为自定义菜单（当用户右键点击3D对象时弹出）。

将 Cube、菜单项和事件处理程序替换为实际应用中的内容。

#

### Detect Pressed/Released

when clicked 拼图无法分离鼠标按钮的"按下"和"松开"动作（或触摸屏上手指的按下/松开），因此无法捕捉鼠标实际被按下（或松开）的时刻。以下拼图组可以实现此功能：

将 Cube 替换为实际的对象名称，将 print to console 拼图替换为应用中实际需要的拼图块。

#

### Keyboard Controls

使用此库条目来检测键盘按键。

将 ArrowLeft/ArrowRight 替换为实际的按键，将 print to console 拼图替换为应用中需要执行的实际拼图块。

按键值就是您在键盘上输入的字母（例如"w"、"a"、"s"、"d"）。也可以是特殊值，如"ArrowLeft"、"ArrowRight"、"ArrowUp"、"ArrowDown"、"Enter"、"Tab"、"Home"、"End"、"Delete"、"Escape"、" "（空格）等。完整按键列表请参阅这里。

有关使用示例，请查看 Farmers Journey 演示（也可在资源商店中找到）。

#

### Performance Tweaks

使用此库条目来优化应用的质量和性能。在带有 HiDPI 屏幕的高端设备上，此拼图组会增加像素密度以获得更好的渲染质量。对于中端和低端设备，此拼图组会移除所有后处理效果并禁用阴影，这可以大幅提升此类设备的渲染性能。

此库条目无需任何额外调整，推荐在所有 Verge3D 应用中使用。

#

### Setup Fullscreen iFrame

用您为应用设计的自定义元素替换默认的全屏图标。

为了使这组拼图正常工作，请将图标容器元素的新 ID 替换 fs_button，将图标元素的新 ID 替换 fs_image，并将新的进入/退出图标替换 enter.png/exit.png。

这组拼图设计用于 iframe 嵌入的应用，其中您在父页面上修改了全屏容器元素（大多数情况下为 <a> 或 <div> 元素）（这就是启用 in parent doc 的原因）。此外，修改 src 属性意味着子元素应为 <img>。然而，这种特定的 HTML 元素设置并非强制要求，您可以自由修改拼图。有关更多信息，请参阅 init fullscreen 拼图参考。

有关使用示例，请查看 Teapot Heater 演示（也可在资源商店中找到）。

#

### Sound iOS Workaround

此库条目帮助解决 iOS/Android 设备上播放声音的限制。

将 mySound.mp3 替换为应用中实际使用的声音文件。

#

### Alert Message

在屏幕底部显示提醒消息。

您可以指定提醒消息中显示的文本及其样式。

有关使用示例，请查看 Custom Image 演示（也可在资源商店中找到）。

#

### Inquiry Form

显示一个带有查询表单的对话框，可以通过 WordPress 插件或其他表单处理服务发送。

默认情况下，点击 Cube 对象时会出现对话框，显示包含 Name 和 Email 字段的表单：

该表单可以根据您的需要自由自定义。不要忘记为所有表单输入指定 name 属性。

将 sandbox.soft8soft.com 替换为您自己的表单服务！Verge3D Sandbox 会接受您的表单数据，但会立即丢弃。

#

### VR Controls

使用设备控制器（触摸板或摇杆）在 VR 模式下移动。这组拼图适用于市场上大多数符合 xr-standard 布局的 VR 控制器。

将 collision_mesh 替换为用于控制相机可移动区域的实际碰撞网格。基本上，该材质 上方 的区域是可行走的，而区域外的所有空间都是禁止移动的。

此外，请确保您已启用 sitting or standing VR 定位模式。查看 enter VR mode 拼图以获取更多信息。

## 在使用拼图时遇到困难？

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