Custom Entity Models (CEM)
A Fabric modification that implements a custom entity model system fully compatible with the Optifine format. The main goal of the project is to achieve complete functional equivalence with Optifine's custom model system.
Current Development Status
The mod is in ALPHA TESTING stage. This means some features may work incorrectly or not work at all. Stability and full functionality are not guaranteed.
Installation and Requirements
Requires Fabric Loader to be installed. If you plan to configure the mod, YACL (YetAnotherConfigLib) is additionally required. For compatibility with Optifine CEM resource packs, a special resource pack or its derivative versions is needed.
Usage
The mod loads .jem and .jpm files from the "assets/
For Resource Pack Developers
The format of .jem and .jpm files is completely identical to the Optifine format. The folder structure inside "assets/dorianpb/cem" can be arbitrary. For example, a custom creeper model can be located at "assets/dorianpb/cem/creeper.jem", "assets/dorianpb/cem/creeper/creeper.jem", or any other nested structure.
Differences from Optifine
- Most living entities are supported, but some non-living objects may lack animations
- Armor support is not available
- Individual textures for separate parts are not supported (only general texture and its size can be specified in the .jem file)
- Sprites are not supported
- The
attachoption is not implemented - Animations work slightly differently than in Optifine, which may cause issues with some resource packs
Development Plans
- Adding support for remaining entity types
- Improving the animation system
- Implementing the
attachfunction - Creating an improved mod icon
For Mod Developers
If your Fabric mod adds new entities, you can easily add CEM support. Study the example implementation in net.dorianpb.external and use the "cem" entry point.
License
The project is distributed under the LGPL v3.0 license. Redistribution without written permission from the author is prohibited.
Credits
- dorianpb — mod creator
- sp614x — developer of Optifine CEM, on which this project is based
- Mojang — creators of Minecraft
- Project contributor community