Version: 2022.1
LanguageEnglish
  • C#

GridBrushBase

class in UnityEngine

/

Inherits from:ScriptableObject

/

Implemented in:UnityEngine.TilemapModule

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Description

Base class for authoring data on a grid with grid painting tools like paint, erase, pick, select and fill.

Inheriting this class and/or creating brush asset instances from your inherited class, you can create custom brushes which react to high level grid events like paint, erase, pick, select and fill.

using UnityEngine;

// Paints two Prefabs in checkerboard pattern [CreateAssetMenu] public class CheckerboardBrush : GridBrushBase { public GameObject prefabA; public GameObject prefabB;

public override void Paint(GridLayout grid, GameObject brushTarget, Vector3Int position) { bool evenCell = Mathf.Abs(position.y + position.x) % 2 > 0; GameObject toBeInstantiated = evenCell ? prefabA : prefabB;

if (toBeInstantiated != null) { GameObject newInstance = Instantiate(toBeInstantiated, grid.CellToWorld(position), Quaternion.identity); newInstance.transform.SetParent(brushTarget.transform); } } }

Public Methods

BoxEraseErases data on a grid within the given bounds.
BoxFillBox fills tiles and GameObjects into given bounds within the selected layers.
ChangeZPositionChanges the Z position of the GridBrushBase.
EraseErases data on a grid within the given bounds.
FlipFlips the grid brush in the given FlipAxis.
FloodFillFlood fills data onto a grid given the starting coordinates of the cell.
MoveMove is called when user moves the area previously selected with the selection marquee.
MoveEndMoveEnd is called when user has ended the move of the area previously selected with the selection marquee.
MoveStartMoveEnd is called when user starts moving the area previously selected with the selection marquee.
PaintPaints data into a grid within the given bounds.
PickPicks data from a grid given the coordinates of the cells.
ResetZPositionResets Z position changes of the GridBrushBase.
RotateRotates all tiles on the grid brush with the given RotationDirection.
SelectSelect an area of a grid.

Inherited Members

Properties

hideFlagsShould the object be hidden, saved with the Scene or modifiable by the user?
nameThe name of the object.

Public Methods

GetInstanceIDGets the instance ID of the object.
ToStringReturns the name of the object.

Static Methods

DestroyRemoves a GameObject, component or asset.
DestroyImmediateDestroys the object obj immediately. You are strongly recommended to use Destroy instead.
DontDestroyOnLoadDo not destroy the target Object when loading a new Scene.
FindObjectOfTypeReturns the first active loaded object of Type type.
FindObjectsOfTypeGets a list of all loaded objects of Type type.
InstantiateClones the object original and returns the clone.
CreateInstanceCreates an instance of a scriptable object.

Operators

boolDoes the object exist?
operator !=Compares if two objects refer to a different object.
operator ==Compares two object references to see if they refer to the same object.

Messages

AwakeThis function is called when the ScriptableObject script is started.
OnDestroyThis function is called when the scriptable object will be destroyed.
OnDisableThis function is called when the scriptable object goes out of scope.
OnEnableThis function is called when the object is loaded.
OnValidateEditor-only function that Unity calls when the script is loaded or a value changes in the Inspector.
ResetReset to default values.