From afc99d374c0a337959ffc3217756e9eb05d63ad7 Mon Sep 17 00:00:00 2001 From: Leon Styhre Date: Sun, 6 Mar 2022 13:05:05 +0100 Subject: [PATCH] Documentation update. --- CHANGELOG.md | 1 + THEMES-DEV.md | 6 +++++- THEMES-LEGACY.md | 26 -------------------------- USERGUIDE-DEV.md | 2 +- USERGUIDE.md | 2 +- 5 files changed, 8 insertions(+), 29 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f38d30929..db8e9560d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -22,6 +22,7 @@ * Added support for defining which types of game media to use for all image elements (and also for the video component static image) * Added a legacy (backward compatibility) mode for still supporting older RetroPie EmulationStation themes * Added theme support for Lottie animations (vector graphics) +* Added theme support for GIF animations * Added a GameSelectorComponent for displaying game media and metadata in the system view * Added support for displaying videos, Lottie animations and date/time elements to the system view * Replaced the forceUppercase theme property with a more versatile letterCase property (forceUppercase is retained for legacy theme compatibility) diff --git a/THEMES-DEV.md b/THEMES-DEV.md index 94be45c96..7db943da0 100644 --- a/THEMES-DEV.md +++ b/THEMES-DEV.md @@ -894,7 +894,7 @@ Properties: #### animation -Lottie (vector graphics) animation. Note that these animations take a lot of memory and CPU resources if scaled up to large sizes so it's adviced to not add too many of them to the same view and to not make them too large. +GIF and Lottie (vector graphics) animations. The type of animation is automatically selected based on the file extension with `.gif` for GIF animations and `.json` for Lottie animations. Note that Lottie animations take a lot of memory and CPU resources if scaled up to large sizes so it's adviced to not add too many of them to the same view and to not make them too large. GIF animations on the other hand are not as demanding except if they're really long and/or high-resolution. Supported views: * `system ` @@ -929,6 +929,10 @@ Properties: * `keepAspectRatio` - type: BOOLEAN. - If true, aspect ratio will be preserved. If false, animation will stretch to the defined size. Note that setting to `false` is incompatible with only defining one of the axes for the `size` element. - Default is `true` +* `interpolation` - type: STRING + - Interpolation method to use when scaling GIF animations. Nearest neighbor (`nearest`) preserves sharp pixels and linear filtering (`linear`) makes the image smoother. This property has no effect on Lottie animations. + - Valid values are `nearest` or `linear` + - Default is `nearest` * `opacity` - type: FLOAT - Controls the level of transparency. If set to `0` the element will be disabled. - Minimum value is `0` and maximum value is `1` diff --git a/THEMES-LEGACY.md b/THEMES-LEGACY.md index d25f41a30..6e3363700 100644 --- a/THEMES-LEGACY.md +++ b/THEMES-LEGACY.md @@ -649,32 +649,6 @@ Can be created as an extra. * `zIndex` - type: FLOAT. - z-index value for component. Components will be rendered in order of z-index value from low to high. -#### animation - -Lottie animation (vector graphics). Can be created as an extra. - -* `pos` - type: NORMALIZED_PAIR. -* `size` - type: NORMALIZED_PAIR. - - If only one axis is specified (and the other is zero), the other will be automatically calculated in accordance with the animation's aspect ratio. Note that this is sometimes not entirely accurate as some animations contain invalid size information. -* `origin` - type: NORMALIZED_PAIR. - - Where on the animation `pos` refers to. For example, an origin of `0.5 0.5` and a `pos` of `0.5 0.5` would place the animation exactly in the middle of the screen. If the "POSITION" and "SIZE" attributes are themeable, "ORIGIN" is implied. Default is `0.5 0.5`. -* `rotation` - type: FLOAT. - - angle in degrees that the animation should be rotated. Positive values will rotate clockwise, negative values will rotate counterclockwise. Default is `0`. -* `rotationOrigin` - type: NORMALIZED_PAIR. - - Point around which the animation will be rotated. Default is `0.5 0.5`. -* `path` - type: PATH. - - Path to the animation file. Only the .json extension is supported. -* `speed` - type: FLOAT. - - The relative speed at which to play the animation. Minimum value is `0.2`, maximum value is `3.0`. Default is `1.0`. -* `direction` - type: STRING. - - The direction that the animation should be played. Valid values are `normal` (forwards), `reverse` (backwards), `alternate` (bouncing forwards/backwards) and `alternateReverse` (bouncing backwards/forwards, i.e. starting with playing backwards). Default is `normal`. -* `keepAspectRatio` - type: BOOLEAN. - - If true, aspect ratio will be preserved. If false, animation will stretch to the defined size. Note that setting to `false` is incompatible with only defining one of the axes for the `size` element. Default is `true`. -* `visible` - type: BOOLEAN. - - If true, component will be rendered, otherwise rendering will be skipped. Can be used to hide elements from a particular view. Default is `true`. -* `zIndex` - type: FLOAT. - - z-index value for component. Components will be rendered in order of z-index value from low to high. Default is `10`. - #### imagegrid * `pos` - type: NORMALIZED_PAIR. diff --git a/USERGUIDE-DEV.md b/USERGUIDE-DEV.md index 68d2bd60f..a73c67cf4 100644 --- a/USERGUIDE-DEV.md +++ b/USERGUIDE-DEV.md @@ -183,7 +183,7 @@ Although ES-DE does support placing game ROMs, the `.emulationstation` home dire A general recommendation is to place all game files and other data on drives connected directly to the machine where ES-DE is running. Even using low speed technology like USB thumb drives, SD cards etc. is generally fine and leads to acceptable performance in most instances. -If you insist on placing games and other resources on network drives such as a NAS, the NFS protocol has to be used instead of SMB as testing has shown between 10 and 30 times better performance with this protocol. Starting ES-DE with a certain game collection size could easily take minutes using SMB while it takes just seconds when using the NFS protocol. This is not a network throughput issue and using something like a 2.5 Gigabit or even 10 Gigabit wired interface will not help you as the SMB protocol has exceedingly bad protocol latency regardless of physical adapter speed. +If you insist on placing games and other resources on network drives such as a NAS, the NFS protocol has to be used instead of SMB as testing has shown between 10 and 30 times better performance with this protocol. Starting ES-DE with a certain game collection size could easily take minutes using SMB while it takes just seconds when using the NFS protocol. This is not a network throughput issue and using something like a 2.5 Gigabit or even 10 Gigabit wired interface will not help you as the SMB protocol has exceedingly bad latency regardless of physical adapter speed. Unix-based operating systems like Linux and macOS ship with an NFS client built-in. diff --git a/USERGUIDE.md b/USERGUIDE.md index fd4b94cfc..c5d4dfdbd 100644 --- a/USERGUIDE.md +++ b/USERGUIDE.md @@ -181,7 +181,7 @@ Although ES-DE does support placing game ROMs, the `.emulationstation` home dire A general recommendation is to place all game files and other data on drives connected directly to the machine where ES-DE is running. Even using low speed technology like USB thumb drives, SD cards etc. is generally fine and leads to acceptable performance in most instances. -If you insist on placing games and other resources on network drives such as a NAS, the NFS protocol has to be used instead of SMB as testing has shown between 10 and 30 times better performance with this protocol. Starting ES-DE with a certain game collection size could easily take minutes using SMB while it takes just seconds when using the NFS protocol. This is not a network throughput issue and using something like a 2.5 Gigabit or even 10 Gigabit wired interface will not help you as the SMB protocol has exceedingly bad protocol latency regardless of physical adapter speed. +If you insist on placing games and other resources on network drives such as a NAS, the NFS protocol has to be used instead of SMB as testing has shown between 10 and 30 times better performance with this protocol. Starting ES-DE with a certain game collection size could easily take minutes using SMB while it takes just seconds when using the NFS protocol. This is not a network throughput issue and using something like a 2.5 Gigabit or even 10 Gigabit wired interface will not help you as the SMB protocol has exceedingly bad latency regardless of physical adapter speed. Unix-based operating systems like Linux and macOS ship with an NFS client built-in.