Dice Creator
File List
Here is a list of all files with brief descriptions:
[detail level 123]
  Core
 DieAreaFinder.csThe DieAreaFinder class is a helper script used internally by the DieSidesEditor class to process all triangles in a model to deduct how many sides a model has and what the normals of those sides are
 DieSide.csThe DieSide class represents all there is to know about a single DieSide:
 DieSideMatchInfo.csDieSideMatchInfo is returned by the DieSides component, describing which DieSide most closely matches the current state of the transform the DieSides component is attached to
 DieSides.csDieSides stores a collection of DieSide instances and can tell which DieSide is currently the closest match (based on side normals and transform rotation) and whether that match is exact
  Die
  Physics
 PhysicsDie.csThis Die subclass allows you to physically throw a Die
 PhysicsDieAvoider.csThis is a utility script to use in combination with a PhysicsDieController, to make sure dice avoid each other and any other GameObject that has this component, it has no use on its own
 ARollable.csARollable is the abstract base class for anything rollable, eg Die or DieCollection
 Die.csThis Die class subclasses ARollable to provide an abstract base for a single Die
 DieDebugEventListener.csSimple debug class that prints information about status and the events thrown by a Die
 DieDebugUI.csShows debug information for a Die on a small worldcanvas
 DieResult.csRepresents the result for a single Die roll
 IRollResult.csA generic interface for roll results, no matter whether you are rolling a single die or a collection of dice
 MouseClickDieRoller.csAn example of how we could trigger the rolling of a die by using a mouse
 NullResult.csRepresents a zero result, used for disabled dice, to avoid exceptions
 RightClickCameraDieZoomer.csSample script to demonstrate how we can zoom in on the result of a single Die
  DieCollection
 DieCollection.csDieCollection is a component to which you can add other ARollable instances, allowing you to track events and results for a group
 DieCollectionDebugEventListener.csA debug class that can be used to print info about what a DieCollection is doing
 DieCollectionDebugUI.csImplements a DieCollectionDebugUI for a maximum of 9 dice, to show some information about the state of those dice (rollables to be more precise), their current value, etc
 DieCollectionResult.csDieCollectionResult represents the totals and status for a whole collection of dice (rollables to be more exact), adding the results of all items in the collection together
 KeyPressCollectionRoller.csA class that allows you to trigger the main methods on a DieCollection through key presses
  Editor
 DiceCreatorLogoRenderer.csHelper class to show a small DieCreator / IDS Logo
 DieSidesEditor.csThe DieSidesEditor provides the editor for the DieSides component, which allows you to fill the DieSides component with all the required DieSides instances based on data provided by the DieAreaFinder class
 MaterialSetRebuilder.csMaterialSetRebuilder is a utility script to rebuild all MaterialSets including the final MaterialSetCollection from all material folders in the Dice Creator Package
 NoteEditor.cs
 PathConstants.csSome paths referenced in this asset, all located in one place
 PhysicsDieEditor.csSimple editor that checks whether the component that the PhysicsDie is attached to has a physics material set, and if not, sets the default DiePhysicsMaterial.physicMaterial
 SideUtility.csSideUtility is a simple editor window that allows you to attach a specific prefab to each and every side of a die
  Materials
 MaterialManagerUI.csUI that lets you change the material for the given DieCollection to the material from a selected materialset
 MaterialSet.csDescribes a set of materials
 MaterialSetCollection.csCombines a bunch of MaterialSets into a collection that we can use to switch materials at editor or runtime
 MaterialSetUtility.csUtility class to match GameObjects with materials from a given MaterialSet
  SideUtility
 DieSideAwareSpritePrefab.csExample implementation of IDieSideAware to handle attached sprites to a prefab
 DieSideAwareTextDie.csExample implementation of IDieSideAware to handle textfields attached to a prefab
 IDieSideAware.csDescribes an interface for instances of prefabs that have been attached to a Die through the DieSideUtility (which is an addon utility instead of using materials to represent die faces)
  Util
 ActivationUtility.csA simple utility class to toggle gameobjects on/off based on key presses for the demo scene
 GroundUtility.csUtility class to floor an item
 Note.cs
 RollableAudio.csScaffold for an audio script that you can add to any rollable
 StringUtility.csSimple string utility to concatenate IEnumerable<int>'s (eg List<int>, int []) to a comma separated string