SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida :D
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Tela de escolher um nome ativa quando sai e entra na cena de novo...
Fazer Objeto sair de 1 lado da camera e entrar do outro lado em seguida
[TUTORIAL] COMO CRIAR UM JOGO DE LUTA 2D UNITY 2021
Copiar um componente de um GameObject para outro já configurado?
Idioma automático por país??
[TUTORIAL] Sistema de diálogo/mensagens na Unity
Rotação ao colidir.
travar RigidBody2D através de codigo
Como resolver problema da mesh não renderizar após fazer a build
[RESOLVIDO] Trocar o áudio dependendo da tag do terreno
Funcionalidade Vuforia - UNITY 3D
RANDOMIZAR ATAQUES
Unity + Photon 2
Criar app pra mais de um idioma
Função de "aspirar" mobs, itens, etc.
[RESOLVIDO]GetKeyUp ativando sozinho
Posso controlar o wheelsCollider.rpm?
[TUTORIAL] Escolher a quantos FPS (fixos) o seu jogo deverá rodar.
Personagem dentro da agua
[RESOLVIDO] Sript de pegar itens no cenario
[TUTORIAL] Campo de visão dos inimigos (Enemy FOV) com Raycast ou OverlapSphere
Fazer o Player colar em uma base redonda
tem como altera o nome no forum
Como detectar se teclado ou controle foi conectado???
erro NO MONOBEHAVIOUR SCRIPTS IN THE FILE
Seleção de Personagem
[ASSET PACKAGE] Game Check Update
Adicionar mais um ataque ao inimigo.
Como faço para Camera ignorar um objeto?
Segundo Teaser do meu novo jogo galera, Sanatório Macabro. Em breve
[RESOLVIDO] VSCode não mostra erros nem identa o Código
Baixem meu jogo O Labirinto v1.25 completo e gratuito
Player girando e animação não executa
[RESOLVIDO] Problema com C# e Rigidbody
[RESOLVIDO] Recarregar arma.
Como acessar o Smoothness das texturas do terrain
Sistema de Tiro com Raycast
Velocidade com Button UI.
ERRO AO UPAR NA GOOGLE PLAY STORE
me ajuda por favor
Animaçoes não executa, nem a IDLE
Mini-Map
[TUTORIAL] Como o C# funciona
A Imagem do Objeto não muda
Animaçoes nao executa mais, nem a Idle
[RESOLVIDO] Como usar um Botao(GameObject) igual a um Botao(UI) no Mobile
Sistema de Tiro com Raycast
Algum modelador bom? Compro Modelagem
[RESOLVIDO] Rotação invertida, como resolvo isso??
carregamento de dados entre cenas
Blender bugado ????
AUDIO EM UM DETERMINADO MOMENTO
Dúvida sobre modificação do Event Trigger por scritpt
Carro dá spawn no ar
U2019 - Animações e efeitos após jogador levar hit? por outro jogador?
Não consigo Desabilitar um efeito especifico no pós processamento...
Como Desativar e mudar qualidade de sombra por código???
[TUTORIAL] Primeiro programa "complexo" em C# para iniciantes
Eu estou com dúvida de como instalar a unity com Unity Hub
Pulo "muito Alto"
rotação e aceleração.
Movimentação mobile.
Ativar botão
De Blender pra Unity - Cell Fracture não funciona!
sugestões de otimização?
Carregamento com porcentagem...
[RESOLVIDO] Blender Cell Fracture não aparece no Add-ons - Ajuda!
Movimentação - rotação
Erro Codigo de movimentação.
Cronometro 3,2,1 fica bugado ajuda aee...
[Problema] Ativo o Animator e o boneco não sai do lugar
Morre pausa e aparece botao pra reiniciar mas reinicia o jogo pausado
Script de movimentação e câmera não executa corretamente
FBX não gera sombra
[TUTORIAL] Mostrar Data e Hora atual do Computador em um texto
Sketchup pede para aumentar o projeto
Mudar cor da faixa de texto.
Mexer em variavel de objeto instanciado
Como utilizar o design pattern MVC na Unity?
[RESOLVIDO] RIGIDYBODY tá pulando sozinho pra longe. O que pode ser?
[RESOLVIDO] Compatibilidade e travamentos - unity android
Alguem sabe um meio pra fazer um habitat com criaturas?
[RESOLVIDO] Ajuda com script simples
[RESOLVIDO] Como trocar uma imagem ao clicar num botão em unity c#
[RESOLVIDO] Ponto A ao Ponto B em um determinado tempo
[RESOLVIDO] Duvida Unity (C#)
[RESOLVIDO] Bug no tittle screen
[RESOLVIDO] Erro CS0122
Projeto em desenvolvimento Yoda Runner.
[RESOLVIDO] Duvida Unity (C#)
Duvida com inimigo
Problemas com a colisão do unity
Carros não ficam no chão
Troca de Nivel
[TUTORIAL] Wheel Collider - como configurar corretamente.
Movimentação em SQM Unity 2D
Movimentaçao por SQM / UNITY 2D
[ FIND ME ] Game em Desenvolvimento
Como fazer um sistema de waypoints com espera.
Ontem à(s) 11:28 pm
Ontem à(s) 10:34 pm
Ontem à(s) 4:58 pm
Ontem à(s) 1:41 pm
Ontem à(s) 12:41 pm
Ontem à(s) 11:23 am
Sex Jul 30, 2021 2:19 pm
Sex Jul 30, 2021 12:07 pm
Sex Jul 30, 2021 8:50 am
Qui Jul 29, 2021 9:45 pm
Qui Jul 29, 2021 9:43 pm
Qui Jul 29, 2021 10:54 am
Qua Jul 28, 2021 6:12 pm
Qua Jul 28, 2021 5:15 pm
Qua Jul 28, 2021 4:39 pm
Qua Jul 28, 2021 2:28 pm
Qua Jul 28, 2021 9:36 am
Ter Jul 27, 2021 1:20 am
Dom Jul 25, 2021 11:12 pm
Dom Jul 25, 2021 10:51 pm
Dom Jul 25, 2021 6:16 pm
Dom Jul 25, 2021 4:03 pm
Dom Jul 25, 2021 12:39 pm
Sab Jul 24, 2021 11:02 pm
Sab Jul 24, 2021 9:35 pm
Sab Jul 24, 2021 12:11 pm
Sab Jul 24, 2021 3:55 am
Sex Jul 23, 2021 4:02 pm
Sex Jul 23, 2021 2:26 pm
Sex Jul 23, 2021 11:50 am
Qui Jul 22, 2021 8:08 pm
Qui Jul 22, 2021 3:38 pm
Qui Jul 22, 2021 3:00 pm
Qui Jul 22, 2021 10:47 am
Qua Jul 21, 2021 6:09 pm
Qua Jul 21, 2021 6:07 pm
Qua Jul 21, 2021 3:41 pm
Qua Jul 21, 2021 5:00 am
Qua Jul 21, 2021 12:30 am
Ter Jul 20, 2021 7:17 pm
Ter Jul 20, 2021 1:21 pm
Ter Jul 20, 2021 10:24 am
Ter Jul 20, 2021 8:27 am
Ter Jul 20, 2021 6:23 am
Ter Jul 20, 2021 6:09 am
Seg Jul 19, 2021 9:06 pm
Seg Jul 19, 2021 9:09 am
Seg Jul 19, 2021 12:22 am
Dom Jul 18, 2021 11:20 pm
Dom Jul 18, 2021 9:10 pm
Dom Jul 18, 2021 2:55 pm
Dom Jul 18, 2021 11:17 am
Sab Jul 17, 2021 11:10 pm
Sab Jul 17, 2021 11:00 pm
Sab Jul 17, 2021 10:49 pm
Sab Jul 17, 2021 10:38 pm
Sab Jul 17, 2021 7:53 pm
Sab Jul 17, 2021 11:20 am
Sab Jul 17, 2021 11:12 am
Sab Jul 17, 2021 6:52 am
Sab Jul 17, 2021 6:39 am
Sab Jul 17, 2021 6:32 am
Sab Jul 17, 2021 6:28 am
Sab Jul 17, 2021 1:16 am
Sex Jul 16, 2021 7:29 pm
Sex Jul 16, 2021 5:40 pm
Sex Jul 16, 2021 5:02 pm
Sex Jul 16, 2021 12:49 pm
Sex Jul 16, 2021 9:25 am
Sex Jul 16, 2021 12:20 am
Qui Jul 15, 2021 6:16 pm
Qui Jul 15, 2021 5:06 pm
Qua Jul 14, 2021 5:59 pm
Qua Jul 14, 2021 5:35 pm
Qua Jul 14, 2021 11:02 am
Seg Jul 12, 2021 9:27 pm
Seg Jul 12, 2021 12:13 pm
Dom Jul 11, 2021 11:08 pm
Dom Jul 11, 2021 10:30 pm
Dom Jul 11, 2021 7:13 pm
Sab Jul 10, 2021 7:05 pm
Sab Jul 10, 2021 10:05 am
Sex Jul 09, 2021 2:51 pm
Qui Jul 08, 2021 7:36 pm
Qui Jul 08, 2021 7:13 pm
Qui Jul 08, 2021 1:53 pm
Qui Jul 08, 2021 1:14 pm
Qui Jul 08, 2021 12:59 pm
Qua Jul 07, 2021 11:48 pm
Qua Jul 07, 2021 10:13 pm
Qua Jul 07, 2021 2:14 pm
Ter Jul 06, 2021 7:51 pm
Ter Jul 06, 2021 1:30 pm
Ter Jul 06, 2021 8:38 am
Seg Jul 05, 2021 1:17 am
Sab Jul 03, 2021 12:36 pm
Sab Jul 03, 2021 2:29 am
Sex Jul 02, 2021 11:12 pm
Sex Jul 02, 2021 1:56 pm
stratengine
felipekieling
RGT
Rangel Oblivion
diegopds
RGT2020
Pokedlg
MayLeone
Crash Psycho
Fagner
Fagner
ViniciusTKH
Regis2030
Fagner
dezorolon
dutrabr100
Fagner
danilojpbr212
Pokedlg
kaiquecachoeira1
VitinRuas
Lester202123
bruno92
Fagner
aikow
Pokedlg
FelipeSouza11
ViniciusTKH
Charlesoff
Patrick
WLCS22
jeancvo3
MarcosSchultz
amanda.ilg
LucasBR
jeancvo3
SauloeArthur
PauloFR
JoelMJunior
cleitinhoRasta
jhonih00010
PauloFR
PauloFR
PauloFR
PauloFR
crazylagg
Valério
jhonih00010
jhonih00010
PauloFR
Crash Psycho
edu63
PauloFR
PauloFR
PauloFR
PauloFR
Fagner
PauloFR
Franttyck
PauloFR
PauloFR
PauloFR
PauloFR
WLCS22
Morpheus
jhonih00010
WLCS22
Fagner
NKKF
jhonih00010
MatheusTD
MarcosSchultz
Magnatah
Magnatah
Fagner
Charlesoff
MayLeone
MayLeone
MayLeone
RodrigoPrivilegium
Fagner
ProBrStalker
ronigleydson
a32515
RobsonRAS
VittorTGame23
brunera
patriicia
ffabim
VittorTGame23
jeancvo3
Fagner
Fagner
Pokedlg
Fagner
Shiimo
Valmi
Crash Psycho
Fagner

FPSController Buga ao Encostar em Porta com Colisor

2 participantes

Ir para baixo

DÚVIDA FPSController Buga ao Encostar em Porta com Colisor

Mensagem por BlesseD Qua Jan 08, 2020 5:06 pm

Boa tarde gente, tudo certo? É o seguinte.. Estou tendo um pequeno problema em relação a Porta com BoxCollider ou MeshCollider com o meu FPSController, sempre que eu abro a porta, até ai tudo bem pois ela se abre para dentro (algumas portas).. Já quando eu tento fechar e meu Player fica parado na frente dessa porta, eu simplesmente bugo no ar, não consigo me movimentar a não ser mover o mouse.. Eu até ja vi aquele tutorial do MarcosSchultz sobre criação de jogos de terror, só que o script é diferente..



O Script da Porta que estou utilizando é do Unity 5, e esse video é um tanto quanto antigo.. Pois os códigos mudaram, a parte do vídeo começa no minuto 46:16 sobre "ChecarColisões". Que no caso seria quando a porta encostar no player, ela para de se movimentar. A parte que controla o movimento eu não encontro dentro do script (pode ser meio mongo da minha parte hsuahssa) este seria o script.

Script Da Porta:
Código:
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using System;

[Serializable]
public class SonsDaPorta{
   public AudioClip somAbrir;
   [Range(0.5f,3.0f)] public float velSomAbrir = 1;
   [Space(7)]
   public AudioClip somFechar;
   [Range(0.5f,3.0f)] public float velSomFechar = 1;
   [Space(15)]
   public AudioClip somTrancada;
   public AudioClip somDestrancar;
}

[RequireComponent(typeof(AudioSource))]
public class Porta : MonoBehaviour {
   public int IDPorta = 0;
   public enum EstadoInic {Aberta90, Fechada00, Trancada};
   public EstadoInic EstadoInicial = EstadoInic.Fechada00;
   public enum TipoDeRotacao {RodarEmX, RodarEmY, RodarEmZ};
   public TipoDeRotacao Rotacao = TipoDeRotacao.RodarEmY;
   public KeyCode TeclaAbrir = KeyCode.E;
   [Range(0.0f,150.0f)] public float grausDeGiro = 90.0f;
   [Range(0.1f,10.0f)] public float velocidadeDeGiro = 5, distanciaDaPorta = 3;
   public bool inverterGiro = false;
   public Text TextoTrancado;
   [Range(0.1f,4.0f)]public float tempoTexto = 1;
   public SonsDaPorta Sons;
   //
   [Header("Ponto de proximidade opcional")][Space(15)]
   public GameObject PontoDeProximidade;
   //
   Vector3 rotacaoInicial;
   float giroAtual, giroAlvo;
   GameObject Jogador;
   bool estaFechada, estaTrancada;
   AudioSource emissorSom;
   Chaves listaDeChaves;
   
   void Start () {
      rotacaoInicial = transform.eulerAngles;
      Jogador = GameObject.FindWithTag ("Player");
      if (Jogador != null) {
         listaDeChaves = Jogador.GetComponent<Chaves> ();
      }
      emissorSom = GetComponent<AudioSource> ();
      emissorSom.playOnAwake = false;
      emissorSom.loop = false;
      if (TextoTrancado != null) {
         TextoTrancado.enabled = false;
      }
      switch (EstadoInicial) {
      case EstadoInic.Fechada00:
         estaFechada = true;
         estaTrancada = false;
         giroAlvo = 0.0f;
         giroAtual = 0.0f;
         break;
      case EstadoInic.Aberta90:
         estaFechada = false;
         estaTrancada = false;
         if (inverterGiro == true) {
            giroAtual = grausDeGiro;
            giroAlvo = grausDeGiro;
         } else {
            giroAtual = -grausDeGiro;
            giroAlvo = -grausDeGiro;
         }
         break;
      case EstadoInic.Trancada:
         estaFechada = true;
         estaTrancada = true;
         giroAlvo = 0.0f;
         giroAtual = 0.0f;
         break;
      }
   }
   
   void Update () {
      if (Jogador != null && listaDeChaves != null) {
         ControlarPorta ();
         GirarObjeto ();
      }
   }
   
   void ChecarSeTemAChave(){
      bool temAChave = false;
      for (int x = 0; x < listaDeChaves.ChavesDoJogador.Count; x++) {
         if (listaDeChaves.ChavesDoJogador [x] == IDPorta) {
            temAChave = true;
         }
      }
      if (temAChave == true) {
         estaTrancada = false;
         if (Sons.somDestrancar != null) {
            emissorSom.pitch = 1;
            emissorSom.clip = Sons.somDestrancar;
            emissorSom.PlayOneShot (emissorSom.clip);
         }
      } else {
         if (Sons.somTrancada != null) {
            emissorSom.pitch = 1;
            emissorSom.clip = Sons.somTrancada;
            emissorSom.PlayOneShot (emissorSom.clip);
         }
         StartCoroutine ("MensagemNaTela");
      }
   }
   
   void ControlarPorta(){
      Vector3 localDeChecagem;
      if (PontoDeProximidade != null) {
         localDeChecagem = PontoDeProximidade.transform.position;
      } else {
         localDeChecagem = transform.position;
      }
      if (Vector3.Distance (Jogador.transform.position, localDeChecagem) < distanciaDaPorta) {
         if (Input.GetKeyDown (TeclaAbrir) && estaTrancada == false) {
            estaFechada = !estaFechada;
            //
            if (estaFechada == false) {
               if (Sons.somAbrir != null) {
                  emissorSom.pitch = Sons.velSomAbrir;
                  emissorSom.clip = Sons.somAbrir;
                  emissorSom.PlayOneShot (emissorSom.clip);
               }
               if (inverterGiro == true) {
                  giroAlvo = grausDeGiro;
               } else {
                  giroAlvo = -grausDeGiro;
               }
            } else {
               if (Sons.somFechar != null) {
                  emissorSom.pitch = Sons.velSomFechar;
                  emissorSom.clip = Sons.somFechar;
                  emissorSom.PlayOneShot (emissorSom.clip);
               }
               if (inverterGiro == true) {
                  giroAlvo = 0.0f;
               } else {
                  giroAlvo = 0.0f;
               }
            }
         }
         if (Input.GetKeyDown (TeclaAbrir) && estaTrancada == true) {
            ChecarSeTemAChave ();
         }
      }
      giroAtual = Mathf.Lerp (giroAtual, giroAlvo, Time.deltaTime * velocidadeDeGiro);
   }
   
   void GirarObjeto(){
      switch (Rotacao) {
      case TipoDeRotacao.RodarEmX:
         transform.eulerAngles = new Vector3 (rotacaoInicial.x + giroAtual, rotacaoInicial.y, rotacaoInicial.z);
         break;
      case TipoDeRotacao.RodarEmY:
         transform.eulerAngles = new Vector3 (rotacaoInicial.x, rotacaoInicial.y + giroAtual, rotacaoInicial.z);
         break;
      case TipoDeRotacao.RodarEmZ:
         transform.eulerAngles = new Vector3 (rotacaoInicial.x, rotacaoInicial.y, rotacaoInicial.z + giroAtual);
         break;
      }
   }
   
   IEnumerator MensagemNaTela(){
      if (TextoTrancado != null) {
         TextoTrancado.enabled = true;
         yield return new WaitForSeconds (tempoTexto);
         TextoTrancado.enabled = false;
      }
   }
}
Eu não sei se há necessidade de alterar algo no Script mas acredito que sim.. Fico agradecido pela atenção Smile
BlesseD
BlesseD
MembroAvançado

Masculino PONTOS : 807
REPUTAÇÃO : 16
Idade : 21
Áreas de atuação : 》Unity3D
》Criador do Jogo : Fear In The Modern House
》C# [Intermediário]
》Jogos de Terror
Respeito as regras : FPSController Buga ao Encostar em Porta com Colisor WvDYdlf

Ir para o topo Ir para baixo

DÚVIDA Re: FPSController Buga ao Encostar em Porta com Colisor

Mensagem por hendrick22 Qui Jan 09, 2020 12:41 am

esse bug não me parece ser causado por esse script (talvez sim) me parece ser a fisica da unity ,vc colocou algum comando no player pra ele não se mover enquanto não estiver no chão ? ,pode ser tb que sua porta pode tá empurrando o jogador ,a e outra coisa tome cuidado com multiplos colisores ,tipo colisores em filhos pq se o objeto root o topo da hierarquia tiver rigbody ,os colisores do filho vão influenciar tb ,mas vc já deve saber disso boa sorte.

hendrick22
MembroAvançado

PONTOS : 1446
REPUTAÇÃO : 54
Respeito as regras : FPSController Buga ao Encostar em Porta com Colisor WvDYdlf

Ir para o topo Ir para baixo

DÚVIDA Re: FPSController Buga ao Encostar em Porta com Colisor

Mensagem por BlesseD Qui Jan 09, 2020 2:00 pm

@hendrick22 escreveu:esse bug não me parece ser causado por esse script (talvez sim) me parece ser a fisica da unity ,vc colocou algum comando no player pra ele não se mover enquanto não estiver no chão ? ,pode ser tb que sua porta pode tá empurrando o jogador ,a e outra coisa tome cuidado com multiplos colisores ,tipo colisores em filhos pq se o objeto root o topo da hierarquia tiver rigbody ,os colisores do filho vão influenciar tb ,mas vc já deve saber disso boa sorte.
Boa tarde mano!.. Rapaz isso ai me ajudou em, eu alterei o "Max Air Acelleration" e a "Gravity" para 1 pois estavam em 0, mas não sei se foi apenas isso, eu removi os BoxColliders dos filtros, criei um vazio e coloquei dentro da porta e pelomenos ajudou certa parte kkkkkk.. Mesmo assim a porta continua atravessando o player caso ele fique parado na frente da porta enquanto ela fecha, mas mano.. me ajudou bastante, muito obrigado :D
BlesseD
BlesseD
MembroAvançado

Masculino PONTOS : 807
REPUTAÇÃO : 16
Idade : 21
Áreas de atuação : 》Unity3D
》Criador do Jogo : Fear In The Modern House
》C# [Intermediário]
》Jogos de Terror
Respeito as regras : FPSController Buga ao Encostar em Porta com Colisor WvDYdlf

Ir para o topo Ir para baixo

Ir para o topo


 
Permissão neste fórum:
Você não pode responder aos tópicos