Unity Spain
Post Antiguos => General (Antiguo) => Mensaje iniciado por: Aitor en Junio 04, 2016, 02:03:04 PM
Actualmente en Unity multiplayer, cuando cambias la escala de un player, este cambio no se actualiza automáticamente en el resto de clientes.
¿Alguien sabe cómo se puede hacer?
Es para un juego tipo agar.io, donde el jugador va cambiando de tamaño.
Tienes que mandar un mensaje del host al cliente con la nueva escala y aplicarlo en el cliente.
http://docs.unity3d.com/ScriptReference/Networking.ClientRpcAttribute.html (http://docs.unity3d.com/ScriptReference/Networking.ClientRpcAttribute.html)
¿Seguro que funciona?
Lo digo porque si tengo seleccionada
Local Player Authority checkbox en el
NetworkIdentity a true, ¿ya me va a dejar hacer cambios en los otros jugadores?
Cita de: juanma_teso date=1465055769Tienes que mandar un mensaje del host al cliente con la nueva escala y aplicarlo en el cliente.
http://docs.unity3d.com/ScriptReference/Networking.ClientRpcAttribute.html (http://docs.unity3d.com/ScriptReference/Networking.ClientRpcAttribute.html)
El cambio no lo hace un jugador a otro, el cambio lo hace el jugador en el servidor y el servidor actualiza la escala en los clientes, sería como
local->servidor->clientes
Cuando me refiero a los clientes, no me refiero a todos los jugadores, sino a tu jugador en los clientes (incluido el tuyo), unet se encarga de todo esto con una función Command y otra Rpc,
Lo voy a probar. Muchas gracias.