Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Unity, Unity3D Скриптуемые объекты Несколько вопросов о ScriptableObject. Как я понял: 1 - пишем класс наследующий от скриптуемого объекта 2 - создаем его экземпляр в папке проекта (не префаб) 3 - цепляем экземпляр к к чему хотим,... https://www.cyberforum.ru/ unity/ thread2281266.html Unity, Unity3D Плагин: сканирование устройства на наличие аудиофайлов
Всем привет Мне надо чтобы Unity сканировал устройство на наличие аудиофайлов. Для этого надо написать плагин и вот собственно он package com.example.dif.playerplugin; import...
Unity, Unity3D Игры для андроид Подскажите пожалуйста возможно ли средствами Visual Studio 2017 создать игру для андроид. Если да то в каком направлении копать. https://www.cyberforum.ru/ unity/ thread2281250.html Unity, Unity3D Вылетающий текст для кликера https://www.cyberforum.ru/ unity/ thread2281225.html
Здравствуйте, как в Unity5 2D сделать текст, вылетающий с одной точки, как в кликерах различных? Пытался найти в интернете, но нашел только 1 урок от AndroidHelper, а там у меня выдает ошибки, ибо не...
Число всегда сохраняется как 0 Unity, Unity3D
Здравствуйте. В программировании нуб. Пишу програмку для Unity. Задался вопросом сохранения данных. Немного погуглив нашел неплохой способ, а именно сохранение Json в Player Prefs. Если упростить у...
Unity, Unity3D Как сделать что бы родительский обьект оставался статичным? https://www.cyberforum.ru/ unity/ thread2281177.html
Здраствуйте. Пытаюсь сделать что бы при нажатии на джойстик, у меня крутилась только задняя часть. Но не получается. Мучаюсь уже около двух часов. Прошу, помогите :( using UnityEngine; using...
Unity, Unity3D Не могу сделать слежение монстра за игроком Добрый день! Я написал простой скрипт для зомби, чтоб он ходил, но я без понятия, как заставить зомби поворачиваться к игроку? Всё что я знаю, так это то, что будут использовать Кватернионы и метод ... https://www.cyberforum.ru/ unity/ thread2281136.html Unity, Unity3D UI на Unity. Какой подход для создания UI самый правильный и удобный в плане поддержки, внесения изменений и развития?
1. Как я понял, есть возможность рисовать UI на шейдерах и с помощью мешей (я пока мало что об этом всём знаю, так что вопрос может быть звучит странно, не знаю). Верно? 2. Marklight это то что...
Unity, Unity3D Ошибка при компиляции https://www.cyberforum.ru/ unity/ thread2280973.html
Выдает эту ошибку и говорит что я что-то неправильно настроил. UnityException: Bundle Identifier has not been set up correctly Please set the Bundle Identifier in the Player Settings. The value...
Unity, Unity3D Анимация работает без смещения https://www.cyberforum.ru/ unity/ thread2280767.html
Доброго времени суток, в общем есть анимация падения из c4d, в юнити она производиться как анимация где человек упал на пол т.е. со смещениям в низ, а в аниматоре без смещения, видео прикрепил:...
Unity, Unity3D "В приложении произошла ошибка" на Android
Доброго времени суток! Собираю проект под андроид. При запуске на смартфоне выскакивает системная ошибка с текстом "В приложении произошла ошибка" и на этом всё. В чём проблема не понятно. В...
Unity, Unity3D Как написать что-то вроде эксплоита для защиты своей работы? https://www.cyberforum.ru/ unity/ thread2280671.html
Да, я не опытный программист, но хотел бы знать ( на будущее), как написать что-то вроде эксплоита для защиты своей работы на фрилансе? Например, я через 5 месяцев изучения Юнити, хочу начать...
104 / 77 / 36
Регистрация: 13.01.2016
Сообщений: 393
0

Перемещение игрока в сетевой игре пс использованием джойстика - Unity, Unity3D - Ответ 12577171

02.08.2018, 22:12. Показов 527. Ответов 1
Метки (Все метки)

Есть два скрипта:джойстик и скрипт игрока, который получает от джойстика вектор. Но суть в том, что джойстик работает только у последнего подключившегося. То есть, я могу двигать его во всех окнах, но эффект (передвижение) будет только у последнего. Возможно, это как с камерой, надо её привязать и включать на локальном игроке, но нужна помощь, вот скрипты:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;
 
public class Joystic : MonoBehaviour, IDragHandler, IPointerUpHandler, IPointerDownHandler
{
    private Image bgImg;
    private Image joysticImg;
    private Vector3 inputVector;
 
    private void Start()
    {
        bgImg = GetComponent<Image>();
        joysticImg = transform.GetChild(0).GetComponent<Image>();
    }
 
    public virtual void OnPointerDown(PointerEventData ped)
    {
        OnDrag(ped);
    }
 
    public virtual void OnPointerUp(PointerEventData ped)
    {
        inputVector = Vector3.zero;
        joysticImg.rectTransform.anchoredPosition = Vector3.zero;
    }
 
    public virtual void OnDrag(PointerEventData ped)
    {
        Vector2 pos;
        if(RectTransformUtility.ScreenPointToLocalPointInRectangle(bgImg.rectTransform, ped.position, ped.pressEventCamera, out pos))
        {
            pos.x = (pos.x / bgImg.rectTransform.sizeDelta.x);
            pos.y = (pos.y / bgImg.rectTransform.sizeDelta.y);
 
            inputVector = new Vector3(pos.x * 2, 0, pos.y * 2);
            inputVector = (inputVector.magnitude > 1.0f) ? inputVector.normalized : inputVector;
 
            joysticImg.rectTransform.anchoredPosition = new Vector3(inputVector.x * (bgImg.rectTransform.sizeDelta.x / 3), inputVector.z * (bgImg.rectTransform.sizeDelta.y / 3));
        }
    }
//Два, используемых в скрипте игрок, вектора
    public float Horizontal()
    {
        if (inputVector.x != 0)
            return inputVector.x;
        else
            return Input.GetAxis("Horizontal");
    }
 
    public float Vertical()
    {
        if (inputVector.z != 0)
            return inputVector.z;
        else
            return Input.GetAxis("Vertical");
    }
}
Это сам джойстик, большая часть - косметическая, чтобы двигался

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
 
public class PlayerController : NetworkBehaviour
{
 
    public PlayerInfo PlayerInfo;
    public Joystic Joystic;
    Vector3 MoveVector;
 
    void Start()
    {
        PlayerInfo = transform.GetComponent<PlayerInfo>();
    }
 
    void FixedUpdate()
    {
        if (!isLocalPlayer)
        {
            return;
        }
 
        MoveVector = PullInput(); //Присваиваем вектору значение, возвращаемое из метода ниже
 
        Move(MoveVector);
    }
 
    void Move(Vector3 dir)  //Передвижение по полученному вектору
    {
        transform.position += dir * PlayerInfo.Value.Speed;
    }
 
    private Vector3 PullInput() //Собственно, получение вектора
    {
        Vector3 dir = Vector3.zero;
 
        dir.x = Joystic.Horizontal();
        dir.z = Joystic.Vertical();
 
        if (dir.magnitude > 0)
            dir.Normalize();
        return dir;
    }
}
А это игрок, который получает вектор.

Вернуться к обсуждению:
Перемещение игрока в сетевой игре пс использованием джойстика Unity, Unity3D
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.08.2018, 22:12
Готовые ответы и решения:

Эмуляция джойстика: как программно нажимать кнопки передвижения в игре
Доброе время. Требуется помощь! Эмуляция джойстика, тесть как программно нажимать кнопки...

Получить id игрока во флеш-игре.
День добрый! Помогите пожалуйста советом. Заранее извините если не в ту ветку залез. Есть игровой...

Панель игрока в игре русская рыбалка
Здравствуйте.Раньше в игре русская рыбалка была доп.программа панель игрока.Сейчас её нет.Принцип...

Поворот игрока в TDS игре на андройд
Чтобы не подключать каждый раз смарт для теста, тестировал на компе и управление было кнопки +...

1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.08.2018, 22:12

Придумать алгоритм пересечения игрока с пулей в игре
Всем привет! Если в кратце то нужно придумать алгоритм пересечения игрока с пулей. Существует...

Вывести ник игрока, одержавшего победу в игре
помогите сделать ,при победе выдавало имя кто выиграл ,а не крестик или нолик выиграл .

Перемещение игрока во время анимации
Здравствуйте, есть такой вопрос, как мне можно сделать так, что бы во время проигрывания...

Создать форму регистрации Игрока в он-лайновой браузерной игре
Люди помогите с заданием горю. Созданная в данной работе форма должна содержать следующие поля:...

Перемещение 2D игрока без учета массы
Здравствуйте! Подскажите пожалуйста, как исправить управление чтобы масса не учитывалась при...

Всех тех противников в игре заменить на одного противника-игрока
Есть игра космический шутер. Нужно всех тех противников заменить на одного противника-игрока, чтобы...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru