Por favor me ajudem Bug em multiplayer!
2 participantes
Página 1 de 1
Por favor me ajudem Bug em multiplayer!
Olá galerinha estou com um bug estressante, a 3 dias tenho resolver, seria no multiplayer esse bug, estou tentando ampliar meu game para plataforma de multiplayer e consiste na seguinte situação!
Os jogadores podem ser ver e andar, porém quando vou mudar a direção do player ou seja da direta pra esquerda ou vice e versa, o cliente não vê o jogador virando e nem o servidor vê o cliente mudando de lado sempre, ou seja na tela do cliente o servidor quando vai andar fica quase igual o michael jakckson dando moonwalker!
Vou deixar o código aqui para vocês darem uma olhada!
Codigo abaixo da imagem!
if (speed < 0) {
//lookToRight = true;
CmdLookToRightBool (true);
//lookToRight == true
//RpcLookRight (true);
audio.clip = WalkSound;
if (InAndroid == true) {
isRunning = true;
}
}
if (speed > 0) {
lookToRight = false;
CmdLookToRightBool (false);
// RpcLookRight (false);
audio.clip = WalkSound;
if (InAndroid == true) {
isRunning = true;
}
}
[Command]
public void CmdLookToRightBool(bool look){
lookToRight = look;
if (lookToRight) {
positionLeft = positionRight;
positionLeft.x = -1;
transform.localScale = positionLeft;
// gun1.bullet.localScale = positionRight / 4;
katanaTransform.localScale = positionLeft / 2;
} else {
positionLeft = positionRight;
positionLeft.x = 1;
transform.localScale = positionRight;
katanaTransform.localScale = positionRight / 2;
}
}
Obrigado pela atenção!
Os jogadores podem ser ver e andar, porém quando vou mudar a direção do player ou seja da direta pra esquerda ou vice e versa, o cliente não vê o jogador virando e nem o servidor vê o cliente mudando de lado sempre, ou seja na tela do cliente o servidor quando vai andar fica quase igual o michael jakckson dando moonwalker!
Vou deixar o código aqui para vocês darem uma olhada!
Codigo abaixo da imagem!
if (speed < 0) {
//lookToRight = true;
CmdLookToRightBool (true);
//lookToRight == true
//RpcLookRight (true);
audio.clip = WalkSound;
if (InAndroid == true) {
isRunning = true;
}
}
if (speed > 0) {
lookToRight = false;
CmdLookToRightBool (false);
// RpcLookRight (false);
audio.clip = WalkSound;
if (InAndroid == true) {
isRunning = true;
}
}
[Command]
public void CmdLookToRightBool(bool look){
lookToRight = look;
if (lookToRight) {
positionLeft = positionRight;
positionLeft.x = -1;
transform.localScale = positionLeft;
// gun1.bullet.localScale = positionRight / 4;
katanaTransform.localScale = positionLeft / 2;
} else {
positionLeft = positionRight;
positionLeft.x = 1;
transform.localScale = positionRight;
katanaTransform.localScale = positionRight / 2;
}
}
Obrigado pela atenção!
mbppedro- Iniciante
- PONTOS : 2912
REPUTAÇÃO : 5
Respeito as regras :
Re: Por favor me ajudem Bug em multiplayer!
só colocando seu código no campo para código para facilitar para lê
Quanto a tua duvida, não tenho certeza, sou novo no unity,
mas acho que o erro ta ali onde você passa a posição direita (right), para a esquerda (Left) mas não converte a escala, se eu não me engano escala positiva para a direita e negativa para a esquerda. talvez só colocar um sinal de - na frente deve resolver tipo
- Código:
if (speed < 0)
{
//lookToRight = true;
CmdLookToRightBool(true);
//lookToRight == true
//RpcLookRight (true);
audio.clip = WalkSound;
if (InAndroid == true)
{
isRunning = true;
}
}
if (speed > 0)
{
lookToRight = false;
CmdLookToRightBool(false);
// RpcLookRight (false);
audio.clip = WalkSound;
if (InAndroid == true)
{
isRunning = true;
}
}
[Command]
public void CmdLookToRightBool(bool look)
{
lookToRight = look;
if (lookToRight)
{
positionLeft = positionRight;
positionLeft.x = -1;
transform.localScale = positionLeft;
// gun1.bullet.localScale = positionRight / 4;
katanaTransform.localScale = positionLeft / 2;
}
else
{
positionLeft = positionRight;
positionLeft.x = 1;
transform.localScale = positionRight;
katanaTransform.localScale = positionRight / 2;
}
}
Quanto a tua duvida, não tenho certeza, sou novo no unity,
mas acho que o erro ta ali onde você passa a posição direita (right), para a esquerda (Left) mas não converte a escala, se eu não me engano escala positiva para a direita e negativa para a esquerda. talvez só colocar um sinal de - na frente deve resolver tipo
- Código:
transform.localScale = -positionRight;
lucassmart- Iniciante
- PONTOS : 3391
REPUTAÇÃO : 3
Respeito as regras :
Re: Por favor me ajudem Bug em multiplayer!
Em singplayer o código funciona, o problema está sendo em multiplayer o outro cliente não consegue me ver virado!
mbppedro- Iniciante
- PONTOS : 2912
REPUTAÇÃO : 5
Respeito as regras :
Re: Por favor me ajudem Bug em multiplayer!
Niguem para ajudar ? ;-;
mbppedro- Iniciante
- PONTOS : 2912
REPUTAÇÃO : 5
Respeito as regras :
Re: Por favor me ajudem Bug em multiplayer!
você ta usando NetworkIdentity no seu objeto?
lucassmart- Iniciante
- PONTOS : 3391
REPUTAÇÃO : 3
Respeito as regras :
mbppedro- Iniciante
- PONTOS : 2912
REPUTAÇÃO : 5
Respeito as regras :
mbppedro- Iniciante
- PONTOS : 2912
REPUTAÇÃO : 5
Respeito as regras :
Re: Por favor me ajudem Bug em multiplayer!
não tenho certeza mais alguns desses metodos pode te ajuda
OnSerializeNetworkView
OnRenderImage
OnRenderObject
da uma lida nesse link talvez tenha algo que possa ter da uma luz. to fazendo meu tcc e tbm precisei usar multiplayer, mas deu um erro e tive que desisti dessa parte. percebi que muitos tem problema com isso, mas poucos conhecem a solução e menos ainda conseguem passar a solução de forma clara. quando eu apresenta o tcc pretendo estudar mais a fundo o multiplayer do unity pra fica expert no assunto, já que parece ser algo q ta faltando no mercado kkkkk.
https://docs.unity3d.com/ScriptReference/Networking.NetworkIdentity.html
OnSerializeNetworkView
OnRenderImage
OnRenderObject
da uma lida nesse link talvez tenha algo que possa ter da uma luz. to fazendo meu tcc e tbm precisei usar multiplayer, mas deu um erro e tive que desisti dessa parte. percebi que muitos tem problema com isso, mas poucos conhecem a solução e menos ainda conseguem passar a solução de forma clara. quando eu apresenta o tcc pretendo estudar mais a fundo o multiplayer do unity pra fica expert no assunto, já que parece ser algo q ta faltando no mercado kkkkk.
https://docs.unity3d.com/ScriptReference/Networking.NetworkIdentity.html
lucassmart- Iniciante
- PONTOS : 3391
REPUTAÇÃO : 3
Respeito as regras :
Tópicos semelhantes
» FPS MULTIPLAYER : Não está mostrando os nick´s na tela !! POR FAVOR ME AJUDEM
» Me ajudem Por favor
» erro com ADMOB , AJUDEM POR FAVOR
» Me ajudem por favor
» [Multiplayer] Base para começar um multiplayer?
» Me ajudem Por favor
» erro com ADMOB , AJUDEM POR FAVOR
» Me ajudem por favor
» [Multiplayer] Base para começar um multiplayer?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos