- Home /
GameObject of tilebase won't show
Hi, i'm trying to attach some UI elements in my tiles. I've created a prefab with them and attached them to the tile using the following method inside Start(). My prefab is a Raw Image with a TextMeshPRO child element.
[Header("Tiles")]
[SerializeField] Sprite sprite;
[SerializeField] GameObject go;
PrefabTile tile;
private void createTile()
{
tile = ScriptableObject.CreateInstance<PrefabTile>();
tile.Sprite = Sprite;
tile.Prefab = myPrefab;
}
public class PrefabTile : TileBase
{
public Sprite Sprite; //The sprite of tile in a palette and in a scene
public GameObject Prefab; //The gameobject to spawn
public override void GetTileData(Vector3Int position, ITilemap tilemap, ref TileData tileData)
{
if (Sprite) tileData.sprite = Sprite; // Asigning sprite
tileData.gameObject = Prefab; // Assigning prefab
}
public override bool StartUp(Vector3Int position, ITilemap tilemap, GameObject go)
{
// Streangly the position of gameobject starts at Left Bottom point of cell and not at it center
//go.transform.position += Vector3.right * 0.5f;
return base.StartUp(position, tilemap, go);
}
}
The sprite will appear fine on the tilemap but the prefab won't show. What could be wrong here? Any help is much appreciated!
Edit: I've tried playing with layers and the camera to see if the prefabs are hidden but they don't. I'm not sure what's wrong here.
Your answer
Follow this Question
Related Questions
How to create tile prefabs? 1 Answer
Painting Prefabs with Tile Palette (Inefficiency && Offset Problem) 0 Answers
Correct use of setTile to add tile to Tilemap 0 Answers
2D Tilemap prefab brush doesn't paint the tile in the right place 0 Answers
How to Snap Hallway Tile Prefabs Together Seamlessly so that Don't Overlap? 0 Answers