Не могу переместить объект по оси Y
Создал скрипт, в котором в зависимости от очков игрока меняется MeshFilter модельки (был куб, стала сфера, в таком стиле). Но для корректного расположения нужно поменять скейл и положение по оси Y объекта, когда сменится меш. Тут и проблема: скейл меняется, а положение нет, причем по осям X и Z положение можно сменить, а именно по Y -- нет.
Вот метод смены мешей
void ChangeMesh(int i)
{
switch (i)
{
case 0:
MeshFil.mesh = meshs[i];
Trans.localPosition = new Vector3(0, 2f, -4.5f);
Trans.localScale = new Vector3(1,1,1);
break;
case 1:
MeshFil.mesh = meshs[i];
Trans.localPosition = new Vector3(0, 4f, -3.5f);
Trans.localScale = new Vector3(0.6f, 0.6f, 0.6f);
Старт и апдейт
private void Start()
{
MeshFil = player.GetComponent<MeshFilter>();
Trans = player.GetComponent<Transform>();
meshs[0] = MeshFil.mesh;
}
private void FixedUpdate()
{
MoveHoriz(val);
if (MEtaStatic.StaticScore == 1 && CurrentModel == 0)
{
ChangeMesh(1);
}
if (MEtaStatic.StaticScore == 4 && CurrentModel == 1)
{
ChangeMesh(0);
}
}