Specifications: Shaders†
This section describes each shader.
Shaders should be changed according to what you want to achieve, so refer to this explanation and sample data to specify the shader you are looking for.
- Recommended Shaders
General Background Models: a_n_rm
Simple Textured Background Models: map
Addition: map_nolit_add
Translucent: map_nolit_alpha
Glass: glass
Water: transparent_normal_water
Leaves Swaying in the Wind: map_wind_discard
Shader Descriptions†
2dmap_skybox†
Specify a background material with a 2D texture.
The material with this shader selected will be available for selection in "Map Settings > Rendering > Background Material".
a_n†
This shader uses physics-based shading with an albedo map, a normal map and a height map available for setting.
Height Map†
By assigning a grayscale texture, you can create pseudo height differences (parallax mapping) on a flat surface.
White areas of the texture appear as “raised,” while black areas appear as “recessed.”
Shader parameters related to the height map include “Height Scale,” “Parallax Type,” and “Invert Height Map.”
(!) Parallax mapping simulates height differences. Depending on camera movement and height map settings, visual artifacts may occur.
- Height Scale
Sets the depth of the surface unevenness. (0–0.1)
Higher values increase depth but make artifacts more likely when the viewpoint moves.
- Parallax Type
- None
Turns off parallax mapping.
- Parallax
A simple method for expressing parallax.
It has low processing cost but is more prone to artifacts when using deeper height scales or during camera movement.
Self-occlusion is not supported.
Effective for shallow surface details, such as small bumps on walls.
- Parallax_Occlusion
Less prone to artifacts during camera movement and supports self-occlusion.
However, it has a higher processing cost.
Effective for surfaces with deeper unevenness, such as cobblestone or brick walls.
- Invert Height Map
When enabled, the height map is inverted: white areas appear recessed, and black areas appear raised.
a_n_discard†
This shader uses physics-based shading with an albedo map, a normal map and a height map available for setting.
It is also possible to use the alpha channel of an albedo map to discard alpha.
a_n_rm†
This shader uses physics-based shading with an albedo map, a normal map, a mask map and a height map available for setting.
This is the recommended shader when using physics-based shading in Bakin.
a_n_rm_discard†
This shader uses physics-based shading with an albedo map, a normal map, a mask map and a height map available for setting.
It is also possible to use the alpha channel of an albedo map to discard alpha.
a_n_rm_sss_discard†
This shader uses physics-based shading with an albedo map, a normal map, a mask map and a height map available for setting.
It is also possible to use the alpha channel of an albedo map to discard alpha.
In addition, the use of SSS (Subsurface Scattering) mask map allows for the rendering of light transparency.
a_n_rm_wind_discard†
This shader uses physics-based shading with an albedo map, a normal map, a mask map and a height map available for setting.
It is also possible to use the alpha channel of an albedo map to discard alpha.
In addition, you can specify swaying effects in the wind.
When using with grass growing on the ground, turn on "Fix Y=0".
See Creation Tips for more information.
a_n_wind_discard†
This shader uses physics-based shading with an albedo map and a normal map and a height map available for setting.
It is also possible to use the alpha channel of an albedo map to discard alpha.
In addition, you can specify swaying effects in the wind.
When using with grass growing on the ground, turn on "Fix Y=0".
See Creation Tips for more information.
character_create_hair†
This is a special shader, a hair shader for characters, used in the Bakin sample character models.
Overlay composite of vertex color and parameter hair color.
character_create_skin†
This is a special shader, a skin shader for characters, used in the Bakin sample character models.
Parts such as eyes and mouth are placed from the vertex coordinates based on the parameters.
cubemap_skybox†
Specify a background material with a texture in .hdr format.
The material with this shader selected will be available for selection in "Map Settings > Rendering > Background Material".
decal†
Special shader allows 2D images to be projected onto terrain and 3D models.
By using a height map, you can also create decals with raised and recessed areas.
- Rendering Type
Opaque (no alpha removal), Cutoff (cut off the alpha portion), and AlphaBlend can be selected.
- Use Screen Normals
When turned on, the normal of the projected object will be affected. The right side of the image below shows the state in which it is turned on.
- Allowable Angle
You can set a number between -1 and 1. Basically, 0 is acceptable.
| 1 | Only surfaces with exactly the same orientation will be displayed. In some cases, there will be areas that cannot be projected. |
| 0 | If it is not facing the back, it will be displayed. |
| -1 | It is unconditionally written on all surfaces. Textures can be projected even when stretched. |
glass†
It renders a glass-like effect.
map†
It is a physics-based extension of a shader from a non-physical based rendering.
Color textures can be specified.
map_discard†
Based on the map shader, discarding the alpha (non-transparent).
It can be used for leaves and etc.
map_nolit†
This is a shader that does not perform lighting and does not apply an environment map, but displays the color of the texture as it is.
Rendered as opaque.
map_nolit_add†
No lighting or environment map is applied, and the texture is blended with the color of the texture as it is by addition.
Rendered as translucent.
map_nolit_alpha†
No lighting or environment map is applied, and the texture is composited with the texture's alpha value, using the texture's color as it is.
Rendered as translucent.
map_nolit_discard†
Based on the map_nolit shader, discarding the alpha (non-transparent).
Rendered as opaque.
map_nolit_modulate†
No lighting or environment map is applied, and the texture is blended by modulate, using the color of the texture as it is.
Rendered as translucent.
map_notex†
Displays polygons using only vertex colors, without textures.
Performs physics-based shading.
Rendered as opaque.
map_terrain†
It is rendered in the same way as the terrain.
When a model exported using the Map Editor's "Model Export" context menu is placed on the map as a stamp, it can be used to match the appearance of the terrain.
map_wind_discard†
This shader adds vertex animation by wind to map_discard.
When using with grass growing on the ground, turn on "Fix Y=0".
See Creation Tips for more information.
toon/toonVRM/toonVRM0X†
Performs cel-shaded rendering with clear, distinct shadows.
Switch the shader according to the model being used.
- toomVRM
A toon shader for VRM 1.0 and later models.
- toomVRM0X
A toon shader for VRM 0.x models.
- Parameters
The parentheses () after each parameter name indicate that the parameter exists only in specific toon shaders.
Parameters without parentheses exist in all toon shaders.
- Rendering Type
Sets whether the material is opaque or translucent.
| Opaque | Opaque. Suitable for solid objects with no transparent areas. |
| Cutoff | Opaque. Opaque and transparent regions are clearly separated. |
| Translucent | Translucent. Suitable for objects that are transparent in the real world. Does not write to the depth buffer. |
| Translucent With Depth | Translucent. When translucent objects overlap, only the frontmost object is rendered. Writes to the depth buffer. |
- Blend Type (toonVRM, toonVRM0X)
Specifies the blending method when translucency is enabled.
| One | Uses the texture color as-is. Effective when the texture is premultiplied. |
| SrcAlpha | Uses the texture color while considering the alpha value. Effective when the texture is not premultiplied. |
- Lit Map
Specifies the main color map of the model.
- Lit Color
The specified color is multiplied with the Lit Map. This becomes the primary color of the lit areas.
- Shade Map
Specifies the first shadow map used for the shadow-colored areas of the model.
- Shade Color
The specified color is multiplied with the Shade Map. This becomes the color of areas not hit by light.
- Normal Map
Specifies the normal map that defines surface bumps and details.
- Normal Scale
Adjusts the strength of the normal map effect.
- Toon
Specifies the balance between sharp cel-style shading and smooth shading.
- Shading Position
Specifies the spread of the shadowed area.
- Lighting Mask Texture (toon)
A texture used to mask lighting results and define darker areas.
- Lighting Mask Scale (toon)
Specifies the strength of the Lighting Mask Texture effect.
- Light Saturation Scale(toon,toonVRM0X)
Specifies whether the light uses only brightness or also includes color information.
- ReceiveShadow Map (toonVRM0X)
Controls the influence range of external shadows (light shadows) using a texture. Used as a mask for areas that should not receive shadows.
- ReceiveShadow Rate (toonVRM0X)
Adjusts the strength of received shadows. Lower values reduce the shadow influence.
- ShadingShift Map (toonVRM)
Adjusts the transition position between the base color and shadow color using a texture. Allows shadow appearance to be controlled for each part.
- ShadingShift Map Scale (toonVRM)
Adjusts the influence of the ShadingShift Map. Higher values produce stronger changes in shadow boundaries.
- ShadingGrade Map (toonVRM0X)
Controls how easily shadows are applied and their intensity using a texture. Allows shadows to be strengthened or weakened in specific areas.
- ShadingGrade Rate (toonVRM0X)
Adjusts the influence of the ShadingGrade Map. Higher values make shadow intensity differences more pronounced.
- Emission Map
Specifies a constant color unaffected by lighting. By enabling Bloom in the rendering settings, glowing effects can be achieved.
- Emission
The specified color is multiplied with the Emission Map.
- Emission Intensity
Specifies the strength of the emission effect.
- MatCap
Specifies a pre-lit spherical texture. It is unaffected by scene lighting and can be used to simulate metallic or glossy surfaces.
- MatCap Intensity (toon)
Specifies the strength of the MatCap effect.
- MatCap Color (toonVRM)
Specifies a pseudo highlight color independent of environmental lighting. Can be used to express gloss and surface texture depending on surface orientation.
- Rim Light Map
Specifies a texture that defines where rim lighting is applied, making the model’s outline appear illuminated. Useful for effects where light shines from behind and emphasizes the silhouette.
- Rim Light Color
Specifies the color of the rim light.
- Rim Light Intensity
Specifies the intensity of the rim light.
- Rim Light Lighting Mix
Specifies the blend ratio between the rim light color and the regular lighting color.
- Fresnel Intensity
Specifies the sharpness of the rim light.
- Rim Light Position
Specifies the spread of the rim light.
- Cutoff Threshold
When the Rendering Type is set to Cutoff, specifies the maximum alpha value of the Lit Map to be clipped.
- Outline Type
Selects the outline rendering type.
| World | Renders outlines with a constant width in world space. |
| Screen | Renders outlines with a constant width on the screen. |
- Outline Width Map
Allows the outline width to be adjusted using the brightness of a texture.
- Outline Scale Max Distance (toonVRM0X)
Sets the maximum distance for outline thickness scaling based on the distance from the camera. Stabilizes line thickness at long distances.
- Outline Max Scale (toon)
For World-type outlines, specifies how much outlines are allowed to scale up at long distances.
- Outline Lighting
Specifies the blend ratio between the outline color and the lighting result of the main body.
- Outline Color Mode(toonVRM0X)
Specifies how the outline color is determined. Outlines can be rendered using either a fixed color or a color affected by lighting.
- UV Animation Mask
Controls with this texture whether UV animation affects the material.
- UV Rotation Animation
Specifies the speed of UV rotation animation.
- UV Scroll Animation X (toonVRM, toonVRM0X)
Specifies the speed at which the texture scrolls horizontally (U direction). Can be used to create flowing animation effects.
- UV Scroll Animation Y(toonVRM,toonVRM0X)
Specifies the speed at which the texture scrolls vertically (V direction). Can be used to express motion such as water surfaces or visual effects.
transparent_normal_water†
Use a normal map to render the water surface.
The result of the back drawing is used for the refraction effect.
- Transparency Distance: This is the degree of underwater murkiness. The opacity of the water gradually increases from the surface to the transparency distance.
- Blend Distance: This is the distance where the transparency changes from 0 to 1 in the composition of the junction with the shore. 0 makes the touching of the ground clear.
- Opaque Distance: The distance until the "Transparency Distance" and "Blend Distance" become invalid with regard to the camera position. The higher this value, the more the effects of "Transparency Distance" and "Blend Distance" do not disappear even when the camera is moved away.
- Water Fall Speed: When this shader is applied to a mesh extending in the Y direction, water will flow from top to bottom like a waterfall, and to specify the speed at which the water surface falls.
- Water Flow Direction: Specify the direction of water flow in 360 degrees.