All brushes added must inherit from GridBrushBase
. GridBrushBase
provides a fixed set of APIs for painting.
public virtual void Paint(GridLayout grid, GameObject brushTarget, Vector3Int position)
Paint
adds data onto the target GameObject brushTarget
with the GridLayout
grid at the given position. This is triggered when the Brush is activated on the grid and the Paint Tool is selected on the Palette window. Override this to implement the action desired on painting.
public virtual void Erase(GridLayout grid, GameObject brushTarget, Vector3Int position)
Erase
removes data onto the target GameObject brushTarget
with the GridLayout
grid at the given position. This is triggered when the Brush is activated on the grid and the Erase Tool is selected on the Palette window. Override this to implement the action desired on erasing.
public virtual void BoxFill(GridLayout grid, GameObject brushTarget, BoundsInt position)
BoxFill
adds data onto the target GameObject brushTarget
with the GridLayout
grid onto the given bounds. This is triggered when the Brush is activated on the grid and the Box Fill Tool is selected on the Palette window. Override this to implement the action desired on filling.
public virtual void FloodFill(GridLayout grid, GameObject brushTarget, Vector3Int position)
FloodFill
adds data onto the target GameObject brushTarget
with the GridLayout
grid starting at the given position and filling all other possible areas linked to the position. This is triggered when the Brush is activated on the grid and the Flood Fill Tool is selected on the Palette window. Override this to implement the action desired on filling.
public virtual void Rotate(RotationDirection direction)
Rotate
rotates the content in the brush with the given direction based on the currently set pivot.
public virtual void Flip(FlipAxis flip)
Flip
flips the content of the brush with the given axis based on the currently set pivot.
public virtual void Select(GridLayout grid, GameObject brushTarget, BoundsInt position)
Select
marks a boundary on the target GameObject brushTarget
with the GridLayout
grid from the given bounds. This allows you to view information based on the selected boundary and move the selection with the Move Tool. This is triggered when the Brush is activated on the grid and the Select tool is selected on the Palette window. Override this to implement the action desired when selecting from a target.
public virtual void Pick(GridLayout grid, GameObject brushTarget, BoundsInt position, Vector3Int pivot)
Pick
pulls data from the target GameObject brushTarget
with the GridLayout
grid from the given bounds and pivot position, and fills the brush with that data. This is triggered when the Brush is activated on the grid and the Pick Tool is selected on the Palette window. Override this to implement the action desired when picking from a target.
public virtual void Move(GridLayout grid, GameObject brushTarget, BoundsInt from, BoundsInt to)
Move
marks the movement from the target GameObject brushTarget
with the GridLayout
grid from the given starting position to the given ending position. Override this to implement the action desired when moving from a target. This is triggered when the Brush is activated on the grid and the Move Tool is selected on the Palette window and the Move is performed (MouseDrag
). Generally, this would be any behaviour while a Move
operation from the brush is being performed.
public virtual void MoveStart(GridLayout grid, GameObject brushTarget, BoundsInt position)
MoveStart
marks the start of a move from the target GameObject brushTarget
with the GridLayout
grid from the given bounds. This is triggered when the Brush is activated on the grid and the Move Tool is selected on the Palette window and the Move
is first triggered (MouseDown
). Override this to implement the action desired when starting a move from a target. Generally, this would be picking of data from the target with the given start position.
public virtual void MoveEnd(GridLayout grid, GameObject brushTarget, BoundsInt position)
MoveEnd
marks the end of a move from the target GameObject brushTarget
with the GridLayout
grid from the given bounds. This is triggered when the Brush is activated on the grid and the Move Tool is selected on the Palette window and the Move
is completed (MouseUp
). Override this to implement the action desired when ending a move from a target. Generally, this would be painting of data to the target with the given end position.
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Is something described here not working as you expect it to? It might be a Known Issue. Please check with the Issue Tracker at issuetracker.unity3d.com.
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thanks for helping to make the Unity documentation better!