docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class RuleTile

    Generic visual tile for creating different tilesets like terrain, pipeline, random or animated tiles.

    Inheritance
    object
    Object
    ScriptableObject
    TileBase
    RuleTile
    HexagonalRuleTile
    IsometricRuleTile
    RuleTile<T>
    Inherited Members
    ScriptableObject.SetDirty()
    ScriptableObject.CreateInstance(string)
    ScriptableObject.CreateInstance(Type)
    ScriptableObject.CreateInstance<T>()
    Object.GetInstanceID()
    Object.GetHashCode()
    Object.Equals(object)
    Object.InstantiateAsync<T>(T)
    Object.InstantiateAsync<T>(T, Transform)
    Object.InstantiateAsync<T>(T, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, Transform, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int)
    Object.InstantiateAsync<T>(T, int, Transform)
    Object.InstantiateAsync<T>(T, int, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>)
    Object.InstantiateAsync<T>(T, int, Transform, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int, Transform, Vector3, Quaternion, CancellationToken)
    Object.InstantiateAsync<T>(T, int, Transform, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>)
    Object.InstantiateAsync<T>(T, int, Transform, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>, CancellationToken)
    Object.InstantiateAsync<T>(T, InstantiateParameters, CancellationToken)
    Object.InstantiateAsync<T>(T, int, InstantiateParameters, CancellationToken)
    Object.InstantiateAsync<T>(T, Vector3, Quaternion, InstantiateParameters, CancellationToken)
    Object.InstantiateAsync<T>(T, int, Vector3, Quaternion, InstantiateParameters, CancellationToken)
    Object.InstantiateAsync<T>(T, int, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>, InstantiateParameters, CancellationToken)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Scene)
    Object.Instantiate<T>(T, InstantiateParameters)
    Object.Instantiate<T>(T, Vector3, Quaternion, InstantiateParameters)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, bool)
    Object.Instantiate<T>(T)
    Object.Instantiate<T>(T, Vector3, Quaternion)
    Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
    Object.Instantiate<T>(T, Transform)
    Object.Instantiate<T>(T, Transform, bool)
    Object.Destroy(Object, float)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, bool)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.FindObjectsOfType(Type, bool)
    Object.FindObjectsByType(Type, FindObjectsSortMode)
    Object.FindObjectsByType(Type, FindObjectsInactive, FindObjectsSortMode)
    Object.DontDestroyOnLoad(Object)
    Object.DestroyObject(Object, float)
    Object.DestroyObject(Object)
    Object.FindSceneObjectsOfType(Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    Object.FindObjectsOfType<T>()
    Object.FindObjectsByType<T>(FindObjectsSortMode)
    Object.FindObjectsOfType<T>(bool)
    Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)
    Object.FindObjectOfType<T>()
    Object.FindObjectOfType<T>(bool)
    Object.FindFirstObjectByType<T>()
    Object.FindAnyObjectByType<T>()
    Object.FindFirstObjectByType<T>(FindObjectsInactive)
    Object.FindAnyObjectByType<T>(FindObjectsInactive)
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    Object.FindFirstObjectByType(Type)
    Object.FindAnyObjectByType(Type)
    Object.FindObjectOfType(Type, bool)
    Object.FindFirstObjectByType(Type, FindObjectsInactive)
    Object.FindAnyObjectByType(Type, FindObjectsInactive)
    Object.ToString()
    Object.name
    Object.hideFlags
    object.Equals(object, object)
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    Namespace: UnityEngine
    Assembly: Unity.2D.Tilemap.Extras.dll
    Syntax
    [Serializable]
    [HelpURL("https://docs.unity3d.com/Packages/com.unity.2d.tilemap.extras@latest/index.html?subfolder=/manual/RuleTile.html")]
    public class RuleTile : TileBase

    Fields

    m_DefaultColliderType

    The Default Collider Type set when creating a new Rule.

    Declaration
    public Tile.ColliderType m_DefaultColliderType
    Field Value
    Type Description
    Tile.ColliderType

    m_DefaultGameObject

    The Default GameObject set when creating a new Rule.

    Declaration
    public GameObject m_DefaultGameObject
    Field Value
    Type Description
    GameObject

    m_DefaultSprite

    The Default Sprite set when creating a new Rule.

    Declaration
    public Sprite m_DefaultSprite
    Field Value
    Type Description
    Sprite

    m_TilingRules

    A list of Tiling Rules for the Rule Tile.

    Declaration
    [HideInInspector]
    public List<RuleTile.TilingRule> m_TilingRules
    Field Value
    Type Description
    List<RuleTile.TilingRule>

    Properties

    m_NeighborType

    Returns the default Neighbor Rule Class type.

    Declaration
    public virtual Type m_NeighborType { get; }
    Property Value
    Type Description
    Type

    m_RotationAngle

    Angle in which the RuleTile is rotated by for matching in Degrees.

    Declaration
    public virtual int m_RotationAngle { get; }
    Property Value
    Type Description
    int

    m_RotationCount

    Number of rotations the RuleTile can be rotated by for matching.

    Declaration
    public int m_RotationCount { get; }
    Property Value
    Type Description
    int

    neighborPositions

    Returns a set of neighboring positions for this RuleTile

    Declaration
    public HashSet<Vector3Int> neighborPositions { get; }
    Property Value
    Type Description
    HashSet<Vector3Int>

    Methods

    ApplyRandomTransform(Transform, Matrix4x4, float, Vector3Int)

    Returns a random transform matrix given the random transform rule.

    Declaration
    public virtual Matrix4x4 ApplyRandomTransform(RuleTile.TilingRuleOutput.Transform type, Matrix4x4 original, float perlinScale, Vector3Int position)
    Parameters
    Type Name Description
    RuleTile.TilingRuleOutput.Transform type

    Random transform rule.

    Matrix4x4 original

    The original transform matrix.

    float perlinScale

    The Perlin Scale factor of the Tile.

    Vector3Int position

    Position of the Tile on the Tilemap.

    Returns
    Type Description
    Matrix4x4

    A random transform matrix.

    GetCustomFields(bool)

    Returns custom fields for this RuleTile

    Declaration
    public FieldInfo[] GetCustomFields(bool isOverrideInstance)
    Parameters
    Type Name Description
    bool isOverrideInstance

    Whether override fields are returned

    Returns
    Type Description
    FieldInfo[]

    Custom fields for this RuleTile

    GetMirroredPosition(Vector3Int, bool, bool)

    Gets a mirrored position given its original position and the mirroring axii.

    Declaration
    public virtual Vector3Int GetMirroredPosition(Vector3Int position, bool mirrorX, bool mirrorY)
    Parameters
    Type Name Description
    Vector3Int position

    Original position of Tile.

    bool mirrorX

    Mirror in the X Axis.

    bool mirrorY

    Mirror in the Y Axis.

    Returns
    Type Description
    Vector3Int

    Mirrored position of Tile.

    GetOffsetPosition(Vector3Int, Vector3Int)

    Get the offset for the given position with the given offset.

    Declaration
    public virtual Vector3Int GetOffsetPosition(Vector3Int position, Vector3Int offset)
    Parameters
    Type Name Description
    Vector3Int position

    Position to offset.

    Vector3Int offset

    Offset for the position.

    Returns
    Type Description
    Vector3Int

    The offset position.

    GetOffsetPositionReverse(Vector3Int, Vector3Int)

    Get the reversed offset for the given position with the given offset.

    Declaration
    public virtual Vector3Int GetOffsetPositionReverse(Vector3Int position, Vector3Int offset)
    Parameters
    Type Name Description
    Vector3Int position

    Position to offset.

    Vector3Int offset

    Offset for the position.

    Returns
    Type Description
    Vector3Int

    The reversed offset position.

    GetPerlinValue(Vector3Int, float, float)

    Returns a Perlin Noise value based on the given inputs.

    Declaration
    public static float GetPerlinValue(Vector3Int position, float scale, float offset)
    Parameters
    Type Name Description
    Vector3Int position

    Position of the Tile on the Tilemap.

    float scale

    The Perlin Scale factor of the Tile.

    float offset

    Offset of the Tile on the Tilemap.

    Returns
    Type Description
    float

    A Perlin Noise value based on the given inputs.

    GetRotatedPosition(Vector3Int, int)

    Gets a rotated position given its original position and the rotation in degrees.

    Declaration
    public virtual Vector3Int GetRotatedPosition(Vector3Int position, int rotation)
    Parameters
    Type Name Description
    Vector3Int position

    Original position of Tile.

    int rotation

    Rotation in degrees.

    Returns
    Type Description
    Vector3Int

    Rotated position of Tile.

    GetTileAnimationData(Vector3Int, ITilemap, ref TileAnimationData)

    Retrieves any tile animation data from the scripted tile.

    Declaration
    public override bool GetTileAnimationData(Vector3Int position, ITilemap tilemap, ref TileAnimationData tileAnimationData)
    Parameters
    Type Name Description
    Vector3Int position

    Position of the Tile on the Tilemap.

    ITilemap tilemap

    The Tilemap the tile is present on.

    TileAnimationData tileAnimationData

    Data to run an animation on the tile.

    Returns
    Type Description
    bool

    Whether the call was successful.

    Overrides
    UnityEngine.Tilemaps.TileBase.GetTileAnimationData(UnityEngine.Vector3Int, UnityEngine.Tilemaps.ITilemap, ref UnityEngine.Tilemaps.TileAnimationData)

    GetTileData(Vector3Int, ITilemap, ref TileData)

    Retrieves any tile rendering data from the scripted tile.

    Declaration
    public override void GetTileData(Vector3Int position, ITilemap tilemap, ref TileData tileData)
    Parameters
    Type Name Description
    Vector3Int position

    Position of the Tile on the Tilemap.

    ITilemap tilemap

    The Tilemap the tile is present on.

    TileData tileData

    Data to render the tile.

    Overrides
    UnityEngine.Tilemaps.TileBase.GetTileData(UnityEngine.Vector3Int, UnityEngine.Tilemaps.ITilemap, ref UnityEngine.Tilemaps.TileData)

    RefreshTile(Vector3Int, ITilemap)

    This method is called when the tile is refreshed.

    Declaration
    public override void RefreshTile(Vector3Int position, ITilemap tilemap)
    Parameters
    Type Name Description
    Vector3Int position

    Position of the Tile on the Tilemap.

    ITilemap tilemap

    The Tilemap the tile is present on.

    Overrides
    TileBase.RefreshTile(Vector3Int, ITilemap)

    RuleMatch(int, TileBase)

    Checks if there is a match given the neighbor matching rule and a Tile.

    Declaration
    public virtual bool RuleMatch(int neighbor, TileBase other)
    Parameters
    Type Name Description
    int neighbor

    Neighbor matching rule.

    TileBase other

    Tile to match.

    Returns
    Type Description
    bool

    True if there is a match, False if not.

    RuleMatches(TilingRule, Vector3Int, ITilemap, bool, bool)

    Checks if there is a match given the neighbor matching rule and a Tile with mirrored axii.

    Declaration
    public bool RuleMatches(RuleTile.TilingRule rule, Vector3Int position, ITilemap tilemap, bool mirrorX, bool mirrorY)
    Parameters
    Type Name Description
    RuleTile.TilingRule rule

    Neighbor matching rule.

    Vector3Int position

    Position of the Tile on the Tilemap.

    ITilemap tilemap

    Tilemap to match.

    bool mirrorX

    Mirror X Axis for matching.

    bool mirrorY

    Mirror Y Axis for matching.

    Returns
    Type Description
    bool

    True if there is a match, False if not.

    RuleMatches(TilingRule, Vector3Int, ITilemap, int, bool)

    Checks if there is a match given the neighbor matching rule and a Tile with a rotation angle.

    Declaration
    public bool RuleMatches(RuleTile.TilingRule rule, Vector3Int position, ITilemap tilemap, int angle, bool mirrorX = false)
    Parameters
    Type Name Description
    RuleTile.TilingRule rule

    Neighbor matching rule.

    Vector3Int position

    Position of the Tile on the Tilemap.

    ITilemap tilemap

    Tilemap to match.

    int angle

    Rotation angle for matching.

    bool mirrorX

    Mirror X Axis for matching.

    Returns
    Type Description
    bool

    True if there is a match, False if not.

    RuleMatches(TilingRule, Vector3Int, ITilemap, ref Matrix4x4)

    Does a Rule Match given a Tiling Rule and neighboring Tiles.

    Declaration
    public virtual bool RuleMatches(RuleTile.TilingRule rule, Vector3Int position, ITilemap tilemap, ref Matrix4x4 transform)
    Parameters
    Type Name Description
    RuleTile.TilingRule rule

    The Tiling Rule to match with.

    Vector3Int position

    Position of the Tile on the Tilemap.

    ITilemap tilemap

    The tilemap to match with.

    Matrix4x4 transform

    A transform matrix which will match the Rule.

    Returns
    Type Description
    bool

    True if there is a match, False if not.

    StartUp(Vector3Int, ITilemap, GameObject)

    StartUp is called on the first frame of the running Scene.

    Declaration
    public override bool StartUp(Vector3Int position, ITilemap tilemap, GameObject instantiatedGameObject)
    Parameters
    Type Name Description
    Vector3Int position

    Position of the Tile on the Tilemap.

    ITilemap tilemap

    The Tilemap the tile is present on.

    GameObject instantiatedGameObject

    The GameObject instantiated for the Tile.

    Returns
    Type Description
    bool

    Whether StartUp was successful

    Overrides
    TileBase.StartUp(Vector3Int, ITilemap, GameObject)

    UpdateNeighborPositions()

    Updates the neighboring positions of this RuleTile

    Declaration
    public void UpdateNeighborPositions()
    In This Article
    Back to top
    Copyright © 2024 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)