For those of us with low-performing laptops or PCs, creating in MMD can be a challenge. MMD uses much more computer power than many of us expect, especially when using MMEs like Raycast, and so saving as much performance power as possible is an absolute necessity. However, one issue that always lets us down is how so much of the graphic power needed to display models, accessories and effects often goes to rendering subsets that you won’t even see in the final product. So, how can you divert that power from the hidden assets to the visible ones? This is where culling comes in: optimise computer assets as you work in MMD by removing unseen parts of models and stages.
How to Optimise your Engine using MME Subsets
The term ‘culling’ in its most basic sense means “the action of sending an inferior or surplus farm animal to be slaughtered” (Oxford Online Dictionary, [23/08/2020]). When considered in digital art terms, the ‘surplus farm animal’ should be considered any asset that you can’t see in the rendering-frame, and is therefore expendable. Culling in video game design (which is where my inspiration to publicise this power-saving technique comes from) is the action that describes when you see the environment slowly load in around you as you get closer to it: essentially, the designer has programmed certain assets to only become visible when they are in eyeshot of the player, in order for the computer/ console to not get overwhelmed at the amount of assets it needs to render.
Ok, so we have the definition down and we know how it works, but how do you actually do this in MMD? Well, buckle up buckaroos, I’m about to show you how to get that smooth 60fps quickly and efficiently.
[SIDE NOTE: This tutorial will be a two parter, as depending on the asset you are culling, complete culling in MMEffect is very unlikely to be entirely successful. While this tutorial will describe how to cull using only MMEffect, my next tutorial will show you how to cull completely. ]
For this tutorial, you’re going to need a version of MikuMikuDance that supports MikuMikuEffect. At this point, you should be using latest version of MMD we currently have, which you can download it from our MMD downloads page here: https://learnmmd.com/downloads/
So, here’s an unused project I was working on for my radio show The Art of Gaming. This piece is incredibly simple and only features a PS4 controller, a gradient plane and a hand holding it. But when you zoom out of the frame…
There’s actually a whole model lying right below the frame! This model is highly detailed, and most of its parts aren’t going to be in the frame shot. So, in order to save computer power, we need to remove these parts of the model.
First, open the MMEffect tab in the top right corner and right click “Effect Mapping”, just as you would to apply shaders. Find the asset that you want to cull, right click on that asset and choose “Subset Extract”.
The list of subsets here equals the materials of the asset you would find if you opened it in PMXe. You see those check-boxes on the left of every subset? These ticks determine whether the subset is visible in-engine or not. Currently, I have unchecked the jeans subset, which has made the jeans disappear. When culling in MMEffect, all you need to do is uncheck each subset that you don’t see in the final frame. For this image, every subset of the model apart from the left arm can be unchecked.
Now that I’ve culled the model, you’ll notice that both arms still load due to being built into the same subset. Unfortunately for this model, complete culling cannot take place without PMXe to separate the arms. As said before, this technique will feature in my next tutorial╰(˵ヘωヘ✿)╯. But for now, this is good enough for what I need right now. Just like with applying shaders, click “Apply” and “OK”. Make sure to save your project regularly to avoid having to cull over and over when you come back to projects.
And voila! (CLICK to see the full-size image)… Now you can finish your artwork much more quickly! Also bare in mind that this technique is not exclusive to models, but can work on stages and accessories too, so you can cull as many assets as you need to!
I hope this tutorial has been informative, this is my very first tutorial written for LearnMMD, and there will be many, many more to come! （⌒▽⌒)ゞ
Chestnut model by Chestnutscoop (full credits here: http://fav.me/de3rdse)
Credits for the final artwork, along with the 3k art render can be found here: http://fav.me/de3t4r1)
Gradient plane and PostPointLight assets by Chestnutscoop (the PostPointLight assets are currently unreleased, but I’m hoping to release them very soon! I will also write a tutorial on how to use them ^^)
Have fun with MikuMikuDance!
– SEE BELOW for MORE MMD TUTORIALS…