Component Structure
A component at its core is a JSON object containing the normal function exports a plugin would have, like name, size, LED count, etc.
If you are editing files you'll need to reselect the component to update it with changes
Directories
These files are grabbed from one of two directories. Built-in ones are stored in:
C:\Users\[YOUR USERNAME]\AppData\Local\VortxEngine\app-[CURRENT VERSION]\Signal-x64\Components
And user-made files should be stored in the User Directory. By default this is in documents:
C:\Users\[YOUR USERNAME]\Documents\WhirlwindFX\Components
Files stored in appdata are overwritten on each update, while ones stored in the user's documents directory will persist between versions. Files stored there will also override anything in the appdata directory with a matching product name. These custom user components will show up just like a built in component, with automatically generated brand and type filters.
JSON Structure
Below is an example of a "Vertagear" Chair Upgrade Kit being expressed as a component with all necessary attributes.
- Note: Common errors and warnings when loading these files will be printed to the debug logs.
{
"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": ""
}
Parameter | Description | Type | Example |
---|---|---|---|
ProductName | The ProductName used for persistence as the component's name | String | Corsair LL Fan |
Brand | String representing the component's brand for filtering | String | Corsair |
Type | String representing the component's type for filtering | String | Fan |
LedCount | Integer representing the total LED count of the component | Int | 16 |
Width | Integer representing the width of the component's pixel buffer | Int | 5 |
Height | Integer representing the height of the component's pixel buffer | Int | 5 |
LedMapping | Array containing the order LED color info should be returned in | 1D Array | [0,1,2] |
LedCoordinates | Array containing the [X,Y] position of all LEDs | 2D Array | [[0,0],[0,1]] |
LedNames | Array containing the name of each LED | 1D Array | ["Led 1","Led 2"] |
ImageUrl | URL Image String used as the component's thumbnail | String |
Images should be formatted in a 1024x1024 image size with a live area of 920x920.