使用网格绘图工具(如绘画、擦除、拾取、选择和填充)在网格上创作数据的基类。
通过继承该类和/或从继承的类创建画笔资源实例,您可以创建自定义画笔,以响应高级网格事件,如绘画、擦除、拾取、选择和填充。
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); } } }
BoxErase | 擦除网格上给定边界内的数据。 |
BoxFill | 将瓦片和 GameObject 框填到所选图层的给定边界内。 |
ChangeZPosition | 更改 GridBrushBase 的 Z 位置。 |
Erase | 擦除网格上给定边界内的数据。 |
Flip | 翻转给定 FlipAxis 中的网格画笔。 |
FloodFill | 给定单元格的起始坐标,将数据灌填到网格中。 |
Move | 当用户移动之前使用选取框选择的区域时,将调用 Move。 |
MoveEnd | 当用户已结束对之前使用选取框选择的区域进行移动时,将调用 MoveEnd。 |
MoveStart | 当用户开始对之前使用选取框选择的区域进行移动时,将调用 MoveEnd。 |
Paint | 将数据绘制到网格上的给定边界内。 |
Pick | 给定单元格坐标,从网格中选取数据。 |
ResetZPosition | 重置 GridBrushBase 的 Z 位置更改。 |
Rotate | 按照给定的 RotationDirection 旋转网格画笔上的所有瓦片。 |
Select | 选择网格区域。 |
GetInstanceID | Gets the instance ID of the object. |
ToString | 返回对象的名称。 |
Destroy | 移除 GameObject、组件或资源。 |
DestroyImmediate | 立即销毁对象 /obj/。强烈建议您改用 Destroy。 |
DontDestroyOnLoad | 在加载新的 Scene 时,请勿销毁 Object。 |
FindAnyObjectByType | Retrieves any active loaded object of Type type. |
FindFirstObjectByType | Retrieves the first active loaded object of Type type. |
FindObjectOfType | 返回第一个类型为 type 的已加载的激活对象。 |
FindObjectsByType | Retrieves a list of all loaded objects of Type type. |
FindObjectsOfType | Gets a list of all loaded objects of Type type. |
Instantiate | 克隆 original 对象并返回克隆对象。 |
CreateInstance | 创建脚本化对象的实例。 |
bool | 该对象是否存在? |
operator != | 比较两个对象是否引用不同的对象。 |
operator == | 比较两个对象引用,判断它们是否引用同一个对象。 |
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?
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:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.