Nerdy’s Custom Entity Models gives you full control over player and entity rendering, letting you replace or modify what gets drawn on the screen. From custom first-person hand models to fully dynamic player skins, this plugin opens the door to all kinds of creative visual magic.
This is a java plugin and requires java plugins to be enabled

Before getting started working with your rendering logic, you will need to understand the four main concepts this plugin revolves around
Texture Location and Model variables
This plugin adds two new variable types to MCreator, Texture Location and Model.

Model variables can be used to render custom java models on entities with regular animations set to the model itself, while texture variables are used for all types of rendering. All global triggers in this plugin provide models and textures, which correspond to the model and texture of the entity/player being rendered.

To make the most optimal use of them, these variables can be cached as global variables to be reused. This will help reduce the performance impact of your mod as they will not need to be initialized every time your models are drawn.

Models must be cached using the "After model registration" global trigger when initially loading the mod, but afterwards they can be cached using other events so long as the code runs client-side.
Humanoid models
Humanoid models can be created using the new mod element added by this plugin.

These are a type of model that is automatically cached, and can follow the player model's rotations by assigning model parts to certain groups that correspond to parts of the player.

Rendering custom models on entities
Custom models being rendered on non-player entities should be rendered using the "On entity rendered" global trigger.

You can also render the entity's original model with a different texture or render type using the dependencies provided, for which case you will need to hide the base model of the entity so as not to have them overlap.
Rendering custom arm models in first person
Custom first person arm models can be rendered using the "On arm rendering" global trigger. The same principles of entity rendering apply here. You can either render a copy of the vanilla player arm, or the arm of a humanoid model mod element.
![]() |
![]() |
Rendering custom models on players
Custom skins or humanoid models must be rendered using the "On player rendering" global trigger. You should absolutely not render models on the player during the "On entity rendering" global trigger.
![]() |
![]() |
It is best to avoid cancelling this event as that would mean none of the player's model layers will appear anymore. If you really must hide the base player model, you can do so by disabling its model parts to make it disappear.

It is also possible to apply cape physics to a rendered humanoid model's parts by using this procedure block right before the rendering process of the model.
Changelog
v1.2
-Added a procedure block to hide humanoid model parts from humanoid models
-Added a procedure block to check if the player is in first person
v1.1.2
-Fixed the variable improvements causing a build error in 1.21.1
v1.1.1
-Improved player variable syncing code
-Updated player variable syncing code for the 1.20.1 generator to work with the latest version
v1.1
-Added a new procedure block to render a copy of an entity's model on an entity
-Added a new procedure block to render a non-humanoid model on a player
-Added the option to set a max parameter on humanoid model upwards cape rotation
-Added new global trigger to change the hitbox of entities
-Added new procedures to change the hitbox of entities
-Removed the get model from entity procedure block as it would always crash when trying to render it
v1.0
-Plugin releaseComments
I'm having issues with transparency, it seems like when I turn on transparent every mob takes priority in rendering and even the player is seen through. I understand that this is just how transparency works in Minecraft, but can u make a semi-transparent option as well if possible? My model for my project is supposed to be kind of transparent and not a solid color and is behind the player.
Thanks for the quick reply and for letting me know.
There is a suggestion though, if you ever want to implement it in the future.
The MCreator java entity animation system could be applied to custom rendered models in your plugin, and if the bone names in the animation and model are the same, then it'd work out.
That may sound simple if you don't know what lies under the hood, but it's not. Java keyframe animations are tied to the entity that uses them, which also creates a private model class that is specifically needed for those animations to work. Basically, it would be a very big undertaking to have java model animations be usable with the rendering of normal models. A very roundabout and bad way to do it is to make a dummy entity with some animations and render a copy of that entity's model, but then you're creating a whole entity that goes unused.






I don't know how to import a player model.