Inkipedia:3D Models

From Inkipedia, the Splatoon wiki
Revision as of 15:28, 6 September 2021 by Shahar (talk | contribs) (Added special thanks and an example video)
Shortcut:
INK:3D

The 3D Models project's goal is to construct pseudo-3D images of the weapons in Splatoon that can be freely rotated.

Example

Template:!! This is not for the faint of heart. It requires a bit of knowledge on how Blender works and a lot of time and patience since a lot of models will not be centered correctly by default or would require manually editing the textures, thus requiring plenty of tweaking to get them ready for the process.

About the Addon

This addon uses Blender's render engine to render and then stitch together images of an object in various positions to create a format that can be published to the wiki. In essence, it rotates the model around and takes pictures at various positions. It then stitches these images together and produces the data needed for it to be displayed on the wiki page.

Requirements

The rendering system works as a Blender addon, so you will need to install the latest version of Blender. You will also need the latest version of the addon itself.

Select "Code" and then "Download Zip" from the menu and you should be good to go.

Initial setup

If you have never used Blender before, you will want to play around with it a bit to get used to the basics.

This might be a good video to follow: YouTube ABSOLUTE Beginner Basics of Blender

Installation

Once you have got Blender up and running, you will need to install the Addon itself. This is pretty straightforward.

Click Edit → Preferences and select the Addons sub-menu.
Click on the "Install" button at the top right and then select the zip file you have downloaded.

You should see the SplatoonImageGenerator addon pop up. Tick the checkbox to the left of the menu to enable the addon.

Now that you have got the addon installed, you will need to install the libraries the addon needs to run. Expand the menu that just appeared with the dropdown arrow and click on "Install Dependencies". This will install the Python library Pillow so that it can be used by Blender.

Troubleshoot

In the case that the button does not work, or an error appears either near the button or on the bottom bar, don't panic! Open Command Prompt and navigate to the location where your python.exe application is by entering the command cd <Blender Folder>/<Blender Version>/python/bin. Then, enter the command python -m pip install pillow to install the libraries required.

If this does not work either, you might be successful copying the Pillow installation folder from your global Python site-packages to Blender's site-packages. You'll have to find your global site-packages, since it differs per user, but Blender's site-packages is located in <Blender Folder>/<Blender Version>/python/lib/site-packages. You'll need both the PIL and Pillow folders.

Once you successfully install the required libraries, you should see a new category in the tools panel (press N on your keyboard to open the tools panel when in the 3D layout).

That's it! You're all set up and ready to start loading in your models.

Getting models

You can get almost all of the Splatoon models from https://www.models-resource.com/nintendo_switch/splatoon2. The addon has only been tested with a select few weapon models, so don't be too surprised if it does not work out of the box for some of the other types. However, with a bit of tweaking, you should be able to take images of any model of your choice, Splatoon or otherwise!

Importing models

Importing models is quite straightforward, simply go to File → Import → fbx, and select the model you would like to take an image of.

Using the addon

Addon structure

A picture of the addon in Blender

The main meat of the addon is its ability to rotate and render 3D models to form the pseudo-3D images you see around the wiki. However, it comes with a few helper functions to make your life easier when rendering the models. The helper functions can be found under "Basic Settings" and help complete commonly used tasks on the model to prepare it for rendering. Their exact functions are as follows:

Base armature

This is to select the top-level armature object of the model, which will dictate which model is rotated and processed. If something is not working right, check that the correct armature is selected!

Rotate and Scale

Rotate and Scale does exactly what it says, it rotates the model and scales it up so it is easier to navigate from the default Blender view. It relies on the fact that each model comes with the same starting rotation, though, so take care to check it has done its job correctly.

Position Cursor

The addon rotates the 3D model around the 3D cursor when rendering, rather than object origin, since the origin is rarely at the centre of mass of the model. This button places the 3D cursor at an approximate midpoint of the model. Again, it is not infallible, so check that it looks approximately right before rendering.

Position Camera

This button positions the camera to look at the model side-on, with enough margin around the edges to leave some space if the model grows when rotating. Check that the model is centred well and that it fills the camera with a bit of margin.

Check Object Rotation

This button is simply there for a check, it rotates the model as it would be rotated during rendering, to see whether it fits within frame and if rotation is being calculated accurately. Just ensure that the model spins around and pivots up and down.

Fix Object Material

For some reason, Splatoon models are imported with backfaces visible. This button simply disables this for all meshes, so that you do not have to do it yourself. You can easily see what it does to an imported model in the Rendered view.

Set HDRI

This just adds a skatepark HDRI to the scene to add some organic lighting.

Some further options are available in Advanced Settings:

X Rotations

Sets the number of rotations in the X-axis displayed on the final image. More leads to a smoother rotation experience, at the cost of higher storage space.

X Resolution and Y Resolution

These determine the resolution of the image rendered by Blender, NOT the final generated image. There does not appear to be much of a use for this, except to tweak the aspect ratio, but it has been left in anyway.

Output Format

Does exactly what it says. Choose between PNG (transparent) or JPEG (lower file size)

Finally, to render, there are the following options:

Output Folder

The folder where the final image will be placed. CAUTION: The addon uses a folder called 'tmp' within the selected folder to store images, so maybe make a separate folder to store the outputs if you already have a folder called tmp with the important stuff.

Render to Wiki Image

Renders the final images, generates a weapon.{output format} file and a weaponoffsets.txt file with the description needed to get it to work.

Taking images

The basic steps to take an image are quite straightforward. Import your model, select the armature, go down the list of buttons in Basic settings, select your output folder and render! However, use each of the steps with care, as every Splatoon model is different and the addon may make mistakes. Check each step to see whether it has worked as intended. Checks are as follows:

Rotate and Scale

Check that the model is in the right orientation (muzzle facing left/right, handle facing down, etc.) If this is not the case, you will have to rotate the armature manually to fix it.

Also, check that the model rotates as intended (i.e. local axis are lined up). The local Y-axis should pitch the armature up and down as if it were aiming towards higher and lower targets. If this is not the case, you will have to reposition the armature and apply scale as necessary to get this to happen.

Position Cursor

This usually works fine, but check that the cursor is at the approximate centre of the model. You can also set Blender's pivot point to a 3D cursor, and check that the model rotates naturally around it. If not, reposition the armature (or 3D cursor) so that it is about right.

Position Camera

Check that the model is fully framed and that when rotated it never leaves the frame. You could, at this point, zoom the camera in to frame the model even closer to get a higher resolution final image, being careful that nothing leaves the frame.

Fix Object Material

Just check that the mesh does not look weird and inside-out after using this. Sometimes you will not have to use this button at all. If the material still looks wrong because of colour issues, shininess, surface detail or missing glow, check Advanced Usage to modify the material.

Set HDRI

Check that the model lights up in rendered view. If you do not want to use the skatepark HDRI, simply select your own and skip this button, which would normally overwrite it.

Advanced usage

Setting materials

If your material looks a bit off, the FBX import likely did not use all the textures needed for your model. It is easy enough to fix this, but some experience with Blender's shader editor is useful but not necessary. Here are some common issues and their fixes:

Missing glow

The model is likely missing an emission shader. Add an image texture to the object material and import the texture ending with _emm from the model's images folder. Connect this as the fac value to a MixRGB node and plug this into the emission input of Principled BSDF. Turn up the emission strength, set one colour to black and the other to one of your choosing, and you should be good to go.

Missing surface detail

It is possible that the normal map for the model is not being applied strongly enough. Turn up the strength on the Normal Map node connected to the normal input of the Principled BSDF.

Missing colours or black sections

This might be due to a Team Colour not being applied. Add an image texture to the material and import the image ending with _tcl from the model's images folder. Connect this as Fac to a MixRGB node. Connect the albedo texture that should be already connected to Base Color to one color input. Choose a color for the other input and plug the output of the MixRGB into the Base Color of the Principled BSDF. This hopefully should fix any colour issues with the model.

Not shiny enough

Possibly due to a missing metallic texture or roughness texture. Check which nodes on the Principled BSDF have nothing connected, out of Metallic and Roughness. Find the image ending with _mtl for Metallic, or _rgh for Roughness in your model's images folder. Add the ones you need as image textures and connect them up to the relevant node on the Principled BSDF block.

Changing lighting

Feel free to add any other lighting if needed, if you feel it improves the look of the model. For instance, consider area lights to improve surface detail and cast shadows or coloured sunlight to add a tint to the model. You can also change the HDRI to add a different lighting effect. Just remember not to press the "Set HDRI" button as this will overwrite any HDRIs you use.

Uploading your image

Upload your weapon.png image file with Special:Upload. In-case of files larger than 5 MB size, upload with Special:UploadWizard.

Copy the text in weaponoffset.txt to the file's page and enter the link address of the file page to the URL parameter between the <nowiki> tags.

Models repositories

Help develop the addon!

Needed features

Auto import textures

It would be nice to have a system that would automatically import emission maps, team colour textures etc.

Known bugs

Github

You can find the Github here: https://github.com/RadiatorSyrup/SplatoonImageGenerator

Any contributions are very welcome.

Simple example process

Weapons

This is a list of weapon models that need render or are finished. Needed weapons have blank cells while finished ones have blue cells with letter ratings. The ratings are based on their quality and resemblance to the weapon icons. Ratings are S,A,B,C,D,F,X,?. If two ratings are present the weapon may have two stages (for example, folded and unfolded of the Brellas)

The renders are actively being updated. Those that have been changed are marked with an apostrophe, but please note that the old and new ratings might not match.

Weapon models
Name
Mains
Shooter
Sploosh-o-matic A
Neo Sploosh-o-matic A
Sploosh-o-matic 7 A
Splattershot Jr. A
Custom Splattershot Jr. B
Kensa Splattershot Jr. B
Splash-o-matic A
Neo Splash-o-matic A
Aerospray MG A'
Aerospray RG A'
Aerospray PG A'
Splattershot A
Tentatek Splattershot A
Wasabi Splattershot
Kensa Splattershot A
Hero Shot Replica A
Octo Shot Replica A
.52 Gal A'
.52 Gal Deco A'
Kensa .52 Gal A'
N-ZAP '85 A
N-ZAP '89 A
N-ZAP '83 A
Splattershot Pro A
Forge Splattershot Pro A
Berry Splattershot Pro
Kensa Splattershot Pro B
Dual Squelcher
Custom Dual Squelcher
.96 Gal A'
.96 Gal Deco A'
Jet Squelcher A
Custom Jet Squelcher A
Blaster
Luna Blaster A
Luna Blaster Neo A
Kensa Luna Blaster A
Blaster A
Custom Blaster A
Hero Blaster Replica A
Range Blaster A
Custom Range Blaster A
Grim Range Blaster A
Clash Blaster C
Clash Blaster Neo C
Rapid Blaster A
Rapid Blaster Deco A
Kensa Rapid Blaster A
Rapid Blaster Pro A
Rapid Blaster Pro Deco A
Burst Fire or Semi-Automatic
L-3 Nozzlenose A
L-3 Nozzlenose D A
Kensa L-3 Nozzlenose A
H-3 Nozzlenose A
H-3 Nozzlenose D A
Cherry H-3 Nozzlenose A
Squeezer B
Foil Squeezer B
Roller
Carbon Roller A
Carbon Roller Deco A
Splat Roller A
Krak-On Splat Roller A
CoroCoro Splat Roller
Kensa Splat Roller A
Hero Roller Replica A
Dynamo Roller B
Gold Dynamo Roller B
Tempered Dynamo Roller
Kensa Dynamo Roller B
Flingza Roller B
Foil Flingza Roller B
Brush
Inkbrush A
Inkbrush Nouveau A
Permanent Inkbrush A
Octobrush A
Octobrush Nouveau A
Kensa Octobrush A
Herobrush Replica A
Charger
Classic Squiffer A
New Squiffer A
Fresh Squiffer A
Splat Charger A
Kelp Splat Charger
Firefin Splat Charger A
Bento Splat Charger
Kensa Charger A
Hero Charger Replica A
Splatterscope A
Kelp Splatterscope
Firefin Splatterscope A
Bento Splatterscope
Kensa Splatterscope A
E-liter 3K
Custom E-liter 3K
E-liter 4K A
Custom E-liter 4K A
E-liter 3K Scope
Custom E-liter 3K Scope
E-liter 4K Scope A
Custom E-liter 4K Scope A
Bamboozler 14 Mk I A
Bamboozler 14 Mk II A
Bamboozler 14 Mk III A
Goo Tuber A
Custom Goo Tuber A
Slosher
Slosher B
Slosher Deco B
Soda Slosher B
Hero Slosher Replica B
Tri-Slosher A
Tri-Slosher Nouveau A
Sloshing Machine A
Sloshing Machine Neo A
Kensa Sloshing Machine A
Bloblobber A
Bloblobber Deco A
Explosher A
Custom Explosher A
Splatling
Mini Splatling A
Zink Mini Splatling A
Refurbished Mini Splatling
Kensa Mini Splatling A
Heavy Splatling A
Heavy Splatling Deco A
Heavy Splatling Remix A
Hero Splatling Replica A
Hydra Splatling A
Custom Hydra Splatling A
Ballpoint Splatling B
Ballpoint Splatling Nouveau B
Nautilus 47 B
Nautilus 79 B
Dualies
Dapple Dualies A
Dapple Dualies Nouveau A
Clear Dapple Dualies B
Splat Dualies A
Enperry Splat Dualies A
Hero Dualie Replicas A
Kensa Splat Dualies A
Glooga Dualies A
Glooga Dualies Deco B
Kensa Glooga Dualies A
Dualie Squelchers A
Custom Dualie Squelchers A
Dark Tetra Dualies A
Light Tetra Dualies A
Brella
Splat Brella A A
Sorella Brella A A
Hero Brella Replica A A
Tenta Brella A A
Tenta Sorella Brella A A
Tenta Camo Brella A A
Undercover Brella A A
Undercover Sorella Brella A A
Kensa Undercover Brella A A
Stringers
Tri-Stringer B
Splatanas
Splatana Stamper A
Subs
Splat Bomb B
Suction Bomb B
Burst Bomb B
Seeker
Curling Bomb B
Autobomb B
Disruptor
Toxic Mist B
Point Sensor B
Splash Wall B
Sprinkler B
Squid Beakon B
Fizzy Bomb B
Torpedo ? B
Specials
Inkstrike
Inkzooka
Killer Wail
Kraken
Tenta Missiles
Sting Ray
Inkjet
Splat-Bomb Launcher
Ink Storm A
Baller B
Bubble Blower
Ultra Stamp
Zipcaster S S
Kraken Royale A A
Tacticooler A A
Others
Princess Cannon
Rainmaker B
Ink Cannon
Single-Player 1st slot: Splat Bomb
Single-Player 2nd slot: Burst Bomb/Curl Bomb
Single-Player 3rd slot: Seeker/Autobomb
S2 Weapon Main Hero Charger Replica Marie B
S Rainmaker beta / S2 Rainmaker Octo Expansion B
S2 Weapon Main Hero Shot Lv.0 A
S2 Weapon Main Hero Shot Lv.1 A
S2 Weapon Main Octo Shot Lv.0 Green A
S2 Weapon Main Hero Roller Lv.1 Red em A
S2 Weapon Main Hero Charger Lv.1 Red em
S2 Weapon Main Hero Slosher Lv.1 Red em B
S2 Weapon Main Hero Splatling Lv.1 Red em
S2 Weapon Main Hero Dualies Lv.1 Red em A
S2 Weapon Main Hero Brella Lv.1 Red em A A
S2 Weapon Main Hero Blaster Lv.1 Red em A
S2 Weapon Main Herobrush Lv.1 Red em A
Grizzco Blaster
Grizzco Brella
Grizzco Charger
Grizzco Slosher
S2 Octo Hero Blaster/Roller/Slosher/Brush/Dualies/Brella ?

Special thanks

  • Darkid from TF2wiki for the HLMV script.
  • мяFunreal from Left 4 Dead mod Discord server for the HLMV help.
  • Radiator Syrup from freelancer site for the Blender add-on.
  • Shahar for the implementation to Inkipedia.