* Fixed digitigrade legs and emissives not honoring skin layers being disabled in the Skin Customization menu
* **Common Consumers**: This is a breaking change to `EarsRenderDelegate` in Common. The following methods have been added:
* `isHatEnabled()Z`
* `isLeftSleeveEnabled()Z`
* `isRightSleeveEnabled()Z`
* `isLeftPantEnabled()Z`
* `isRightPantEnabled()Z`
* No abstract delegates override these methods, as they're important state that doesn't have a reasonable default
* Ports to versions before the Skin Customization menu should return `true` from all the new methods
* Fixed geometry memoization not consistently differentiating between emissive and base layers
* **Common Consumers**: This is a breaking change to `EarsRenderDelegate` in Common:
* `memoizeGeometry` now expects you to check whether or not the delegate has been put in emissive mode, and if so, store the geometry data separately from base data
* The `Immediate` abstract delegate does this by doubling the size of its backing array and adding `GeometryTag.SIZE` to the tag if emissive mode is enabled
* Reified the meaning of the version number: `API.COMMON.FEATURE-PATCH`
* `API` will be incremented in the case of breaking changes to the `ears-api` artifact
* If we ever break API, there will be a compatibility layer if feasible, so this is more an indicator that API integrations should be double-checked rather than expecting them to crash the game
* `COMMON` will be incremented on breaking changes to the `ears-common` artifact
* This is used by third-party Ears ports (e.g. ReIndev, NFC, NSSS, BTW:CE)
* `FEATURE` will be incremented when new player-visible features are added that modify the skin format
* `PATCH` is a single letter, starting at `a`, which will be incremented when bugs are fixed without player-visible changes (i.e. does not change the meaning of a feature config or UV mapping)
* Tightened up loader metadata version restrictions
* (Pre-1.8 only) LegacyHelper no longer infinitely retries profile lookup, which would cause log spam when Mojang is down or there is a local connection issue
Developer information
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle.
maven { name = "Modrinth"; url = "https://api.modrinth.com/maven" }