docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class HexagonalRuleEntityIdTile

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

    Inheritance
    object
    Object
    ScriptableObject
    TileBase
    EntityIdTileBase
    RuleEntityIdTile
    HexagonalRuleEntityIdTile
    Inherited Members
    RuleEntityIdTile.defaultSprite
    RuleEntityIdTile.defaultGameObject
    RuleEntityIdTile.defaultColliderType
    RuleEntityIdTile.m_TilingRules
    RuleEntityIdTile.m_NeighborType
    RuleEntityIdTile.m_RotationCount
    RuleEntityIdTile.neighborPositions
    RuleEntityIdTile.UpdateNeighborPositions(ref NativeHashSet<int3>, ref BoundsInt)
    RuleEntityIdTile.RuleMatches(ref RuleMatchInput, ref TilemapDataStruct, ref RuleEntityIdTile.RuleEntityIdTileDataStruct, ref int3, ref AffineTransform)
    RuleEntityIdTile.GetPerlinValue(ref int3, float, float)
    RuleEntityIdTile.RuleMatch(int, in EntityId, in EntityId)
    RuleEntityIdTile.RuleMatches(ref RuleMatchInput, ref TilemapDataStruct, ref RuleEntityIdTile.RuleEntityIdTileDataStruct, ref int3, int, bool)
    RuleEntityIdTile.RuleMatches(ref RuleMatchInput, ref TilemapDataStruct, ref RuleEntityIdTile.RuleEntityIdTileDataStruct, ref int3, bool, bool)
    EntityIdTileBase.refreshTileJobFunction
    EntityIdTileBase.getTileDataJobFunction
    EntityIdTileBase.getTileAnimationDataJobFunction
    TileBase.cachedEntityId
    ScriptableObject.SetDirty()
    ScriptableObject.CreateInstance(string)
    ScriptableObject.CreateInstance(Type)
    ScriptableObject.CreateInstance<T>()
    Object.GetEntityId()
    Object.MemberwiseClone()
    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.FindObjectsByType(Type)
    Object.FindObjectsByType(Type, FindObjectsInactive)
    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.FindObjectsByType<T>()
    Object.FindObjectsByType<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.ReferenceEquals(object, object)
    Namespace: Unity.Tilemaps.Experimental
    Assembly: Unity.2D.Tilemap.Experimental.dll
    Syntax
    [Serializable]
    [HelpURL("https://docs.unity3d.com/Packages/com.unity.2d.tilemap.extras@latest/index.html?subfolder=/manual/RuleTile.html")]
    public class HexagonalRuleEntityIdTile : RuleEntityIdTile

    Fields

    m_FlatTop

    Whether this is a flat top Hexagonal Tile

    Declaration
    public bool m_FlatTop
    Field Value
    Type Description
    bool

    Properties

    getTileAnimationDataJobDelegate

    Returns the delegate function called by Tilemap using Unity Jobs to get Tile Animation Data from HexagonalRuleEntityIdTiles

    Declaration
    protected override EntityIdTileBase.GetTileAnimationDataJobDelegate getTileAnimationDataJobDelegate { get; }
    Property Value
    Type Description
    EntityIdTileBase.GetTileAnimationDataJobDelegate
    Overrides
    RuleEntityIdTile.getTileAnimationDataJobDelegate

    getTileDataJobDelegate

    Returns the delegate function called by Tilemap using Unity Jobs to get Tile Data from HexagonalRuleEntityIdTiles

    Declaration
    protected override EntityIdTileBase.GetTileDataJobDelegate getTileDataJobDelegate { get; }
    Property Value
    Type Description
    EntityIdTileBase.GetTileDataJobDelegate
    Overrides
    RuleEntityIdTile.getTileDataJobDelegate

    m_RotationAngle

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

    Declaration
    public override int m_RotationAngle { get; }
    Property Value
    Type Description
    int
    Overrides
    RuleEntityIdTile.m_RotationAngle

    refreshTileJobDelegate

    Returns the delegate function called by Tilemap using Unity Jobs to refresh HexagonalRuleEntityIdTiles

    Declaration
    protected override EntityIdTileBase.RefreshTileJobDelegate refreshTileJobDelegate { get; }
    Property Value
    Type Description
    EntityIdTileBase.RefreshTileJobDelegate
    Overrides
    RuleEntityIdTile.refreshTileJobDelegate

    structType

    Returns the type of data struct used for the HexagonalRuleEntityIdTile, which is the type of HexagonalRuleEntityIdTileDataStruct.

    Declaration
    public override Type structType { get; }
    Property Value
    Type Description
    Type
    Overrides
    RuleEntityIdTile.structType

    Methods

    CopyDataStruct(void*)

    Copies the Data struct used for this HexagonalRuleEntityIdTile to the outPtr buffer for use in Unity Jobs.

    Declaration
    public override void CopyDataStruct(void* outPtr)
    Parameters
    Type Name Description
    void* outPtr

    Data buffer to copy data struct from HexagonalRuleEntityIdTile to.

    Overrides
    RuleEntityIdTile.CopyDataStruct(void*)

    GetMirroredPosition(int3, bool, bool)

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

    Declaration
    public override int3 GetMirroredPosition(int3 position, bool mirrorX, bool mirrorY)
    Parameters
    Type Name Description
    int3 position

    Original position of Tile.

    bool mirrorX

    Mirror in the X Axis.

    bool mirrorY

    Mirror in the Y Axis.

    Returns
    Type Description
    int3

    Mirrored position of Tile.

    Overrides
    RuleEntityIdTile.GetMirroredPosition(int3, bool, bool)

    GetOffsetPosition(int3, int3)

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

    Declaration
    public override int3 GetOffsetPosition(int3 position, int3 offset)
    Parameters
    Type Name Description
    int3 position

    Position to offset.

    int3 offset

    Offset for the position.

    Returns
    Type Description
    int3

    The offset position.

    Overrides
    RuleEntityIdTile.GetOffsetPosition(int3, int3)

    GetOffsetPositionReverse(int3, int3)

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

    Declaration
    public override int3 GetOffsetPositionReverse(int3 position, int3 offset)
    Parameters
    Type Name Description
    int3 position

    Position to offset.

    int3 offset

    Offset for the position.

    Returns
    Type Description
    int3

    The reversed offset position.

    Overrides
    RuleEntityIdTile.GetOffsetPositionReverse(int3, int3)

    GetRotatedPosition(int3, int)

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

    Declaration
    [BurstCompile]
    public override int3 GetRotatedPosition(int3 position, int rotation)
    Parameters
    Type Name Description
    int3 position

    Original position of Tile.

    int rotation

    Rotation in degrees.

    Returns
    Type Description
    int3

    Rotated position of Tile.

    Overrides
    RuleEntityIdTile.GetRotatedPosition(int3, int)

    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
    RuleEntityIdTile.GetTileAnimationData(Vector3Int, ITilemap, ref 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
    RuleEntityIdTile.GetTileData(Vector3Int, ITilemap, ref TileData)

    OnDisable()

    Cleans up the HexagonalRuleEntityIdTile.

    Declaration
    public override void OnDisable()
    Overrides
    RuleEntityIdTile.OnDisable()

    OnEnable()

    Initializes the HexagonalRuleEntityIdTile.

    Declaration
    public override void OnEnable()
    Overrides
    RuleEntityIdTile.OnEnable()

    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
    RuleEntityIdTile.RefreshTile(Vector3Int, ITilemap)

    RuleMatches(ref RuleMatchInput, ref TilemapDataStruct, ref HexagonalRuleEntityIdTileDataStruct, ref int3, bool, bool)

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

    Declaration
    [BurstCompile]
    public static bool RuleMatches(ref RuleMatchInput ruleMatch, ref TilemapDataStruct tilemapData, ref HexagonalRuleEntityIdTile.HexagonalRuleEntityIdTileDataStruct tileData, ref int3 position, bool mirrorX, bool mirrorY)
    Parameters
    Type Name Description
    RuleMatchInput ruleMatch

    Neighbor matching rule.

    TilemapDataStruct tilemapData

    Tilemap to match.

    HexagonalRuleEntityIdTile.HexagonalRuleEntityIdTileDataStruct tileData

    Tile to match.

    int3 position

    Position of the Tile on the Tilemap.

    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(ref RuleMatchInput, ref TilemapDataStruct, ref HexagonalRuleEntityIdTileDataStruct, ref int3, int, bool)

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

    Declaration
    [BurstCompile]
    public static bool RuleMatches(ref RuleMatchInput ruleMatch, ref TilemapDataStruct tilemapData, ref HexagonalRuleEntityIdTile.HexagonalRuleEntityIdTileDataStruct tileData, ref int3 position, int angle, bool mirrorX = false)
    Parameters
    Type Name Description
    RuleMatchInput ruleMatch

    Neighbor matching rule.

    TilemapDataStruct tilemapData

    Tilemap to match.

    HexagonalRuleEntityIdTile.HexagonalRuleEntityIdTileDataStruct tileData

    Tile to match.

    int3 position

    Position of the Tile on the Tilemap.

    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(ref RuleMatchInput, ref TilemapDataStruct, ref HexagonalRuleEntityIdTileDataStruct, ref int3, ref AffineTransform)

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

    Declaration
    [BurstCompile]
    public static bool RuleMatches(ref RuleMatchInput ruleMatch, ref TilemapDataStruct tilemapData, ref HexagonalRuleEntityIdTile.HexagonalRuleEntityIdTileDataStruct tileData, ref int3 position, ref AffineTransform transform)
    Parameters
    Type Name Description
    RuleMatchInput ruleMatch

    The Tiling Rule to match with.

    TilemapDataStruct tilemapData

    The tilemap to match with.

    HexagonalRuleEntityIdTile.HexagonalRuleEntityIdTileDataStruct tileData

    The Tile's data as a struct.

    int3 position

    Position of the Tile on the Tilemap.

    AffineTransform 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
    RuleEntityIdTile.StartUp(Vector3Int, ITilemap, GameObject)
    In This Article
    Back to top
    Copyright © 2026 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)