/// <summary> /// Creates a Preview for the RuleTile. /// </summary> protected virtual void CreatePreview() { m_PreviewUtility = new PreviewRenderUtility(true); m_PreviewUtility.camera.orthographic = true; m_PreviewUtility.camera.orthographicSize = 2; m_PreviewUtility.camera.transform.position = new Vector3(0, 0, -10); var previewInstance = new GameObject(); m_PreviewGrid = previewInstance.AddComponent<Grid>(); m_PreviewUtility.AddSingleGO(previewInstance); m_PreviewTilemaps = new List<Tilemap>(); m_PreviewTilemapRenderers = new List<TilemapRenderer>(); for (int i = 0; i < 4; i++) { var previewTilemapGo = new GameObject(); m_PreviewTilemaps.Add(previewTilemapGo.AddComponent<Tilemap>()); m_PreviewTilemapRenderers.Add(previewTilemapGo.AddComponent<TilemapRenderer>()); previewTilemapGo.transform.SetParent(previewInstance.transform, false); } for (int x = -2; x <= 0; x++) for (int y = -1; y <= 1; y++) m_PreviewTilemaps[0].SetTile(new Vector3Int(x, y, 0), tile); for (int y = -1; y <= 1; y++) m_PreviewTilemaps[1].SetTile(new Vector3Int(1, y, 0), tile); for (int x = -2; x <= 0; x++) m_PreviewTilemaps[2].SetTile(new Vector3Int(x, -2, 0), tile); m_PreviewTilemaps[3].SetTile(new Vector3Int(1, -2, 0), tile); }