параллакс в юнити 2D

задача: нужно сделать эффект параллакса в меню игры относительно мышки. проблема: я не знаю как это сделать . пошёл искать в инете как это сделать . нашёл этот скрипт

using System.Collections.Generic;
using UnityEngine;

public class paralax : MonoBehaviour
{

    private Vector3 pz;
    private Vector3 StartPos;

    public float moveModifier;

    void Start()
    {
        StartPos = transform.position;
    }

    void Update()
    {
        var pz = Camera.main.ScreenToViewportPoint(Input.mousePosition);
        pz.z = 0;
        gameObject.transform.position = pz;
        transform.position = new Vector3(StartPos.x + (pz.x * moveModifier), StartPos.y + (pz.y * moveModifier), 0);
    }

}

но он странно работает. когда мышка в левом нижнем углу то изображения в середине экрана. когда мышка в середине экрана то все объекты уходят, либо в правый верхний угол, либо в левый нижний угол(в зависимости от + - в значении moveModifier).

как решить эту проблему?


Ответы (0 шт):