Структура компонента
В своей основе компонент — это JSON-объект, содержащий стандартные функциональные экспорты, которые имел бы плагин: имя, размер, количество светодиодов и т. д.
Директории
Заголовок раздела «Директории»Эти файлы берутся из одной из двух директорий. Встроенные хранятся по адресу:
C:\Users\[YOUR USERNAME]\AppData\Local\VortxEngine\app-[CURRENT VERSION]\Signal-x64\Components
Пользовательские файлы должны храниться в пользовательской директории. По умолчанию это документы пользователя:
C:\Users\[YOUR USERNAME]\Documents\WhirlwindFX\Components
Файлы в AppData перезаписываются при каждом обновлении, тогда как файлы в директории документов пользователя сохраняются между версиями. Файлы там также переопределяют всё в директории AppData с совпадающим именем продукта. Эти пользовательские компоненты отображаются так же, как встроенные, с автоматически создаваемыми фильтрами по бренду и типу.
JSON-структура
Ниже приведён пример кресла «Vertagear» в виде набора компонентов Kit, выраженного как компонент со всеми необходимыми атрибутами.
- Примечание: Типичные ошибки и предупреждения при загрузке этих файлов будут выводиться в журналы отладки.
{ "ProductName": "VertaGear PL4500 RGB Top Kit (Chair Back)", "DisplayName": "VertaGear PL4500 RGB Top Kit (Chair Back) - 5 Zone", "Brand" : "Vertagear", "Type" : "Chair", "LedCount" : 5, "Width": 5, "Height": 5, "LedMapping" : [ 0,1,2,3,4 ], "LedCoordinates" : [ [0,0], [0,1], [1,0], [2,0], [2,1] ], "LedNames" : [ "Back Side - Top","Back Side - Bottom","Center Acrylic","Front Side - Top", "Front Side - Bottom" ], "ImageUrl": ""}| Параметр | Описание | Тип | Пример |
|---|---|---|---|
| ProductName | ProductName, используемый для постоянного хранения как имени компонента | String | Corsair LL Fan |
| Brand | Строка, представляющая бренд компонента для фильтрации | String | Corsair |
| Type | Строка, представляющая тип компонента для фильтрации | String | Fan |
| LedCount | Целое число, представляющее общее количество светодиодов компонента | Int | 16 |
| Width | Целое число, представляющее ширину пиксельного буфера компонента | Int | 5 |
| Height | Целое число, представляющее высоту пиксельного буфера компонента | Int | 5 |
| LedMapping | Массив, содержащий порядок, в котором должна возвращаться цветовая информация светодиодов | Одномерный массив | [0,1,2] |
| LedCoordinates | Массив, содержащий позиции [X,Y] всех светодиодов | Двумерный массив | [[0,0],[0,1]] |
| LedNames | Массив, содержащий имя каждого светодиода | Одномерный массив | [“Led 1”,“Led 2”] |
| ImageUrl | Строка URL изображения, используемого как миниатюра компонента | String |