Суббота, 23 Ноября 2024, 07:38

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Как двигать 2D объект
vampir0305Дата: Среда, 20 Июля 2016, 20:22 | Сообщение # 1
Unity C# Programmer
Сейчас нет на сайте
Имеется 2D объект и мне нужно его двигать вправо. Я пробовал этот код, но не вышло(С#)
Код
using UnityEngine;
using System.Collections;

public class Control : MonoBehaviour {

    public Vector2 spd = new Vector2(5,0);
    public Transform body;

    // Use this for initialization
    void Start () {

    }
    
    // Update is called once per frame
    void Update () {

        body.transform.position + Vector2.right * 2f;
}


Красочная сюжетно-ориентированная игра-головоломка

Сообщение отредактировал vampir0305 - Среда, 20 Июля 2016, 20:26
EgoorДата: Среда, 20 Июля 2016, 22:14 | Сообщение # 2
участник
Сейчас нет на сайте
facepalm
Код
body.transform.position += Vector2.right * 2f;
TymonrДата: Среда, 20 Июля 2016, 23:05 | Сообщение # 3
With OpenSource forever
Сейчас нет на сайте
vampir0305,

посмотри в гугле "операция присвоения" — полезно почитать будет.

А на саму проблему ответили выше


Если вы решили обратиться к нам за помощью, не становитесь в позицию неудачника. И не ведите себя как неудачник. Лучший способ получить быстрый и чуткий ответ, - спрашивать как победитель — спрашивать как человек умный, уверенный в себе и знающий, которому просто понадобилась помощь при решении одной конкретной проблемы.
Как правильно задавать вопросы в технических форумах
EchoITДата: Среда, 20 Июля 2016, 23:29 | Сообщение # 4
старожил
Сейчас нет на сайте
Egoor, Tymonr, чё вы так напали на него, может просто опечатался и не заметил.

Долгожданный анонсик: State of War
TymonrДата: Четверг, 21 Июля 2016, 03:22 | Сообщение # 5
With OpenSource forever
Сейчас нет на сайте
EchoIT, да я и не нападал. Да и Egoor все норм ответил. Раз уж человек сюда пишет, значит что-то не работает. А тут больше не чему не работать

Если вы решили обратиться к нам за помощью, не становитесь в позицию неудачника. И не ведите себя как неудачник. Лучший способ получить быстрый и чуткий ответ, - спрашивать как победитель — спрашивать как человек умный, уверенный в себе и знающий, которому просто понадобилась помощь при решении одной конкретной проблемы.
Как правильно задавать вопросы в технических форумах
vampir0305Дата: Четверг, 21 Июля 2016, 06:30 | Сообщение # 6
Unity C# Programmer
Сейчас нет на сайте
Сделал так:
Код

using UnityEngine;
using System.Collections;

public class Control : MonoBehaviour {

    public Vector2 spd = new Vector2(5,0);
    public Transform body;

    // Use this for initialization
    void Start () {

    }
    
    // Update is called once per frame
    void Update () {

        body.transform.position += Vector2.right * 2f;
}

Всё равно не работает. Выдаёт ошибку Assets/Control.cs(21,23): error CS0121: The call is ambiguous between the following methods or properties: `UnityEngine.Vector2.operator +(UnityEngine.Vector2, UnityEngine.Vector2)' and `UnityEngine.Vector3.operator +(UnityEngine.Vector3, UnityEngine.Vector3)'


Красочная сюжетно-ориентированная игра-головоломка
LertmindДата: Четверг, 21 Июля 2016, 08:07 | Сообщение # 7
заслуженный участник
Сейчас нет на сайте
vampir0305, Transform.position имеет тип Vector3, поэтому нельзя прибавить Vector2. Кроме того, вместо body.transform.position можно написать просто body.position. Так что получится:
Код
body.position += Vector3.right * 2f;
vampir0305Дата: Четверг, 21 Июля 2016, 14:25 | Сообщение # 8
Unity C# Programmer
Сейчас нет на сайте
Lertmind, Не работает. Всё равно пишет ошибку:Assets/Control.cs(22,14): error CS0121: The call is ambiguous between the following methods or properties: `UnityEngine.Vector3.operator +(UnityEngine.Vector3, UnityEngine.Vector3)' and `UnityEngine.Vector2.operator +(UnityEngine.Vector2, UnityEngine.Vector2)'

Красочная сюжетно-ориентированная игра-головоломка
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг