- The hero shader in Dota 2 is extremely powerful, capable of many high-end material properties. Every hero, item, courier, and creep makes use of the shader. Each texture works in conjunction with all the others.
- All shader settings for all of a hero's items will be derived from the base hero material. The game automatically creates a single model and texture out of the hero and its currently equipped items, assigning a single shader to everything. We do not support custom item shaders that differ from the default item shader. For example, an additive item on a solid hero isn't supported, but the hero material is very powerful and supports a range of effects, so there is almost always a way to achieve the desired effect.
- We do not support double-sided materials; you will need to create geometry where a backside is needed.
- Some masks, like the Metalness Mask, Detail Mask, and Diffuse Mask, are only used on certain heroes or items.
Ogre Magi textures and shader masks:
Base Model, Color, Normal, Self Illumination, Specular, Rimlight, Base Tint, and Specular Exponent
Ogre Magi Weapon textures and shader masks:
Model, Color, Normal, Metalness, Self Illumination, Specular, Rimlight, Base Tint, and Specular Exponent
SOURCE 1 TEXTURE AND SHADER MASK CONVERSION
- Source 2 - Transparency and masks are now their own individual files, normal green channel is down.
- Source 1 - Transparency was included in color maps, the normal green channel was up and multiple shader masks were contained within mask 1 and mask 2 files.
- Our workshop tools can convert Source 1 textures into the Source 2 files but for accuracy of new submissions you should author the separate textures needed for Source 2.
SOURCE 2 TEXTURES AND SHADER MASKS
- When creating your color map, be very aware of how the values, color palettes, gradients, and texture details of your items affect hero readability in game.
- For guidelines about color map authoring, please see our Character Art Guide.
- The color map can be 24 or 32 bit.
Color Maps for Ogre Magi, Disruptor, and Razor
- We will soon be adding a control to the workshop demo mode that will allow you to see your items with desaturated colors in order to assess the readability of color map values. You can also use the console command r_hero_debug_render_mode 5 to enable desaturated display.
- Transparency determines where the texture is opaque.
- White is opaque, black is invisible. Transparency can only be fully opaque or fully invisible, there is no greyscale.
- Transparency is now enabled for all Dota heroes.
- Transparency is now a separate texture file in Source 2 but you can leave the transparent file input blank in the submission tool if your item doesn't need this.
The mesh, Color Map, Transparency, and game model for Abaddon's default cape
- The normal map gives the illusion of the lighting of raised and indented surfaces on a smooth mesh.
- The normal map should be 24-bit. In Source 2, red channel is left; green is down; blue is up. If you aren't creating a custom normal map, use a flat normal color (128,128,255).
- NOTE - the normal green channel was up in Source 1, it has been inverted to be down for Source 2.
- Normal maps work best in combination with high specular and other masks.
- You can find resources and tutorials about making normal maps through community links on our Dota Workshop Submission Guidelines Homepage
The Normal Map and Specular Mask for Ogre Magi's default weapon
The model mesh without Normal Map, with Normal Map, and with all final textures including Specular and Metalness
- NOTE - a Detail Mask will only work on a custom item if the hero's default material has this enabled. It must use the hero's default detail map.
- The Detail Mask determines where a detail map scrolling texture or added color will display on an item's surface. For more specifics about how to author textures for these situations, please see Authoring Items for Arcana, Ability, and Ambient Textures.
- Most of the heroes and their items do not use the Detail Mask features at all. If a hero uses a Detail Mask on its body or default items, you could experiment with authoring a Detail Mask for part of your custom item, but be careful not to over use this.
- The default values are black. Lighter values will make the detail map appear.
- The material for the hero's default item controls the blending mode for the detail map. In the example below, the default material for Razor is using an additive blend mode.
The Color Map, Detail Mask, and Detail Map of electrical arcs used on Razor's body.
Razor's arm without the Detail Mask
Razor's arm with the Detail Mask
- The Metalness Mask reduces and darkens the color and rimlight in order to simulate a real-world metallic look. It works in combination with the Base Tint mask, which returns the color through specular highlights. This mask is used in combination with other masks that help the surface appear more metallic. Typically this means bright, broad highlights that are tinted by the base color.
- In the examples below with Ogre Magi's weapon and Nyx's helmet you'll see:
- Color, Normal, and Specular
- Metalness added
- All maps combined, including Metalness, Base Tint, Exponent, and Rimlight
Self Illumination Mask
- Self Illumination determines where the surface is self-illuminated independent of environment lighting.
- This mask can make the pixels of the surface full-bright with the coloring from the color texture.
Self Illumination is used to create glowing areas, such as the mouth of Ogre Magi's weapon
A more subtle mask is used for the glow within Earth Spirit's arms.
- The default values are black. Lighter values will make a surface ignore lighting and just show color texture. Self illuminated areas in-game will also have a bloom (or glow) effect to them.
- It is best to be selective when using self-illumination so that you concentrate focus on the most important areas of an item or hero.
- The Specular Mask determines the brightness of the highlights, multiplied by specular intensity from the material.
- An Ambient Occlusion map is a good base for this map. Instructions about making an ambient occlusion map can be found in our Color Texture Light Baking guide.
- This mask works in tandem with the Specular Exponent mask.
- Specular intensity values from the mask are multiplied by the specular scale value from the material. Custom items will use the value in the material for the default item. In most cases specular scale is a number higher than 1, which results in exaggerated highlights.
- Rimlight is the highlighting on the edges around a model to give it depth and help it stand out from the environment. It's also known as fresnel intensity or rimlight intensity.
- Rimlight intensity values from the mask are multiplied by the rimlight scale value from the material. Custom items will use the value in the material for the default item. In most cases, rimlight scale is a number higher than 1, which results in an exaggerated rimlight.
With Authored Rimlight
- Dark values can be used for metals and lighter values for skin, leather, and wood. This may not be the case for all items.
- There are darker values in the crevices, which can be achieved by creating an Ambient Occlusion map.
Ogre Magi's weapon rimlight mask is light for leather and dark for metal
Base Tint Mask
- The base tint mask determines how much color the specular highlights get from the color texture. It is useful for colored metals (such as gold), or to simulate light penetrating a surface and being reflected back with color, making the surface appear fleshy.
- This mask was known as Tint Spec by Color in Source 1.
- Dark values in this channel will color specular highlights by diffuse color from the item's color texture.
- Light values will keep specular highlights the color of the light affecting the surface.
Ogre Magi's bracer and Disruptor's base model without and with a Base Tint Mask
- Specular exponent values determine the size of the specular highlight on a surface.
- Dark values will give the impression of a rough surfaces.
- Light values will give the impression of a polished surface.
- Specular masks and specular exponents work together to create different surface types. Examples include:
- Metal - high specular, medium exponent
- Leather - medium specular, high exponent
- Wood - low specular, very low exponent
- Values in this mask act as a scale for the specular exponent value from the material. If the entire channel is white, then the entire surface will inherit specular exponent values from the material.
Matching Specular Exponent Values
Full Specular Exponent
Authored Specular Exponent
Diffuse Mask (rarely used)
- NOTE: Diffuse Mask is only enabled for a few early Dota heroes such as Puck, Juggernaut and Nyx.
- Diffuse masks are mostly obsolete and most items won't need this.
- The Diffuse Mask can apply a color transformation, like a hue shift or a contrast adjustment to the original color. This color transformation is encoded into a 3D texture called a colorwarp. This effect is then applied using a fresnel term, meaning it only appears around the edges of the character.
Puck without (left) and with (right) a Custom Fresnel Color Warp applied to different extents by a light body diffuse mask (upper) and dark wings diffuse mask (lower)
TEXTURE BUDGETS AND RESOLUTION
Dota 2 Item Workshop Guidelines Homepage