Introduction
Unfortunately, there are no tools yet that would allow you to edit an M2 directly (although @Skarn is working hard on that), so it has to be converted into an editable format and then converted back. That can be done with M2mod, and after you've read this tutorial, you will be able to perform this incredibly complicated algorithm on an expert level.
This method is confirmed to be working in Cataclysm and Mists of Pandaria, and, possibly, in Warlords of Draenor.
It has also been reported to not work in Legion, so I will soon edit this tutorial accordingly.
Tools and resources
The Technique
Installation
Download everything listed in the "Tools and resources" section.
Install Blender.
Extract the archives of M2mod 4.6 and M2mod 4.5 (in different folders, obviously).
In the extracted M2mod 4.6, there will be another archive inside called "
M2Mod scripts 1.2 Blender 2.73.zip". Move/copy it's contents into
your Blender folder\2.77\scripts\addons\ (the default installation path is
C:\Program Files\Blender Foundation\Blender\2.77\scripts\addons).
Spoiler
Proceed to Model Extraction.
Model Extraction
Choose the model you want to edit. You can use
WoW Model Viewer for that, but I can't make the tutorial that detailed.
Let's say I want to edit Varian Wrynn's model to make his chin even more brutal.
Open Ladik's MPQ Editor, select all the MPQs in your WoW\Data folder, tick "Merged mode" and press "Ok". Wait for the files to load.
Spoiler
Find the location of the chosen model (in my case it is
Creature\KingVarianWrynn). Extract the model and the .skin files related to it: select the files > press RMB > choose Extract > enter the desired directory > press "Ok" > wait for the files to extract.
Proceed to M2->M2i Conversion.
M2->M2i Conversion
Open the folder with M2mod 4.6 and launch
M2ModRedux.exe.
Choose the "
Export" tab. In the
InputM2 field browse the path to your extracted model and choose the .m2 file (in my case it's
KingVarianWrynn.m2).
Spoiler
Press "
Go!". Wait for the
Status to say "Export done".
Proceed to Modeling.
Modeling
Open your Blender folder and run
blender.exe.
Go to
File >
User Preferences >
Add-ons tab > find "
Import-Export: Import: WoW M2 Intermediate (.m2i)" and "
Import-Export: Export: WoW M2 Intermediate (.m2i)" > tick both of them > press "
Save User Settings" > close the
Blender User Preferences window.
Spoiler
Go to
File >
Import >
M2 Intermediate (.m2i) > find the converted model from M2->M2i Conversion, step 2 and press "
Input M2i".
Spoiler
Edit the model however you wish.
Through hard work and skill, I made Varian look even more brutal than before.
Spoiler
Go to
File >
Export >
M2 Intermediate (.m2i) > choose the path you want > press "
Export M2I".
Spoiler
Proceed to M2i->M2 Conversion.
M2i->M2 Conversion
Open the folder with M2mod 4.5 and launch M2ModRedux.exe.
In the InputM2 field browse the path to the original model (in my case it's
KingVarianWrynn.m2).
In the InputM2I field browse the path to your edited model (in my case it's
KingVarianWrynn.m2i).
In the OutputM2 files choose the path and name of the new model (I'll just replace the original
KingVarianWrynn.m2).
Spoiler
Press "
Go!". There is no
Status, so just wait.
Proceed to Patching.
Patching
I assume you know how to compile a patch using Ladik's MPQ Editor.
Enjoy your edited model!
Spoiler
Edit 17/05/18:
As per popular demand, I will add a section with Legion modeling instructions within the two upcoming weeks.