Группы в юнити - networkView.group = X;

Сеть в Unity3D

Группы в юнити - networkView.group = X;

Сообщение Nolex 31 янв 2011, 01:02

Подскажите как правильно использовать группы?

Вот для примера взял простейший скрипт из M2HL Tutorial Tutorial_2A3.js:
Игрок-Сервер может двигать кубик, а игрок-клиент только смотреть за движениями.

Вот код оригинала:
Синтаксис:
Используется javascript
private var lastPosition : Vector3;
function Update(){
       
        if(Network.isServer){
                //Only the server can move the cube!                   
                var moveDirection : Vector3 = new Vector3(-1*Input.GetAxis("Vertical"), 0,Input.GetAxis("Horizontal"));
                var speed : float = 5;
                transform.Translate(speed * moveDirection * Time.deltaTime);
               
                //Save some network bandwidth; only send an rpc when the position has moved more than X
                if(Vector3.Distance(transform.position, lastPosition)>=0.05){
                        lastPosition=transform.position;
                       
                        //Send the position Vector3 over to the others; in this case all clients
                        networkView.RPC("SetPosition", RPCMode.Others, transform.position);
                }
        }
       
}

@RPC
function SetPosition(newPos : Vector3){
        //This RPC is in this case always called by the server,
        // but executed on all clients
       
        transform.position=newPos;     
}


Я добавил функцию Awake
function Awake() {
networkView.group = 2;
}
и скомпилировал файл.

Потом скомпилировал такой же файл с networkView.group = 3;

Запустил эти два примера, но результатов ноль. Сервер с группой 2, клиент с группой 3, а они всеравно взаимодействуют между собой! :-\


Подскажите в чем проблема, пожалуйста!
Разработка игр в студии Brinemedia .
Аватара пользователя
Nolex
UNIверсал
 
Сообщения: 483
Зарегистрирован: 17 окт 2010, 12:26
Откуда: Украина
Skype: exlumen
  • Сайт
  • ICQ

Re: Группы в юнити - networkView.group = X;

Сообщение BUDU_KRATOK 07 фев 2011, 12:54

Cам группы ещё не смотрел, но в скором времени понадобятся :)
Посмотри http://unity3d.com/support/documentatio ... abled.html и http://unity3d.com/support/documentatio ... abled.html , может нужно ещё их использовать?

Ещё есть пример с группами: http://unity3d.com/support/documentatio ... lLoad.html
BUDU_KRATOK
UNец
 
Сообщения: 29
Зарегистрирован: 06 авг 2010, 08:29

Re: Группы в юнити - networkView.group = X;

Сообщение Nolex 07 фев 2011, 20:27

BUDU_KRATOK писал(а):Cам группы ещё не смотрел, но в скором времени понадобятся :)
Посмотри http://unity3d.com/support/documentatio ... abled.html и http://unity3d.com/support/documentatio ... abled.html , может нужно ещё их использовать?

Ещё есть пример с группами: http://unity3d.com/support/documentatio ... lLoad.html

Да ладно, я это я уже 10 раз все пересмотрел.. :)

Пришел к выводу, что группы в юнити немного для другого предназначены. Разделить с помощью networkView.group аудиторию на части не вышло, на офе тоже много подобных тем, никто незнает как это реализовать.

Чтоб разделить на группы, можно посылать RPC определенным пользователяем, чтоб граммотно разделить, надо написать свой алгоритм.
Разработка игр в студии Brinemedia .
Аватара пользователя
Nolex
UNIверсал
 
Сообщения: 483
Зарегистрирован: 17 окт 2010, 12:26
Откуда: Украина
Skype: exlumen
  • Сайт
  • ICQ


Вернуться в Сеть

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3