Проблемка с сетью

Сеть в Unity3D

Проблемка с сетью

Сообщение Neverdie 27 янв 2011, 11:53

Столкнулся с проблемкой (сори за неправильное оформление еще не понял что куда )

делал сетевую игру по видео мануалу
там была суть сделал игрока (просто модель шарика) с простым управление
камеру ставил просто чтоб видеть шарики
но решил сделал фпс вид (аля Shooter) сделал префаб с камерой

но вот проблема когда подключаюсь к серверу

и начинаю управлять игроком то 2 игрок тоже упраляеца

тоесть управление активного окна переход на того на кого вижу


не могу понять где ошибка тыкните плз пальцем или наведите суть проблемы


using UnityEngine;
using System.Collections;
using System;

public class MovePlayer: MonoBehaviour
{

public float speed = 10;

void Start ()
{
if (!networkView.isMine)
{
enabled = false;
}
}

void Update ()
{
if (networkView.isMine)
{
Vector3 moveDir = new Vector3(Input.GetAxis("Horizontal"),0,Input.GetAxis("Vertical"));
transform.Translate(speed * moveDir * Time.deltaTime);
}

}

void OnSerializeNetworkView(BitStream stream, NetworkMessageInfo info)
{
if (stream.isWriting)
{
Vector3 pos = transform.position;
stream.Serialize(ref pos);
}
else
{
Vector3 posRec = Vector3.zero;
stream.Serialize(ref posRec);
transform.position = posRec;
}
}
}
Аватара пользователя
Neverdie
UNец
 
Сообщения: 17
Зарегистрирован: 19 окт 2010, 00:07

Re: Проблемка с сетью

Сообщение Nolex 28 янв 2011, 20:53

У тебя ошибка в скрипте.

У тебя:
Синтаксис:
Используется javascript
if (networkView.isMine)
{
Vector3 moveDir = new Vector3(Input.GetAxis("Horizontal"),0,Input.GetAxis("Vertical"));
transform.Translate(speed * moveDir * Time.deltaTime);
}
 

а надо:
Синтаксис:
Используется javascript
if (networkView.isMine)
{

}
else
{
Vector3 moveDir = new Vector3(Input.GetAxis("Horizontal"),0,Input.GetAxis("Vertical"));
transform.Translate(speed * moveDir * Time.deltaTime);
}
 


Как-то так..

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

Re: Проблемка с сетью

Сообщение Ert Donuell 28 янв 2011, 22:03

Nolex писал(а):
Синтаксис:
Используется javascript
if (networkView.isMine)
{

}
else
{
Vector3 moveDir = new Vector3(Input.GetAxis("Horizontal"),0,Input.GetAxis("Vertical"));
transform.Translate(speed * moveDir * Time.deltaTime);
}
 

Тогда уж
Синтаксис:
Используется javascript
if (!networkView.isMine)
{
        Vector3 moveDir = new Vector3(Input.GetAxis("Horizontal"),0,Input.GetAxis("Vertical"));
        transform.Translate(speed * moveDir * Time.deltaTime);
}
 
Добавить dmitrii.baranov.yumasoft в Skype
Аватара пользователя
Ert Donuell
Старожил
 
Сообщения: 781
Зарегистрирован: 05 июл 2010, 09:50
Откуда: Санкт-Петербург
  • ICQ

Re: Проблемка с сетью

Сообщение Neverdie 28 янв 2011, 23:32

не ребят спасибо уже нашел бок
там все ок
ну более мене
просто с нуля пишу пока на грабли не наступлю

надо было камеру отключить просто

мало инфы по этой части было а мануалы тыкали чтоб камера была как в 3 лице
а в шутерах мало что сказано про
пока нашел такое решение


Синтаксис:
Используется javascript
function Update(){

//checks if you control the character
if(networkView.isMine){



//find all cams and disable them
allCams = FindObjectsOfType (Camera);
for (var cam : Camera in allCams) {
cam.enabled = false;

}

//finds cams inside of object the script is attached to and enables them.
var myCamArea = gameObject.GetComponentsInChildren (Camera);
for (var myCam : Camera in myCamArea){

myCam.enabled = true;
}

}

}

 
Аватара пользователя
Neverdie
UNец
 
Сообщения: 17
Зарегистрирован: 19 окт 2010, 00:07

Re: Проблемка с сетью

Сообщение Neverdie 28 янв 2011, 23:34

не ребят спасибо уже нашел бок
там все ок
ну более мене
просто с нуля пишу пока на грабли не наступлю

надо было камеру отключить просто

мало инфы по этой части было а мануалы тыкали чтоб камера была как в 3 лице
а в шутерах мало что сказано про
пока нашел такое решение


Синтаксис:
Используется javascript
function Update(){

//checks if you control the character
if(networkView.isMine){



//find all cams and disable them
allCams = FindObjectsOfType (Camera);
for (var cam : Camera in allCams) {
cam.enabled = false;

}

//finds cams inside of object the script is attached to and enables them.
var myCamArea = gameObject.GetComponentsInChildren (Camera);
for (var myCam : Camera in myCamArea){

myCam.enabled = true;
}

}

}

 
Аватара пользователя
Neverdie
UNец
 
Сообщения: 17
Зарегистрирован: 19 окт 2010, 00:07

Re: Проблемка с сетью

Сообщение Neverdie 28 янв 2011, 23:44

не ребят спасибо уже нашел бок
там все ок
ну более мене
просто с нуля пишу пока на грабли не наступлю

надо было камеру отключить просто

мало инфы по этой части было а мануалы тыкали чтоб камера была как в 3 лице
а в шутерах мало что сказано про
пока нашел такое решение


Синтаксис:
Используется javascript
function Update(){

//checks if you control the character
if(networkView.isMine){



//find all cams and disable them
allCams = FindObjectsOfType (Camera);
for (var cam : Camera in allCams) {
cam.enabled = false;

}

//finds cams inside of object the script is attached to and enables them.
var myCamArea = gameObject.GetComponentsInChildren (Camera);
for (var myCam : Camera in myCamArea){

myCam.enabled = true;
}

}

}

 
Аватара пользователя
Neverdie
UNец
 
Сообщения: 17
Зарегистрирован: 19 окт 2010, 00:07

Re: Проблемка с сетью

Сообщение Neverdie 28 янв 2011, 23:55

не ребят спасибо уже нашел бок
там все ок
ну более мене
просто с нуля пишу пока на грабли не наступлю

надо было камеру отключить просто

мало инфы по этой части было а мануалы тыкали чтоб камера была как в 3 лице
а в шутерах мало что сказано про
пока нашел такое решение


Синтаксис:
Используется javascript
function Update(){

//checks if you control the character
if(networkView.isMine){



//find all cams and disable them
allCams = FindObjectsOfType (Camera);
for (var cam : Camera in allCams) {
cam.enabled = false;

}

//finds cams inside of object the script is attached to and enables them.
var myCamArea = gameObject.GetComponentsInChildren (Camera);
for (var myCam : Camera in myCamArea){

myCam.enabled = true;
}

}

}

 
Аватара пользователя
Neverdie
UNец
 
Сообщения: 17
Зарегистрирован: 19 окт 2010, 00:07

Re: Проблемка с сетью

Сообщение Neverdie 29 янв 2011, 00:46

не ребят спасибо уже нашел бок
там все ок
ну более мене
просто с нуля пишу пока на грабли не наступлю

надо было камеру отключить просто

мало инфы по этой части было а мануалы тыкали чтоб камера была как в 3 лице
а в шутерах мало что сказано про
пока нашел такое решение


Синтаксис:
Используется javascript
function Update(){

//checks if you control the character
if(networkView.isMine){



//find all cams and disable them
allCams = FindObjectsOfType (Camera);
for (var cam : Camera in allCams) {
cam.enabled = false;

}

//finds cams inside of object the script is attached to and enables them.
var myCamArea = gameObject.GetComponentsInChildren (Camera);
for (var myCam : Camera in myCamArea){

myCam.enabled = true;
}

}

}

 
Аватара пользователя
Neverdie
UNец
 
Сообщения: 17
Зарегистрирован: 19 окт 2010, 00:07

Re: Проблемка с сетью

Сообщение Neverdie 29 янв 2011, 10:18

c управленеим все ок

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

Синтаксис:
Используется javascript
function Update(){

//checks if you control the character
if(networkView.isMine){



//find all cams and disable them
allCams = FindObjectsOfType (Camera);
for (var cam : Camera in allCams) {
cam.enabled = false;

}

//finds cams inside of object the script is attached to and enables them.
var myCamArea = gameObject.GetComponentsInChildren (Camera);
for (var myCam : Camera in myCamArea){

myCam.enabled = true;
}

}

}
Аватара пользователя
Neverdie
UNец
 
Сообщения: 17
Зарегистрирован: 19 окт 2010, 00:07


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

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

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