Customizing Tilt Brush

Part One — Introduction and Custom Brushes

Introduction to this series

Getting Started

  • By far the best option is to properly clone the repository. To do this you’ll need a basic understanding of how to use git, which is the verision-control system that GitHub is built on. An overview of git is outside the scope of this tutorial, but if you want to get stuck in, GitHub has a decent getting-started tutorial on their website.
  • If you don’t want to mess with Git just yet, you can manually download the repository instead. Click the green ‘Code’ button and then click ‘Download Zip’. This is the full Unity Project which, once extracted, can be opened in Unity Hub!

Custom Brushes

Create a new folder in Assets/Resources/Brushes/Basic with the name of your new brush, in CapitalCase
  • A buttonimage.png, so that they can appear on the brushes panel in-game
  • A material with a name that matches the brush name
  • An object with a unity cube icon — this is the “brush descriptor” and defines how the brush behaves
Create a 128x128 black-and-white png file called ‘buttonimage.png’ and place it in your new folder
Here’s my buttonimage.png if you want to follow along
Create a new material, name it the same as your folder name, and give it the “StandardDoubleSided” shader
Create a 1024x1024 texture called ‘main’. Set Alpha Source to From Gray Scale and check Alpha Is Transparency
Here’s my check file for those following along at home
Select the Flat brush descriptor and click “Duplicate Brush”
Nove the newly created Brush Descriptor into your brush folder and make it match the folder name
Alternatively, when in the brush folder, choose Tilt -> New Brush from the top menu and rename appropriately
  • Set Durable Name to be equal to your brush’s folder name
  • Set Creation Version to be equal to the current Tilt Brush version — 24.0 right now (the community may release newer versions in the future)
  • Ensure Supersedes is “None” — if it isn’t (as is the case for the Flat brush), left click on the supersedes box and press the delete key.
  • Drag your buttonimage.png file into the Button Texture box
  • Set Description to be your brush name — this time with spaces if you have more than one word
  • Drag your material into the Material box
Set the essential settings in your brush to link everything together and ensure everything works properly
  • Line — creates a flat ribbon with the texture stretched along the whole stroke
  • Geom/FlatDistance — creates a flat ribbon with the texture tiled along the length of the stroke by distance
  • Spray — places the texture multiple times at random rotations along the stroke
  • TubeStretchUV — creates a 3D tube with the texture stretched along the length of the whole stroke
  • TubeDistanceUV — creates a 3D tube with the texture tiled along the length of the stroke by distance
Find the file Assets/Manifest, and add your brush (in the Not X) folder to the ‘Brushes’ list
In the main scene, find the object “SketchControls” and uncheck “Atlas Icon Textures” in its inspector
Your brush should now work! Press Play to try it out!
To share your brush, right-click the brush folder and click ‘Export Package’ to save a sharable .unitypackage file

--

--

Melbourne-based creative technologist. I flit between experimental AR/VR experiences, audiovisual electronics and full-stack web development.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Lachlan Sleight

Melbourne-based creative technologist. I flit between experimental AR/VR experiences, audiovisual electronics and full-stack web development.