Command Palette

Search for a command to run...

Blog Art

Blog
Tutorial

(Some) Effects To Elevate Ray-MMD

CC BY-NC-SA 4.0

10 Mins Read

1912 Words

Lise

Contributor

Welcome to this short guide. The basic configuration of Raycast Shader for the video test was done entirely by the talented dendewa, who published the necessary instructions and materials on their DeviantArt in 2021. I am attaching the link once again, as it is essential for this guide to be functional. Therefore, I will not mention anything about the instructions authored by him, other than a few slight modifications I made to some parts. I apologize in advance if the instructions are confusing or contain errors. Please comment if this happens through the means provided below.

Attention

Before we begin, I would like to make a few clarifications and warnings:

  1. This is NOT a tutorial suitable for BEGINNERS. It will not explain: how to get started with Ray-MMD, how it works, how to hide objects in the MME tabs, how to add other effects to it, etc. The reason I emphasize this so much is because, if that were the case, everything mentioned here could confuse you and lead to frustration when things are not working properly.

    The main purpose of this document is to share settings for some effects that, in addition to Raycast, I use in the rest of my videos to enhance the atmosphere or add finishing touches. If you have any questions about this or the dendewa tutorial (to the best of my ability), I will answer them through the video comments or through my deviantArt account notes. However, depending on the complexity of the questions, I may redirect you to other tutorials ^^

  2. In his document, dendewa lists the minimum requirements for running the latest version of MMD, but not for the version of Ray-MMD used. My hardware specifications are as follows:

    • Processor: Intel Core i9-12900HK
    • RAM installed: 64 GB
    • GPU: Intel Iris Xe

If your CPU is an i7, it is likely that you can run Raycast1.5.2 with (perhaps) some drops in FPS. And I know from experience that on i5 and i3 it IS possible to configure the shader satisfactorily, but the FPS will be very low and the limited capacity of the factory - integrated graphics cards will generate errors in the ray environment (some more noticeable than others, especially if you modify ray.conf). That said, I disclaim any responsibility for damage or failure resulting from ignoring the above technical warnings and the instructions in this guide.

Now, let's begin the tutorial!

Render by Lise

Needed Resources

NameLink
Advanced Physical Lighting by dendewa (finished)Link
Ray-mmd 1.5.2 肌色 5セット by MARUSULink
DigitalRipple by Beamman-P (optional)Link
msColorCorrection_ver.1.0 by ましましLink
DD Lut Library 2.4 by dendewaLink
msEdgeChroma_ver.1.1 ましましLink
ikBokeh by ikeno (optional)Link
ikCinemorph by ikeno (optional)Link
LightBloom by Rui (optional)Link

Before Starting

The effects marked as optional in the previous section were designated as such because they do not significantly affect the color balance and saturation of the final image. However, they do have the great advantage of adding a more elaborate touch.

You will need to load the ikClut suggested in Advanced Physical Lighting for best results, without modifying values in Accessory Manipulation. If you add a scene, the shadows in the TDA model (or any other) will not look the same as in the sample video. If you want to make a more polished projectby adding a stage, you will need to modify the positions of the lights and/or manipulate how shadows affect the model in the tabs of the MME window dow (SSAO, PSSM, ShadowMap).

Now, the first major deviation we're going to have from Advanced Physical Lightingis the skin. Load the MARUSU skin material onto your model. You can use any of the ones available in the skin_normal folder to achieve the tone you want (especially the variations named normal(#)_5 look pretty good with the lighting we're going to create), but if you want to apply the specific .fx shown in the video, it is the following:

Render by Lise

The second major deviation from Advanced Physical Lighting is that we will include a VolumetricSphere.pmx from ray-mmd-1.5.2 -> Fog to add dynamism to camera zooms in and out (as well as darkening the atmosphere in general). To program it, simply move these sliders:

NameValue
Range+1.0000
Intensity-0.6400

Step 1: Replace ray.conf

If you don't feel comfortable completely replacing your ray.conf with the one provided in this tutorial, create a backup copy and name it so that the script doesn't confuse it with the new version (e.g., ray_copseg.conf). Once done, copy and paste the new file into the Ray -MMD main folder. If you have successfully completed this step, the image on your screen should look something like this:

Render by Lise

This step is crucial to ensure the similarity of the results presented.

Step 2: Modify ray_controller.pmx values

Modify the values of the following sliders in ray_controller.pmx:

NameValue
Temperature-0.2300
BloomThreshold0.4570
BloomStarFade1.000

As a result, your screen should look something like this:

Render by Lise

Step 3: Digital Ripple (OPTIONAL)

Load DigitalRipple.x and open DigitalRipple.fx in your preferred noteeditorapplication. Modify the values in the file highlighted by the box:

Render by Lise

In Accessory Manipulation, enter the following values for DigitalRipple.x (imagine that the display is ticked lol):

Render by Lise

Step 4: msColorCorrection

msColorCorrection is one of my favorite effects to use with Raycast, as it allows you to modify reflections and black and white balance without having to mess with the advanced ray settings. However, today we are only going to use the Contrast slider. Why load this effect if ray_controller can already do that? Simple: the latter affects the global Ray-MMD environment (i.e., it affects the calculation of parameters), while the effect in this step applies a “filter” that better preserves shadow depth (i.e., t he calculation of parameters is maintained and msColorCorrection is equivalent to post-production editing).

Before configuring the effect, it is necessary to mention that the .pmx controls for msColorCorrection and msEdgeChroma ARE NOT TRANSLATED INTO ENGLISH. In other words, this means that when you load msColorCorrectionController.pmx in MMD's English mode, you will see this:

Render by Lise

Please follow these steps carefully if you are unfamiliar with the effect, and if when you change the program language to Japanese, instead of Null_03, コントラスト.5 does not appear:

  1. Load msColorCorrection.x and do not modify it in the accessories tab.

  2. Load msColorCorrectionController.pmx. In English, it will appear under the name Null_00 in the Model Manipulation tab.

  3. Immediately, load the Default.vmd motion file, which is included in the effect folder.

Render by Lise
  1. As shown in the MMD tab image at the beginning of this section, go to Facial Manipulation -> Eyes -> ‘Null_03’/' コントラスト.5' and set the slider to 0.3500.

  2. Change the order of your accessories so that it looks like this:

Render by Lise

Now, your render should have a slightly more muted/matte look:

Render by Lise

Step 5: DD Lut Library 2.4 (Strong_Curve&DD_Cinematic)

In this step, we will add two modified ikClutsfrom the same library. It is important that you load them in the order indicated.

  1. Open DDLL2.0 -> Luminance -> Strong_Curve -> ikClut.x. Load it into your project and modify:
NameValue
Tr0.2000
  1. Open DDLL2.0 -> RGB -> DD_Cinematic -> ikClut.x. Load it into your project and modify:
NameValue
Tr0.4000

Your list of accessories should now have 3 ikCluts in a row.

Render by Lise

Example of how your render should look now:

Render by Lise

Step 6: msEdgeChroma

My favorite Mashimashieffect. As its name suggests, it gives your models a chromatic effect on the edges, plus 5 other parameters to modify how it is presented. Below, I will leave a fairly obvious example of its use.

Render by Lise

To load it, follow the same procedure as for msColorCorrection, except that now you won't need to load any motion files or move the sliders individually... Because EdgeChroma uses bones to control it. When you load msEdgeChromaController.pmx, it will also appear with the name Null_00 and you will need to display all its bones in Bone/Frame Manipulation. If you can switch to Japanese mode, you can skip the image; if not, these are the actual names of the bones:

Render by Lise

Once identified, write these values on the indicated bone:

NameXYZ
Bone X50.000.000.00
Bone Y20.000.000.00
Bone Z50.000.000.00
Bone Ry100.000.000.00
Bone Rz-50.000.000.00

And voilà! At this point in the tutorial, you already have a render that is essentially the same as the sample video. All you need to do is add your usual textures in MaterialMap and have fun experimenting with all the effects (or even adding your own) UwU

Render by Lise

P.S.: The before and after of some parameters (such as Rz) are more noticeable when you have your models with textures (Raycast materials). If you want the chromatic effect to be more noticeable from a distance, set the X bone value to greater than 100.00 or less than -100.00 (negative numbers change the colors of the chromaticism!).

Step 7: ikBokeh (OPTIONAL)

In my case, I like to “parent” ikBokeh.x to the bone of the head of the model I am using, so that the head and part of the torso are never out of focus. Whether you do this or not is up to you, but I cannot guarantee that it will focus correctly with the values I give he

The values you will enter in ikBokehController.pmx are:

NameValue
Focus Range0.1500
Bokeh+0.2600
Front Bokeh-0.7900
CoC Size0.5000
Emphasize0.4000

Load Chromatic.x from the ikBokeh folder and set Tr = 0.70

Render by Lise

Step 8: ikCinemorph (OPTIONAL)

Finally, we arrive at an effect that doesn't have much behind it, it just follows the image.

Render by Lise

To change the brightness intensity, modify the Tr parameter.

Render by Lise

Step 9: LightBloom (OPTIONAL)

What sets LightBloom apart from ray_controller's BloomThreshold and other old favorites like AutoLuminous is that it includes the option to simulate dust particles stuck to the “camera” lens, as you can see in the image.

Render by Lise

It works especially well for giving an ethereal or realistic touch (depending on the context) to an image or video. I personally use it a lot for sunset lighting, which is when the light hypothetically hits the camera lens directly. The other advantage of this effect, and I'm not kidding, is that it has many sliders to modify the brightness level and color by depth. In other words, it's quite customizable.

To program it, you first need to load LightBloom with Dirt Map.x and LightBloomController.pmx

Render by Lise

And finally, set the sliders to the following positions:

NameValue
Bloom Threshold0.4500
BloomColor AllH+0.7500
BloomColor AllS+0.1900
DirtColorH+0.4000
DirtColorS+0.2800
DirtColorV+0.3500
BloomColor 1stV-1.0000
BloomColor 2stV-0.4700
BloomColor 3stH+0.4900
BloomColor 3stS+0.7000
BloomColor 3stV-0.8100
BloomColor 5stV-1.0000
Render by Lise

Now, this is the end of the guide! I hope you enjoyed it, found it helpful, and are looking forward to the next one.

With love, Lise.

APENDIX: Graphic comparison

Render by Lise
Render by Lise

Lise

Contributor

Support

The following article is attributed to Lise. All intellectual property rights remain with the original author.

Published via DENDEWA LAB under CC BY-NC-SA 4.0.

Ready to render? Start building your scene with our assets. Available in Public and Private versions.

Explore DENDEWA LAB latest projects and innovations. Join us and grow together.