Дорога спавнится на одном месте

Есть несколько префабов дороги, они должны спавнится одна за одной при достижении игроком определённой позиции, а так же они спавняться при старте, но они почему то спавняться в одном и том же месте

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class GroundGenerator : MonoBehaviour
{

    [SerializeField] GameObject[] GroundPrefabs;
    [SerializeField] float SpawnPos;
    [SerializeField] float TileLenght;
    [SerializeField] Transform player;
    int startTiles = 6;

    void Start()
    {
        for (int i = 0; i < startTiles; i++)
        {
            SpawnTile(Random.Range(0, GroundPrefabs.Length));
        }
    }

    void Update()
    {
        if (player.position.x > SpawnPos - (startTiles *TileLenght))
        {
            SpawnTile(Random.Range(0, GroundPrefabs.Length));
        }
    }

    void SpawnTile(int tileIndex)
    {
        Instantiate(GroundPrefabs[tileIndex], transform.forward * SpawnPos, transform.rotation);
        SpawnPos += TileLenght;
    }
}

Так смотрите какие координаты получаются, выводите SpawnPos и т.п. при каждом спавне.

Вывел SpawnPos, прибавляется каждый раз на 16,75 и это правильно, но спавн всё рано происходит на одном и том-же месте

А transform.forward * SpawnPos какие получаются?

увеличивается по z на 16.75 каждый раз, но мне надо по x, у меня 2d игра

        Instantiate(GroundPrefabs[tileIndex], Vector2.right * SpawnPos, transform.rotation);