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:
Sou novo no FÓRUM
Lance o inventário de objetos
Coletar Objetos que estão na mira
Olá a todos :)
PROBLEMA EM COPIAR SCRIPTS
Controle de câmera em primeira pessoa com um joystick virtual
[RESOLVIDO] Instancia objeto em posições diferentes
Notepad++
Alguem Usa Pagamentos Automaticos do unity Ads Pode Me Ajudar com o Pagamento ?
[TUTORIAL] Sistema COMPLETO de câmeras
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
Unity Package Manager Error
[RESOLVIDO] Custom Inspector
Cinemachine
Total de Jogadores Online
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
[___COMO UTILIZAR O FÓRUM___] Principais botões e suas funções
[RESOLVIDO] Botao Home(Native do Android)
[RESOLVIDO] Resolução Resposiva
[RESOLVIDO] Tilemap Collider
[RESOLVIDO] Arremessar uma granada(2D)
Controle Objetos 3D
[PROJETO MOBILE] Defeat the Illuminatis
Qual a melhor forma de deixar o cabelo low poly animado ?
[AULA] Estrutura de decisão if..else
[____ENQUETE____] Eleições para presidente 2018
Criar jogo de terror
personagem do unity sem animaçao e caindo pra baixo
Ajuda com script C# (delay effect)
Script de health de inimigo sendo acessado mesmo sem acerta o inimigo
Preciso de ajuda em um script para o trabalho do meu estágio.
[Plugin dll] DigData basico save data Para Unity
[TUTORIAL] Como criar um JOGO DE TERROR
[TUTORIAL] Controle 3ª pessoa com animações mecânicas (root motion)
[Em Desenvolvimento] Battles of Worlds
Skybox da unity rosa
Dark blue sword RPG low poly
Atualizado (The Pyramid 1.1.1)
Problema com o Shader (Shader Bloqueado)
Como faço para o player agachar
Erro ao carregar cena salva
[RESOLVIDO] tem como mudar a cor desse fundo de distância azul?
[TUTORIAL] Otimização Simples por distância
Inventário de objetos 2D
video aula videoplayback easy ar /unity
como faz LookAt em 2d
Visual studio nao instala com compatibilidade com a unity :C
[JOGO MOBILE] The Sprinter Maze / Agradecimentos
Carregar video por url remote settings
Montando equipe! [Game survival]
É recomendado fazer cidades fictícias no sketchup?
[TUTORIAL] AI Enemy 2.0 + animações ( Jogos de terror )
Sprite crescer em linha reta como um laser 2D
[RESOLVIDO] Problema para Carregar cena
[RESOLVIDO] Como exportar o modelo sem o seguinte prefab:
[RESOLVIDO] correr character controller
Problema com Wheel Collider
Ajuda na criação de AudioSource
Ambient Occlusion para mobile.
Erro ao instalar o componente da Unity no Visual Studio
[____SUGESTÕES PARA O FÓRUM____]
Camera Estilo Gta (Livre que Volta Sozinha)
O básico do script
[____ADERIR A UMA CATEGORIA NO FÓRUM____]
Precisa-se DE Modelador/Animador Para Um Jogo de RPG Online..
unity - erro ao salvar dados
Duvidas com Json
Artistas 3D e Programadores Unity3D (Remunerado)
[TUTORIAL] Como fazer um laser com LineRenderer - UNITY 5
[TUTORIAL ] Script para Cutscenes
The Pyramid Demo Atualizado
Problemas com Colisores
Como fazer a vida ficar encima do player enquanto ele se move
Camera olhar para player em planeta esférico (estilo Mario Galaxy)
[RESOLVIDO] Ativar um Unico Objeto da Array.
tela preta do unity apos abrir no celular..
Procuro desenvolvedor Google Maps
Destruir Terreno
[TUTORIAL] Inteligência artificial, inimigo e AIPoints
Erro de arquivo CSPROJ na Unity
[RESOLVIDO] Diminuir um número
[RESOLVIDO] String.contains
Command 888
[TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS
Ajuda com código Raycast2D
[TUTORIAL] Bubble Sort - Algoritmo
touch do android em C# Unity
[TUTORIAL] Gerar números aleatórios SEM REPETIR (método com lista)
[TUTORIAL] Sistema de Lanterna com Pilhas
Dúvida, poupar processador.
Gerador de senha
(ARQUIVO) Leia aqui como obter sucesso com seu jogo independente?
Alguém pode corrigir as roupas do meu personagem? (Modelagem 3D - Pedido)
Dúvida em relação ao Enum
Para quem é fã de The King of Fighters!
Bora entrar no Discord.. Tirando Duvidas Online..
Bugando depois do Build.
[_ASSET_] MS Vehicle System (Vehicle Controller)
[RESOLVIDO] Mudança de GUI para UI?
Hoje à(s) 12:45 am
Hoje à(s) 12:22 am
Hoje à(s) 12:14 am
Hoje à(s) 12:00 am
Ontem à(s) 10:25 pm
Ontem à(s) 10:11 pm
Ontem à(s) 6:24 pm
Ontem à(s) 4:50 pm
Ontem à(s) 4:49 pm
Ontem à(s) 4:47 pm
Ontem à(s) 1:40 pm
Ontem à(s) 11:48 am
Ontem à(s) 12:07 am
Dom Set 23, 2018 9:49 pm
Dom Set 23, 2018 2:18 pm
Dom Set 23, 2018 2:14 pm
Dom Set 23, 2018 2:12 pm
Dom Set 23, 2018 1:30 pm
Dom Set 23, 2018 1:30 pm
Dom Set 23, 2018 12:36 pm
Dom Set 23, 2018 4:16 am
Sab Set 22, 2018 11:42 pm
Sab Set 22, 2018 9:29 pm
Sab Set 22, 2018 9:16 pm
Sab Set 22, 2018 5:14 pm
Sab Set 22, 2018 2:13 pm
Sab Set 22, 2018 8:53 am
Sab Set 22, 2018 1:21 am
Sex Set 21, 2018 5:42 pm
Sex Set 21, 2018 3:40 pm
Sex Set 21, 2018 2:26 pm
Sex Set 21, 2018 1:58 pm
Sex Set 21, 2018 11:41 am
Sex Set 21, 2018 6:58 am
Sex Set 21, 2018 12:11 am
Qui Set 20, 2018 8:23 pm
Qui Set 20, 2018 6:01 pm
Qui Set 20, 2018 12:53 pm
Qua Set 19, 2018 8:10 pm
Qua Set 19, 2018 7:16 pm
Qua Set 19, 2018 7:11 pm
Qua Set 19, 2018 10:51 am
Qua Set 19, 2018 10:23 am
Qua Set 19, 2018 10:21 am
Qua Set 19, 2018 2:14 am
Qua Set 19, 2018 1:17 am
Ter Set 18, 2018 9:01 pm
Ter Set 18, 2018 1:59 pm
Seg Set 17, 2018 7:55 pm
Seg Set 17, 2018 6:46 pm
Seg Set 17, 2018 12:58 pm
Seg Set 17, 2018 12:54 pm
Seg Set 17, 2018 8:18 am
Dom Set 16, 2018 11:15 pm
Dom Set 16, 2018 11:13 pm
Dom Set 16, 2018 4:50 pm
Dom Set 16, 2018 5:13 am
Sab Set 15, 2018 10:06 pm
Sab Set 15, 2018 10:00 pm
Sex Set 14, 2018 8:41 pm
Sex Set 14, 2018 8:37 pm
Sex Set 14, 2018 5:17 pm
Sex Set 14, 2018 2:04 pm
Sex Set 14, 2018 11:10 am
Qui Set 13, 2018 3:36 pm
Qui Set 13, 2018 10:14 am
Qui Set 13, 2018 9:48 am
Qui Set 13, 2018 9:25 am
Qua Set 12, 2018 11:40 pm
Qua Set 12, 2018 6:04 pm
Qua Set 12, 2018 12:57 pm
Qua Set 12, 2018 3:33 am
Qua Set 12, 2018 12:25 am
Ter Set 11, 2018 8:00 pm
Ter Set 11, 2018 4:20 pm
Ter Set 11, 2018 2:52 pm
Ter Set 11, 2018 2:20 pm
Ter Set 11, 2018 12:27 pm
Seg Set 10, 2018 11:10 pm
Seg Set 10, 2018 8:29 pm
Seg Set 10, 2018 7:17 pm
Seg Set 10, 2018 6:47 pm
Seg Set 10, 2018 12:08 pm
Seg Set 10, 2018 9:07 am
Dom Set 09, 2018 11:27 pm
Dom Set 09, 2018 6:58 pm
Dom Set 09, 2018 3:53 am
Sab Set 08, 2018 11:37 pm
Sab Set 08, 2018 11:29 pm
Sab Set 08, 2018 11:23 pm
Sab Set 08, 2018 10:23 pm
Sab Set 08, 2018 6:23 pm
Sab Set 08, 2018 5:07 pm
Sab Set 08, 2018 1:24 pm
Sab Set 08, 2018 1:05 pm
Sab Set 08, 2018 11:40 am
Sab Set 08, 2018 10:40 am
Sab Set 08, 2018 2:12 am
Sex Set 07, 2018 12:47 pm
ffabim
JuR
MarcosSchultz
JuR
francisco barroso
Ezequiel286
QueriaStarMorto
MarcosSchultz
MarcosSchultz
MarcosSchultz
Dom3000
Callyde Jr
speedluk
QueriaStarMorto
NKKF
FelipeSouza11
FelipeSouza11
nofrim
nofrim
Marmota
BananaSmith
MarcosSchultz
dstaroski
TioUV
MayLeone
JohnRambo
Lourenco
MarcosSchultz
PedroSilva
Jmspp
luansantos
FelipeSouza11
francisco barroso
dstaroski
Dom3000
MarcosSchultz
MRX
Callyde Jr
diegopds
MayLeone
Callyde Jr
Daniel Dória
Daniel Dória
Caius
marciosilva
MarcosSchultz
luiz12345
JohnRambo
natanael.olimpio
PedroSilva
Callyde Jr
Callyde Jr
Ezequiel286
Eduardoro39
SuperGamer
JuR
MarcosSchultz
MeverPlays
MeverPlays
MarcosSchultz
MarcosSchultz
dstaroski
dstaroski
JohnRambo
fecirineu
igorobm
igorobm
igorobm
Eduardoro39
NKKF
Callyde Jr
MarcosSchultz
MarcosSchultz
MarcosSchultz
nicolasfive
natanael.olimpio
natanael.olimpio
INKnight
FuncaoFF
dstaroski
QueriaStarMorto
NyanHeavyBR
Callyde Jr
FabioBRPA
MarcosSchultz
NKKF
niao
MarcosSchultz
MarcosSchultz
MarcosSchultz
Flávio
Joab Artes Gráficas
vitorhugo
Callyde Jr
Callyde Jr
fecirineu
FeLotus
MarcosSchultz
Callyde Jr

[RESOLVIDO] Detectar colisão usando if em C#?

Ir em baixo

Resolvido [RESOLVIDO] Detectar colisão usando if em C#?

Mensagem por Lorena Martins em Ter Jul 10, 2018 1:07 pm

Estou desenvolvendo uma cidade no Unity, e diferente de muitos tutoriais que encontrei, eu quero fazer com que os carros se movimente pelas ruas por conta própria, sem apertar qualquer botão. Já consegui faze-lo acelerar, mas para faze-lo virar de uma rua para outra (rotacionar em Y) de uma forma natural não está funcionando, segue o script:
Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class rotacao : MonoBehaviour {
 public Vector3 Rotacao1;

 void OnTriggerEnter(Collider other)
 {

 transform.rotation = Quaternion.Lerp (transform.rotation, Quaternion.Euler (Rotacao1), Time.deltaTime);}

}


Ao passar o Script para o carro, eu informei que Rotacao1 ficaria (0,-180,0), no momento que o carro colidir com outro objeto, o carro iria rotacionar de sua rotação -90 para -180 aos poucos (já que eu usei Quaternion), mas essa void de colisão é executada somente uma vez, então o carro não rotaciona para -180, ele vai de -90 para -91 e pouco, e não continua rotacionando até -180. Tentei substituir essa void de colisão pela void Update () para ver se era isso mesmo, e assim que eu executei o carro rotacionou perfeitamente até o -180, mas é claro, não no momento certo que eu quero, que é no momento que o carro se colidir. É possível eu usar esse void Update () e em seguida colocar um if perguntando quando o carro se colidir, este então irá rotacionar? Algo mais ou menos assim:
Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class rotacao : MonoBehaviour {
 public Vector3 Rotacao1;

 void Update()
 {
 if("objeto colidir com outro"){
 transform.rotation = Quaternion.Lerp (transform.rotation, Quaternion.Euler (Rotacao1), Time.deltaTime);}
 }
}

Não sei se isso é possível dentro de um if e não sei como fazer, por isso escrevi uma condição em texto para que possam me ajudar como fazer esse if. Também se souberem outro método que seja melhor que esse de colisão eu agradeço muito.


Última edição por dstaroski em Qua Jul 11, 2018 2:14 pm, editado 1 vez(es) (Razão : Resolvido)
avatar
Lorena Martins
Iniciante
Iniciante

Feminino PONTOS : 513
REPUTAÇÃO : 1
Idade : 17
Áreas de atuação : Unity e programação
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Detectar colisão usando if em C#?

Mensagem por MayLeone em Ter Jul 10, 2018 2:04 pm

Você pode criar um boolean e fazer com que quando colidir, ele fique ativado, dessa forma, dentro do Update você faz o carro rotacionar somente se o boolean for true, e quando ele chegar na rotação ideal, o boolean volta a ficar falso, assim:

Código:
private bool rotCheck = false;

void OnTriggerEnter(Collider other){
if (!rotCheck)
rotCheck = true;
}

void Update(){
if (rotCheck)
transform.rotation = Quaternion.Lerp (transform.rotation, Quaternion.Euler (Rotacao1), Time.deltaTime);

if (transform.rotation == -180)
rotCheck = false;
}
avatar
MayLeone
ProgramadorMaster

Feminino PONTOS : 413
REPUTAÇÃO : 139
Áreas de atuação : Unity, Rpg Maker, Scratch, C#, C++, HTML, CSS, JS, MySQL, Blender
Respeito as regras :

Ver perfil do usuário http://compilemosfacil.blogspot.com.br

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Detectar colisão usando if em C#?

Mensagem por Phph09 em Ter Jul 10, 2018 6:19 pm

já tentou usar OnTriggerStay()?

https://docs.unity3d.com/ScriptReference/MonoBehaviour.OnTriggerStay.html



Código:
if(transform.rotation == -180)
pode dar erro nessa parte, já que -180 é um Float e transform.rotation é Quaternion

Código:
if(transform.eulerAngles.y == -180)

No exemplo acima é pegado o eixo y (float) do transform.eulerAngles(Vector3) e comparado com outro float
avatar
Phph09
ProgramadorMaster

Masculino PONTOS : 1558
REPUTAÇÃO : 233
Idade : 13
Áreas de atuação :

Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Detectar colisão usando if em C#?

Mensagem por NKKF em Ter Jul 10, 2018 6:52 pm

É, eu sei oq vc quer: não criar vários scripts para os filhos, só para ver se colidiu ou não.

https://docs.unity3d.com/ScriptReference/Physics.OverlapSphere.html
^ Veja este link da referência da Unity. É algo muito legal e útil para fazer isso..
avatar
NKKF
ProgramadorMaster

Masculino PONTOS : 1951
REPUTAÇÃO : 402
Idade : 13
Áreas de atuação : Error 404 Not Found.
Respeito as regras :

Ver perfil do usuário http://www.projetounity.esy.es

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Detectar colisão usando if em C#?

Mensagem por Callyde Jr em Qua Jul 11, 2018 6:27 am

Tem uns projetos Exemplos na unity sobre IA de Veiculos pronto acho que e Aqui
Na unity tem esse mecanismo
avatar
Callyde Jr
Programador

Masculino PONTOS : 2611
REPUTAÇÃO : 353
Idade : 39
Áreas de atuação : Iniciante em modelagem Blender,ScketSHUP
Progamador
Ideialista

Meu Canal
https://www.youtube.com/ch
Respeito as regras :

Ver perfil do usuário http://unnygames.000webhostapp.com/

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Detectar colisão usando if em C#?

Mensagem por Tiago95 em Qua Jul 11, 2018 11:26 am

No OnTrigger vc faz ativar um boleano. Passando valor verdadeiro quando entrar no trigger. No Update vc deixa a execução da rotação com um IF(boleano for verdadeiro) então execute a rotação. Crie tb no Update um if(chegou no limite da rotação) então boleano recebe falso.

Tiago95
Avançado
Avançado

PONTOS : 378
REPUTAÇÃO : 31
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Detectar colisão usando if em C#?

Mensagem por Tiago95 em Qua Jul 11, 2018 11:28 am

No OnTrigger vc faz ativar um boleano. Passando valor verdadeiro quando entrar no trigger. No Update vc deixa a execução da rotação com um IF(boleano for verdadeiro) então execute a rotação.  Crie tb no Update um if(chegou no limite da rotação) então boleano recebe falso OU crie um OnTriggerExit e nele vc coloca para o boleano receber falso.

Tiago95
Avançado
Avançado

PONTOS : 378
REPUTAÇÃO : 31
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Detectar colisão usando if em C#?

Mensagem por Tiago95 em Qua Jul 11, 2018 12:43 pm

fiz o teste e OnTriggerStay funciona tranquilamente. Crie uma tag nova e coloque o cruzamento ou o local que vc quer que faça iniciar a rotação com essa tag nova.
Código:

   void OnTriggerStay(Collider other)
   {
      if (other.gameObject.tag.Equals ("cruzamento")) {
         transform.rotation = Quaternion.Lerp (transform.rotation, Quaternion.Euler (Rotacao1), Time.deltaTime);
      }
   }

Tiago95
Avançado
Avançado

PONTOS : 378
REPUTAÇÃO : 31
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Detectar colisão usando if em C#?

Mensagem por Tiago95 em Qua Jul 11, 2018 1:09 pm

@Tiago95 escreveu:fiz o teste e OnTriggerStay funciona tranquilamente. Crie uma tag nova e coloque o cruzamento ou o local que vc quer que faça iniciar a rotação com essa tag nova.
Código:

 void OnTriggerStay(Collider other)
 {
 if (other.gameObject.tag.Equals ("cruzamento")) {
 transform.rotation = Quaternion.Lerp (transform.rotation, Quaternion.Euler (Rotacao1), Time.deltaTime);
 }
 }
e nao esqueça de colocar um colisor com IS Trigger no local

Tiago95
Avançado
Avançado

PONTOS : 378
REPUTAÇÃO : 31
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Resolvido Re: [RESOLVIDO] Detectar colisão usando if em C#?

Mensagem por Lorena Martins em Qua Jul 11, 2018 1:44 pm

@Tiago95 escreveu:fiz o teste e OnTriggerStay funciona tranquilamente. Crie uma tag nova e coloque o cruzamento ou o local que vc quer que faça iniciar a rotação com essa tag nova.
Código:

 void OnTriggerStay(Collider other)
 {
 if (other.gameObject.tag.Equals ("cruzamento")) {
 transform.rotation = Quaternion.Lerp (transform.rotation, Quaternion.Euler (Rotacao1), Time.deltaTime);
 }
 }

Testei e funcionou, mas estava rotacionando o y para -160 e vi que é por causa do tempo, então multipliquei o Time.deltaTime por 2 e rotacionou até -180, valeu mesmo! 
Também testei o seguinte Script que funcionou perfeitamente, valeu a todos! Me ajudaram muito

@MayLeone escreveu:Você pode criar um boolean e fazer com que quando colidir, ele fique ativado, dessa forma, dentro do Update você faz o carro rotacionar somente se o boolean for true, e quando ele chegar na rotação ideal, o boolean volta a ficar falso, assim:

Código:
private bool rotCheck = false;

void OnTriggerEnter(Collider other){
if (!rotCheck)
rotCheck = true;
}

void Update(){
if (rotCheck)
transform.rotation = Quaternion.Lerp (transform.rotation, Quaternion.Euler (Rotacao1), Time.deltaTime);

if (transform.rotation == -180)
rotCheck = false;
}
avatar
Lorena Martins
Iniciante
Iniciante

Feminino PONTOS : 513
REPUTAÇÃO : 1
Idade : 17
Áreas de atuação : Unity e programação
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

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