Задать вопрос
Ответы пользователя по тегу C#
  • Как изменяться позицию объекта с помощью мыши?

    REKTOR_RG
    @REKTOR_RG
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    
    public class scale : MonoBehaviour
    {
    Vector3 pos = new Vector3();
    
    private void OnMouseEnter()
    {
    transform.localScale = new Vector3(0.30f, 0.02f, 0.50f);
    }
    
    private void OnMouseExit()
    {
    transform.localScale = new Vector3(0.25f, 0.01f, 0.45f);
    }
    void OnMouseDrag()
    {
    transform.position = new Vector3(pos);
    }
    }

    По идее должно работать. Проблема в том что в функции OnMouseDrag() вы не вызвали конструктор (не указали "new")
    UPD: Пересмотрел ваш код, и понял что то, что я написал скорее всего работать не будет. Вам вообще не нужен конструктор Vector3, вам нужно просто указать
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    
    public class scale : MonoBehaviour
    {
    Vector3 pos = new Vector3();
    
    private void OnMouseEnter()
    {
    transform.localScale = new Vector3(0.30f, 0.02f, 0.50f);
    }
    
    private void OnMouseExit()
    {
    transform.localScale = new Vector3(0.25f, 0.01f, 0.45f);
    }
    void OnMouseDrag()
    {
    transform.position = pos;
    }
    }
    Ответ написан