Skip to content

Creating Custom Dice

dddice gives you an insane amount of flexibility when it comes to creating dice that other players will love. Under-the-hood, dddice is powered by Three.js for 3D rendering and uses Cannon.js for 3D physics. Both of these technologies open up a vast world of possibilities for customization.

Create your own

To create your own custom dice, navigate to our Dice Editor, you will be presented with a white die with black number, ready for you to customize. The sections below explain each of the customization options

Remix the dice of others

You can also remix the dice that others have created. I you find a die you like in our dice discovery you can click the "remix" button to be taken to the editor pre-populated with that die, ready for you to customize!

You can also access the remix feature from your Digital Dice Box or by clicking the the little button that looks like a hand mixer in the die pile organizer.


Knowledge of 3D rendering concepts is not required for creating your own custom dice; there are some very basic concepts that will be helpful to know, but don't fret, we explain them below.


This panel allows you to change the 3D shader that is used for your dice set. This changes how the computerized lighting interacts with the dice changing how they look.

The Toon Shader attempts to replicate the look of a had drawn cartoon, the Physical & Standard shaders use real world physics calculations to color the dice and the Phong Shader is a standard approximation used in 3D graphics which makes everything look plasticy (which ain't that bad for dice actually).

Each type of shader has different attributes which can be controlled via the display options panel. Physical being the most complex and having the most options.


You can change some of the basic colors that are used on a die here. For a basic die created via the editor the options are limited to diffuse, emissive and specular color. For more complex themes, like Bees or From The Deep there are more options presented.

Some common types of colors are listed below

Diffuse Color

The way the diffuse color interacts with background images is very important to understand. Without a background image the diffuse color is the background color of all the dice. If a background image is used, the diffuse color selected is used to tint the background image.

Emissive Color

Emissive color is a sold color applied to the dice that is independent of any lighting in the scene

Specular Color

Specular color is the color of the "shine" or the shiny spot on the dice. The amount of shine is controlled by the display options, and depends on the shader chosen

See the Background section for more on backgrounds


The editor allows you to add custom sounds to your dice that change the sound of collisions and dice shakes. You can also add sounds that play when the dice show a certain face, or a sound that always plays, like a flaming dice crackling in the background.

Ambient sounds

An ambient sound always plays when a die of that type is on the sage. To keep the soundscape clean, we balance the volume of the ambient sounds across all dice on the stage so that it will not overwhelm other sounds. In other words 1 die with an ambient sound will be the same volume as 25 of the same dice

Collision sounds

A collision sound plays when that die impacts with the ground, the walls or other dice.

Highest value rolled / Lowest value rolled

A sound that plays when either the highest or lowest value (as determined by the in the chat value, not the face index number) is rolled. This only works for dice that have numbers for every face's in the chat value. Dice which display images or words as dice results will not work with this option.

If you create a die with duplicate numbers, such as a d8 labeled 1-4 twice, the 'highest value rolled' sound will play if either 4 is rolled.

Face Is Rolled

A sound that will play when a particular face is rolled. Fill in the Face # input box with the face id you want this sound to play along with. For most normal die the face id and the face's value will be the same, however with the default d10x (aka d100 or d%) the values are 10, 20, 30 etc, but the face index numbers are 1, 2, 3 etc.

If you do customize the dice faces on the die you need to double-check you are using the face id and not the face's value.


These are sounds that play when the dice are getting ready to be thrown. You can select sounds that represent different hand sizes. There are two parameters you can select, an operator, and a hand size. If you want only one shake sound irrespective of hand size select >= for the operator and 1 for the hand size.

The order these sounds appear in the list matter. The roll engine will use the first shaking sounds that meets it's condition. We suggest ordering the sounds from smallest to largest and using the >= operator.


The default shaking sounds pre-configured in the editor has no shaking sound for a hand size of 1. A die rolled in the hand has no sound, hands are soft.

More than one sound

If more than one collision or ambient sound is provided for the dice sent, each time a die from that set is spawned, one of the sounds is chosen at random for that die. If you roll a full hand, each die will select its sound independently. That will be the collision sound or ambient sound for the life of the die.


Fonts and colors

The numbers panel allows you to change the font, and the color of the numbers that appear on the dice. If you choose to allow "Local Fonts" permissions (read about it here) you can use any font installed on your device.

This setting applies globally to all the dice in the set.

Customizing individual faces

The numbers panel also allows you to individually customize one or more faces of the die. For example, putting an image on the 20 of the d20.

Clicking on the Add custom face will add a new input to let you customize the font, and color of that face. This setting is local to each dice in the set: the image you place on the 20 of the d20 is only on the d20.

"on the dice" vs "in the chat"??


Double check that you updated both on the dice and in the chat. It's very rare that you don't need to update both when creating a custom face

The custom face input has two fields you can use to customize the value of the dice. The input labeled on the dice changes what the text or image is that appears on the 3D model. The input labeled in the chat changes the value that shows in the dice results chat, and is also the value used for any dice math.

This allows you to put the custom image on the 20 of the d20, but still have it be a 20 for bonus adding purposes. It also allows for full on symbolic dice as used in many games by Fantasy Flight, like Genesys and Star Wars

Advanced Number Options

There are a number of advanced options for customizing your dice numbers. Click on the Advanced link at the bottom of the panel to open them up. Each shader supports a different set of advanced options. Play around with them to see what they do.

Bump Maps

One advanced option shared by all shaders are the bump maps. Bump maps add contours to the surface of you die. Some dice have numbers painted on, some have them stamped in and some have raised numbers. The sliders labeled Indented / Raised and Sharp / Gradual allows you to control this aspect of your dice.

Face Outlines

This panel allows you to add textures that are aligned to the faces of the dice. The primary purpose is creating identical outlines on each face of the die. However, you don't need to limit yourself. Any image you want to appear on each face, layered between the number and the background, could be used here.

Outline Templates

Below is a collection of templates to use when creating outline maps. In the templates the thin black lines represent the borders of the polygons of the 3D modes.

Outline Samples

Here are some example outline maps that you can use in your dice


This panel allows you to add background images to the dice and to also give them a bit of texture via bump maps (the wikipedia article has a great explanation).

Upload the image that you want to use as the background and upload the image you want to use as the bump map. Bump maps should be greyscale images representing the height of surface; black being low, white being high, grey in-between. If you supply a color image for a bump map, only the blue channel is used.

Background templates

Below is a collection of templates to use when creating your backgrounds and bump maps. In the templates the thin black lines represent the borders of the polygons of the 3D modes. The light gray numbers are provided for reference only, to show which face is which and which direction the number will point. Don't include the numbers in your background.

Display Options

This panel contains attributes that the shaders use to control the look of the dice. This starts to get into advanced 3D graphics concepts. If you are the kind of person with that skill, these should be familiar to you. If you are not, they are pre set to a "good" setting.

Feel free to play around and see what beauty you can make!

Dice Shape

You can use this section to change the shape of the dice in your set. This is particularly useful when you add a die, or you are making a set for a game that only uses d6s. You can choose from the standard d4, d6, d8, d10, d12 or d20 shapes.

Changing the shape here, will not change how the die is labeled or how it is called, use the Notation section for that.


This section has one entry for what text is used to describe each die in the set. For the standard polyhedral set this is straight forward, d4, d6, d8, d10, d12, d20. Due to the inconsistencies of how d100s work and their notation we have decided to notate the "tens" die as d10x. (and save the d100 for the big golf ball... maybe)

However, for games with custom dice, they notate them differently, such as dF for fate or "Hunger Dice" for Vampire the Masquerade 5e.


Give a description for your dice. This will be shown in the dice discovery.


Add some dynamic flare to your dice using particle systems. This is great for adding flame or spark effects. Currently, you can attach one particle system to your dice, and it will remain active while the dice is on screen.

Particle systems are built using a tool called Three Nebula. There is a desktop application available there that you can download to create your own effects. In the input box, you upload the save file produced by Three Nebula.

Our dice are about 1 "unit" wide. The sample particle system in the Three Nebula tool is much larger. Keep this in mind when building your own particle effects. Also keep in mind the view in the dice room is looking straight down the y-axis.

Save Dice

When you are ready to share your dice with the world, click Save Dice at the bottom of the screen. This dice will then be saved with your account. If you are a registered user you can see all the dice you have made from your Digital Dice Box in your account settings.

From there you can share you dice with your friends. Learn more about sharing dice