基序(Basis Permutation)
基座负责在 Haply 的内部坐标系与用户应用程序的坐标系之间进行映射。
Haply 基本框架
Haply 使用右手坐标系:
| 祝 | 方向 |
|---|---|
| +X | 右侧 |
| +Y | 前面 |
| +Z | 上方 |
工作原理
排列字符串用于说明应用程序的坐标系与 Haply 的坐标系之间如何对应。设置后,服务返回的所有值(位置、速度、力、方向)都将以用户的坐标系表示,而用户发送的所有值也将根据用户的坐标系进行解析。转换过程自动进行,且支持双向转换。
该字符串是 X, Y, Z是其排列,若要反转轴,可选择性地 + 或者 - 可以添加前缀。
示例
| 排列 | 含义 | 一般用途 |
|---|---|---|
XYZ | 恒等 — 无重映射 | Haply 原生应用 |
XZY | Y和Z互换 → 用户的+Y位于上方 | Y-up 引擎 |
X-YZ | Y反转 → 左手Z-up | 虚幻引擎 |
ZXY | 循环所有三个轴 | 自定义框架 |
解读
"YZX"表示以下内容:
- 用户的X轴=Haply的Y轴(前方)
- 用户的Y轴 = Haply 的Z轴(上方)
- 用户的Z轴 = Haply 的X轴(右侧)
基本设置
- WebSocket
- 超文本传输协定
{
"session": {
"configure": {
"basis": { "permutation": "XZY" }
}
}
}
curl -X POST "http://localhost:10001/inverse3/0/config/basis?session=:0" \
-H "Content-Type: application/json" \
-d '{"permutation": "XZY"}'
基础设置将永久保留。在第一条消息中设置一次后,该设置将保持不变,并一直保持有效状态,直到会话结束。
session.set_basis从……迁移轴符号规则属于旧版 session.set_basis哇 session.configure.basis 已发生更改。在先前命令中正常工作的置换,在新命令中可能会产生反向的变换。如有必要,请反转轴的符号(例如: X-ZY是 XZ-Y(即)。
详情请参见 3.5 迁移指南请参阅。