77 lines
2.5 KiB
Markdown
77 lines
2.5 KiB
Markdown
# SDK 配置
|
||
|
||
English documentation: [SDK_Configuration.md](SDK_Configuration.md).
|
||
|
||
SDK 推荐使用 `FaceSdkSettings` 作为配置资产。该配置是 `ScriptableObject`,会创建在导入该包的 Unity 项目中,并可同步到场景里的 `FaceModuleManager`。
|
||
|
||
## 默认配置资产
|
||
|
||
默认路径位于导入该包的 Unity 项目内:
|
||
|
||
```text
|
||
Assets/AISU/SI-M1 Face SDK/FaceSdkSettings.asset
|
||
```
|
||
|
||
打开 `AISU/SI-M1 Face SDK/Settings` 可加载或创建该配置资产。
|
||
|
||
## FaceSdkSettings 字段
|
||
|
||
| 字段 | 类型 | 说明 |
|
||
|---|---|---|
|
||
| `TransportMode` | `FaceTransportMode` | `Auto`、`SerialPort` 或 `Mock` |
|
||
| `UseMockInEditor` | `bool` | Unity Editor 中强制使用 Mock 通信 |
|
||
| `PortName` | `string` | Runtime/Player 串口号 |
|
||
| `BaudRate` | `int` | Runtime/Player 波特率 |
|
||
| `ReadBufferSize` | `int` | Runtime/Player 读取缓冲区大小 |
|
||
| `UseEditorSerialDebugParameters` | `bool` | Editor 中是否使用单独串口参数 |
|
||
| `EditorPortName` | `string` | Editor 调试串口号 |
|
||
| `EditorBaudRate` | `int` | Editor 调试波特率 |
|
||
| `EditorReadBufferSize` | `int` | Editor 调试读取缓冲区大小 |
|
||
| `MockResponseDelayFrames` | `int` | Mock 响应延迟帧数 |
|
||
| `DebugLogEnabled` | `bool` | 是否启用 SDK Debug 日志 |
|
||
| `RawLogEnabled` | `bool` | 是否派发原始 TX/RX 日志 |
|
||
| `LogPrefix` | `string` | 日志前缀 |
|
||
|
||
## TransportMode
|
||
|
||
| 模式 | 行为 |
|
||
|---|---|
|
||
| `Auto` | Editor 根据 `UseMockInEditor` 选择 Mock 或串口;Player 使用串口 |
|
||
| `SerialPort` | 使用 `SerialPortTransport` |
|
||
| `Mock` | 使用 `MockFaceModuleTransport` |
|
||
|
||
当 `UseMockInEditor = true` 时,Editor 会始终使用 Mock 通信,不会打开真实串口。
|
||
|
||
## Editor 工具
|
||
|
||
| 菜单 | 用途 |
|
||
|---|---|
|
||
| `AISU/SI-M1 Face SDK/Settings` | 打开 SDK 配置窗口 |
|
||
| `AISU/SI-M1 Face SDK/Create Manager GameObject` | 创建或更新场景中的唯一 `FaceModuleManager` |
|
||
| `AISU/SI-M1 Face SDK/Open Diagnostics` | 打开诊断窗口 |
|
||
|
||
公开 DLL-only 包不包含可导入 Demo 示例。如果当前 Editor DLL 中仍出现 Demo 相关菜单,应视为公开版本不可用功能。
|
||
|
||
## 推荐用法
|
||
|
||
```csharp
|
||
manager.ApplySettings(settings);
|
||
manager.Open();
|
||
```
|
||
|
||
兼容式快速配置:
|
||
|
||
```csharp
|
||
manager.Configure(useMockInEditor: true, portName: "COM3", baudRate: 115200);
|
||
manager.Open();
|
||
```
|
||
|
||
自定义通信层注入:
|
||
|
||
```csharp
|
||
manager.ConfigureTransport(customTransport);
|
||
manager.Open();
|
||
```
|
||
|
||
每个场景建议只保留一个 `FaceModuleManager`,避免重复打开串口和重复派发事件。
|