3D Modelling – Basic Guide
–Hi, my name is Alex and i will be your host on this post regarding “How To Make Complete 3D Models Eligible For League Of Legends Custom Skins”!
-Things to know before beginning:
(i) this is not as hard as you may already think, only if you follow strictly by letter and by order mentioned some specific steps. Patience, free time and enjoying what you do are three things strongly required!
(ii) i use Autodesk Maya 2014 cause i find it more stable for my needs. This guide covers pretty much all versions of Maya since all required options are included in all of them (2014+ versions). Though, be warned that different versions of Maya may have differences such as changes to the interface, different names for some operations etc. In this case, if not obvious to you, with a simple search online you can find which feature of your Maya version matches with the feature of Maya 2014 mentioned here.
(iii) this guide does not cover the basics for using Autodesk Maya or any of the required software, so make sure you are familiar with the interface of these software and how to use them. The purpose of this guide is to fully cover all the basic steps about custom Lol skin creation.
(iv) Part 1 of this guide covers all the basic steps about the custom model creation. Part 2 (coming soon) will cover all the basic steps recommended for the process of painting weights.
–So get the music on and lets get the “party” started!
*Required Software: Autodesk Maya 2014+, Lol2dae, Wooxy, RIOT File Translator Plugin for correct Maya version!
- Autodesk Maya -> software used to create 3D Models!
- Lol2dae -> software used to convert (.skn) files into (.dae), something useful for importing models and checking weights!
- Wooxy -> software used to export (.obj) files from the (.skn) format used by RIOT and to install custom Lol skins!
- RIOT File Translator Plugin for correct Maya Version -> plugin necessary to Maya in order to work with the base format types from RIOT. Make sure that you have it enabled in Maya!
*Basic Format Types You Need To Know About:
- (.obj) -> It’s a simple data-format that represents 3D geometry alone, basically a 3D Model!
- (.dae) -> It’s a Digital Asset Exchange file used by various graphics programs to exchange digital assets under the same format. They may be images, textures, 3D models, etc. This file format is very common in video games! It is usually used in the same way as an (.obj) file!
- (.dds) -> It’s usually a texture file for a mesh or particle file. This file formal is also very common in video games!
- (.png) -> It’s a raster graphics file format that supports lossless data compression. Basically, an image file!
- (.skn) -> It’s a file that contains information about the model of mostly champions and cannot work in-game without an (.skl) file!
- (.skl) -> It’s a file that contains information about the skeleton of the model of mostly champions and cannot work in-game without an (.skn) file!
- (.anm) -> It’s a file that contains data regarding the animation of models in-game!
- (.sco) -> It’s a file mostly used for particle models and usually doesnt require a (.skl) file to work, but can have one!
- (.scb) -> It’s basically the same as the (.sco) format type, but these files are binary and are not mostly used for models but for paths for particles to orient them where to go!
- (.blnd) -> It’s a file that contains information about all of the animations of the selected champion!
- (.inibin) -> It’s a file that tells the game what is the name of the files to be used, so that the game knows what to use for each champion!
- Make a folder named “Work” where you are going to keep all the necessary files. Inside this folder make 3 subfolders named “Checkpoints”, “Models” and “Textures”. Inside the “Checkpoints” folder you will keep all your saved Maya scenes (always Maya Binary format), inside the “Models” folder you will keep all the model parts you used to make your full model in (.obj) or (.dae) format and inside the “Textures” folder you will keep all the textures and UV maps for your model. The purpose of this step is to easily arrange your work and have it easily accessible, this step is clearly optional!
- Open Autodesk Maya and turn the Menu set menu to “Polygons”. Open outliner (Window->Outliner) and UV Texture Editor (Edit UVs->UV Texture Editor). Keep the outliner on the right of your maya scene and minimise the UV Texture Editor for now!
- Assembly your model so that it generally fits the skeleton to be used. Once you put all your model parts in place, go to the UV Texture Editor and make the UVs Map as you want it to be. Make sure that no UVs are overlapped and that they are all placed within the “0 to 1” (grey) area. Then, inside the UV Texture Editor, hold right mouse button, select “UV”, drag with your mouse to select all the UVs, go to Polygons->UV Snapshot and save it anywhere you want with these settings! (!) *(check at the end of this post to see what this exclamation mark symbol means)
- Go to Mesh->Combine and make sure you have these settings (to adjust the settings click on the little square on the right of the operation)
Then go to Edit->Delete All By Type->History. If you see any history remains except your mesh in the outliner, delete them by selecting them in the outliner and pressing backspace. After you do these, rename your mesh to something short like “Full”, “Mesh”, “Model” etc!
- Now, go to Object Mode (press F8) and select the mesh in the outliner. Then go to Normals->Unlock Normals. Once you do this, enable “smooth shade all” and uncheck “two sided lighting”. For the normals to be correct, the entire model should be black on the outside. If you see any polygons being constantly grey (rotate the model a bit to make sure it’s not the lighting that makes the polygons seem grey while they are black), then select them in Face Selection Mode (press F11) and go to Normals->Reverse with these settings
Once the entire model is black on the outside, turn two sided lighting back on and it should turn back to normal (grey)!
- Import the default (RIOT’s) skl file you want if you haven’t already done this and adjust the bones so that the joints on their sides are at least partly connected to the mesh. Do not move the bones, only rotating them is recommended. Do not rename or delete bones or buffbones under any circumstances. Once you do this, turn the Menu set menu to “Animation”, go to Skin->Bind Skin->Smooth Bind and make sure you have these settings! (!)
- Go to Vertex Selection Mode (press F9) and select all the vertices of the mesh (they should turn yellow). Then go to Skin->Edit Smooth Skin->Paint Skin Weights Tool and make sure you have these settings
Once there, go and paint the skin weights of your model as you find it appropriate! Painting weights is the only step that can be left to be made last once reaching this point, and it is not needed for exporting the (.skn) file (just in case you want to test if you did everything else okay and the model successfully exports). Though, painting weights is an essential step for the animation of your model and it’s not meant to be left at all!
- Go to Object Mode and select the mesh in the outliner. Then move the cursor over the mesh and drag right mouse button, while holding it, downwards and go to Assign Favorite Material->Layered Shader. Then, without changing anything, go to Window->Rendering Editors->Hypershade and to the window that opens choose Edit->Delete Unused Nodes! (!)
- Go to File->Export Selection and export it as “League Of Legends – export skin” to a location of your liking. Done!
NOTE! If any errors (red warnings in the command response) occur at any point and you cannot troubleshoot them, copy paste in the comments section below the last 4-5 lines inside your Script Editor!
–In case you experience any game issues while having installed a custom Model of your’s, like BugSplat, game crashing, invisible Model in-game or any Model deformations, try checking the following ones since these are the most common reason this is happening to you:
- Mesh and Skeleton/Buffbone Names – keep the mesh name simple and short and never change the skeleton/buffbone names!
- Normals – make sure you have done them right!
- Holes in your Model and bad geometry – try using the Mesh-Cleanup operation as many times needed to fix these!
- Skeleton – u might have mistakenly “damaged” the skeleton, so i suggest unbinding the model, deleting this one and importing a new one as it is directly from RIOT!
- Skin Weights – in case you spot any model deformations during animations in-game, then you should go back in Maya and fix your skin weights, unless you have used any custom animation files that could be causing this!
(!) = It is recommended, yet optional, that at the end of this step you save your maya scene with a different name so that in case something gets broken during the entire process, you won’t have to do everything from the start (for instance, save from “Maya_Scene_0” to “Maya_Scene_1”)!
-This guide is dedicated to:
- BaeckerSkins – The one who helped me a lot and basically taught me how to make custom skins when i first started!
- Yorû – The lovely person who inspired me to make this guide and helps me with some of my projects!
- King – A very good and promising new custom skin maker who i recently helped make his first remodel. I wish him the best!
–For any questions regarding the entire procedure of custom skin making, feel free to ask in the comments section below. I will only be answering serious and thematically related questions ASAP. Dropping a Like to this post would really be appreciated and support me to make such stuff in the future! 🙂
–I wish you all Good Luck and to enjoy your little journey to the open world of custom skins. Welcome aboard!
Disclaimer: The MapSkins editors are not responsible for this guide, and while we strongly believe this guide may help you, we also encourage you to take a look on other guides if you need further instructions on related topics on how to create custom skins:
Intro to Skin Creation by Yurixy
Intro to Model Creation by Crauzer
Intro to defining different materials of a Model by Crauzer
Intro to idle Particles by Crauzer