NKD Protogen Setup Notes

I'm Macil, and this is my page of notes about working with the NKD Protogen VRChat avatar made by Nukude.

I made some public VRChat avatars based on the model, and people ask me for help with making their own avatars often, so I decided to make a webpage with information that I've found has been useful for some people. If you want to contact me, my Discord username is macil and other contact info is on my homepage.

Shaders

To use the pre-built materials, you must follow the instructions in the store page that tell you to add Xiexe's Unity Shaders to your project. If you don't do this, then the model will look untextured in Unity. If you do not use the exact same version the project was built for, then you will need to reconfigure the materials to use the specific version of the shader you've installed.

It's common to use the Poiyomi shader instead, but you may want to start with the pre-built materials to compare your new materials to. The pre-built materials using Xiexe's shader have subtle features like reflectivity set up correctly.

PhysBones Configuration

The NKD Protogen is released with physbone support, but before it was released with physbone support, I set up my own physbone configuration for it that you can see here if you want. The included physbone support is pretty good, but I think I slightly prefer my setup for the tail and ears.

Screenshot of the PhysBone configuration in Unity

The TailRoot radius setting here is sized for the nuku tail variant. For the default/banded/long tail variants, you might want to bump it up a bit to 0.0011.

Configuring the PhysBones is a delicate balance between making the bones floppy enough that they look interestingly dynamic and rigid enough that they don't spaz out distractingly when the character moves quickly. Feel free to experiment to find what works best for you. Some people may prefer the ears on the protogen to be floppier than my own setup.

If you have any animations/toggles affecting the ears or tail, make sure you set the "is animated" option on that physbone. You should clear it from any physbones that don't need it.

The "allow posing" setting allows players to freeze a bone in a new position while holding it by pulling the trigger. The default configuration makes all physbones grabbable and poseable, but in my own configuration pictured above, I prefer to keep only the ears and tail grabbable, and make only the tail poseable. Having the hair and fluff physbones grabbable can be distracting and cause them to get in the way of players grabbing other items in-game.

Expressions Configuration

In my own avatar world, all of the protogen avatars are set up so that the VRChat expressions menu can be used to control the facial expression and adjust parts of the body. If you want the same expressions menu setup on your own protogen avatar, then download this zip file and extract it into your project's Assets/NKD Protogen directory. It will overwrite some files in order to set up the expressions menu like mine.

Screenshot of the avatar in-game with the expression menu open
More screenshots of the expressions menu Screenshot of the avatar in-game with the expression menu open Screenshot of the avatar in-game with the expression menu open Screenshot of the avatar in-game with the expression menu open

Note that by default, my own expressions configuration entirely moves all avatar expressions off of hand gestures and into the expressions menu. If you want my config but want hand gestures to also be able to activate expressions, then it's possible to re-enable hand gestures. There's a disabled layer in the _ProtoFX animator already configured to support hand gestures. If and only if you want to support this, then in the Project tab at the bottom of Unity, double-click the _ProtoFX file, go to the "Hand Gestures" layer, scroll out in the Animator view so you can see the gray rectangle labeled "Start", right-click on it, and pick "Set as Layer Default State". The avatar now supports the same hand gestures as the original 2.0 release of the Protogen avatar did.

Enabling hand gestures

General Avatar Tips

That's the end of my tips specifically for working with the NKD Protogen avatar. I have a separate page for more general tips at VRChat Avatar Creation Tips.