I'm not sure if I can post a link, but this youtube video really helped me.
If you're weary of links, look up 'Random Entity Models' or 'Random Entity Textures' on yt. There should be a video from Ewan Howell. I always go back to that video and check whether I'm doing it right. It's for blockbench (highly recommended tbh).
I was thinking it would go along with random entity textures- randomly a pig would be really muddy. Kinda like how this user made it: https://www.planetminecraft.com/texture-pack/more-pig-variants-1-19-5882762/ , (I know how to do random models, but haven't found an animal I would like to do it with yet) but perhaps I could also make it so that you could name a pig something specific to get that variant also!
I would look up a video on how to get the CEM loader (which loads existing entity textures to be edited). Blockbench is extremely worth it especially if you want to edit the models in the future as well.