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:
(UNITY) Erro ao compilar a Build Android
Não consigo fazer o box collider descer junto com o personagem.
[TUTORIAL] Barra de vida usando a UI da Unity(Slider)
BUG UNITY 3D ROSA A SCENE E GAME
[Projeto] Line Battle
Sistema de Grau Realista - Jogo de Moto
Procuro Equipe Para Criação de Jogo [PAGO]
iniciar jogo com uma cena desativada e ativá-la ao colidir com bloco desativando as outras
Salvar e carregar dados json player pref
[TUTORIAL] Desbloqueio e Escolha de Personagens.
[RESOLVIDO] Problema com o navmesh agent
[RESOLVIDO] Registro cadrastando uma vez?
Programação Unity android 2D
(Dúvida) Encontrar o objeto mais próximo partindo do ponto inicial ao final.
Como Faz pra barra de vida aparecer de uma cena pra outra?
[TUTORIAL] Como spawnar inimigos [Tutorial simples]
Vaga de modelador 3D, com remuneração...
Problemas com Colisores
[____ENQUETE____] Eleições para presidente 2018 (2º turno)
Como criar Atlas de textura com modelos exportados do Sketchup?
Unity - Sistema de Pagamento
[RESOLVIDO] iniciar áudio ao passar por uma área da cena
[RESOLVIDO] como envia asset para asset store
[TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS
codigo não deleta prefab e não respeita o if
[TUTORIAL] Filtros de áudio para AudioListner (Low pass filter, High pass filter, etc)
[____CICLO DE TRABALHO DA UNITY____]
Meu jogo não está abrindo em outro PC
[TUTORIAL] DANO POR QUEDA e BARRA DE VIDA CONTÍNUA no mesmo script
[TUTORIAL] Sistema de vida,morte,dano
Discord para desenvolvimento de jogos
FAB in WWII (Novo jogo na Play Storee é Free :D)
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
[TUTORIAL] Sistema de PORTAS e CHAVES
Criar uma Array ou List com as resoluções suportadas
Alguem traz esse tutorial pro forum?
Realistic fps prefab tenho esses erros ao tentar colocar um script de entrar sair do carro
[RESOLVIDO] Alguem pode me ajudar? tenho esse erro aqui em um script
[RESOLVIDO] Personagem 2d batendo na borda e voando.
[RESOLVIDO] Não consigo usar o Sphere collider.
[RESOLVIDO] Como usa o UI.Text do unity?
Como criar botão de nova tentativa
[RESOLVIDO] Duvida em Jogo de tiro 2D
[TUTORIAL] Barra de VIDA / HP contínua
[RESOLVIDO] duvida com PlayerPrefs
Iniciar animação em determinado frame
Sistema De Troca De Armas 2D
[TUTORIAL] Script de arma completo! [FREE]
[TUTORIAL] Ordenar valores de uma array[] em ordem CRESCENTE OU DECRESCENTE
Meu jogo de runner em primeira pessoa !
[RESOLVIDO] Timer pra mudar de cena na unity 2018
Atualizar Build
[TUTORIAL] 42 ÓTIMAS DICAS DE OTIMIZAÇÃO PARA JOGOS MOBILE (Android)
Como usar Vector3.Angles para detectar que algo está na frente de outro objeto?
[TUTORIAL] Como fazer porta malas do carro abrir atravez de um botão?
Script nao funciona
Como desativar scripts em objetos distantes
[RESOLVIDO] Bug Da Unity ?
[AULA] HTML - Aula 1: Introdução
Raycast
[TUTORIAL]"Morte" do personagem (Unity 5.3 ou Superior)
Problema com a unity ads
como eu faço para a camera orbitar um objeto atraves de um joystick?????
[PROJETO MOBILE] Defeat the Illuminatis
XML, suporte e utilização.
Arrastar objetos em plano 2D (ArrastarT).
[TUTORIAL] Sistema de fome, sede, barra de vida, barra de estamina, itens e dano por queda
Participe da Game Jam - Jaaj do canal Amdré Young!
Criar sistema de arrastar e soltar objetos em determinado lugar
AWM Champions I
[RESOLVIDO] Como verificar se o objeto é diferente de null
COMO FAÇO PARA FAZER UM SISTEMA DE SKIN PARA ANDROID ESTILO HEAVY BUS, PROTON BUS, ETC
[TUTORIAL] Snake com Unity + C#
Sobre Som (Ouvir som do sistema , duas caixas de som ... )
Configurar NPCs
[RESOLVIDO] Script Carta
[TUTORIAL] Texto Legenda Character Por Character Para Uso Básico
Ajuda com script movimento por Grid Tile no Navmesh
[Devlog] Lost in the world 05/10
[___COMO UTILIZAR O FÓRUM___] Principais botões e suas funções
inimigo nao persegue player
[RESOLVIDO] Build setting não entra
[RESOLVIDO] Player Sair Da animaçao
[RESOLVIDO] Erro colider
Dúvida sobre Resolução
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
[____ENQUETE____] Eleições para presidente 2018
[Plugin dll] DigData basico save data Para Unity
Conquistas Steam? Adicionar
Montando equipe! [Game survival]
[TUTORIAL] Banco de dados || MySQL
[RESOLVIDO] Rotação com Mouse Vídeo 360
Problema com a velocidade do objeto
ANIMAÇÃO INIMIGO AI
Alguem sabe explicar o que é o C# Job System e para o que ele serve
[RESOLVIDO] Comando ScreenToWorldPoint.
[TUTORIAL] Sistema de tiro com RAYCAST (várias armas, mira laser, munição, dano, etc, etc)
[TUTORIAL] Como salvar dados em arquivos de texto .txt, .ini ou . qualquer coisa.
Firebase e Unity 5
Hoje à(s) 3:16 pm
Hoje à(s) 3:13 pm
Hoje à(s) 3:13 pm
Hoje à(s) 7:37 am
Hoje à(s) 7:28 am
Hoje à(s) 5:30 am
Ontem à(s) 9:56 pm
Ontem à(s) 9:00 pm
Ontem à(s) 4:05 pm
Ontem à(s) 3:34 pm
Ontem à(s) 12:41 pm
Ontem à(s) 11:48 am
Ontem à(s) 12:57 am
Seg Out 15, 2018 11:36 pm
Seg Out 15, 2018 8:31 pm
Seg Out 15, 2018 6:51 pm
Seg Out 15, 2018 5:34 pm
Seg Out 15, 2018 5:03 pm
Seg Out 15, 2018 2:46 pm
Seg Out 15, 2018 1:19 pm
Seg Out 15, 2018 12:56 pm
Seg Out 15, 2018 11:34 am
Seg Out 15, 2018 6:17 am
Seg Out 15, 2018 12:30 am
Seg Out 15, 2018 12:18 am
Dom Out 14, 2018 12:52 am
Sab Out 13, 2018 9:08 pm
Sab Out 13, 2018 5:24 pm
Sab Out 13, 2018 4:00 pm
Sex Out 12, 2018 10:42 pm
Sex Out 12, 2018 6:00 pm
Sex Out 12, 2018 2:56 pm
Sex Out 12, 2018 2:55 pm
Sex Out 12, 2018 2:42 pm
Qui Out 11, 2018 8:59 pm
Qui Out 11, 2018 8:32 pm
Qui Out 11, 2018 3:09 pm
Qui Out 11, 2018 2:32 pm
Qui Out 11, 2018 12:15 pm
Qui Out 11, 2018 11:35 am
Qui Out 11, 2018 10:50 am
Qui Out 11, 2018 8:24 am
Qua Out 10, 2018 11:31 pm
Qua Out 10, 2018 11:11 pm
Qua Out 10, 2018 10:43 pm
Qua Out 10, 2018 8:22 pm
Qua Out 10, 2018 4:53 pm
Qua Out 10, 2018 4:44 pm
Qua Out 10, 2018 3:48 pm
Qua Out 10, 2018 12:40 pm
Ter Out 09, 2018 9:51 pm
Ter Out 09, 2018 8:16 pm
Ter Out 09, 2018 8:16 pm
Ter Out 09, 2018 8:10 pm
Ter Out 09, 2018 8:09 pm
Ter Out 09, 2018 7:38 pm
Ter Out 09, 2018 2:55 pm
Seg Out 08, 2018 6:13 pm
Seg Out 08, 2018 4:40 pm
Seg Out 08, 2018 2:39 pm
Seg Out 08, 2018 12:52 pm
Seg Out 08, 2018 12:16 pm
Seg Out 08, 2018 10:33 am
Seg Out 08, 2018 9:22 am
Dom Out 07, 2018 1:59 pm
Dom Out 07, 2018 11:53 am
Dom Out 07, 2018 10:53 am
Sab Out 06, 2018 11:14 pm
Sab Out 06, 2018 10:55 pm
Sab Out 06, 2018 8:50 pm
Sab Out 06, 2018 8:41 pm
Sab Out 06, 2018 2:21 pm
Sab Out 06, 2018 1:33 pm
Sab Out 06, 2018 2:04 am
Sex Out 05, 2018 8:22 pm
Sex Out 05, 2018 7:39 pm
Sex Out 05, 2018 6:35 pm
Sex Out 05, 2018 11:27 am
Sex Out 05, 2018 11:22 am
Sex Out 05, 2018 9:35 am
Sex Out 05, 2018 12:53 am
Qui Out 04, 2018 11:40 pm
Qui Out 04, 2018 10:43 pm
Qui Out 04, 2018 6:23 pm
Qui Out 04, 2018 3:36 pm
Qui Out 04, 2018 3:12 pm
Qui Out 04, 2018 3:11 pm
Qui Out 04, 2018 3:11 pm
Qui Out 04, 2018 3:07 pm
Qui Out 04, 2018 12:45 am
Qua Out 03, 2018 10:50 pm
Qua Out 03, 2018 7:15 pm
Qua Out 03, 2018 4:18 pm
Qua Out 03, 2018 3:16 pm
Qua Out 03, 2018 9:07 am
Qua Out 03, 2018 8:47 am
Ter Out 02, 2018 11:12 pm
Ter Out 02, 2018 8:22 pm
Ter Out 02, 2018 12:27 pm
dstaroski
JonasBianca
dstaroski
dstaroski
dstaroski
Duarte
MRX
Daniel Dória
JuR
ismarspn
Jmspp
Callyde Jr
dhy paulo
rafaelllsd
francisco barroso
francisco barroso
igorobm
conceptfac
Dom3000
Isabela
Callyde Jr
Daniel Dória
diegopds
MarcosSchultz
igorobm
MarcosSchultz
MarcosSchultz
Flávio
francisco barroso
Callyde Jr
SuperGamer
SoullSec
SoullSec
SoullSec
Flávio
francisco barroso
Samuelostgamer
Samuelostgamer
gurgelg752
luansantos
guimaraf
theus.mors
TecnoGames
francisco barroso
Eduardoro39
QueriaStarMorto
QueriaStarMorto
mecjo
NyanHeavyBR
CaioItz
RodriGO3477
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
FelipeSouza11
FelipeSouza11
QueriaStarMorto
Tegh
Jmspp
Callyde Jr
Jmspp
Gabryellx007
dstaroski
Tegh
Tegh
SuperGamer
Luizdanhp
MarcosSchultz
TioUV
QueriaStarMorto
KAYKETHEO27
NKKF
MarcosSchultz
Callyde Jr
francisco barroso
FelipeSouza11
Nowsfeky
Mateus2583
FelipeSouza11
Callyde Jr
Daniel Dória
marcosdanielnerydasilva
francisco barroso
NKKF
dstaroski
dstaroski
dstaroski
dstaroski
PedroSilva
igorobm
natanael.olimpio
Socates
francisco barroso
Madson
gurgelg752
francisco barroso
efsbio
brunocvz

[TUTORIAL] Wheel Collider - como configurar corretamente.

Ir em baixo

TUTORIAL [TUTORIAL] Wheel Collider - como configurar corretamente.

Mensagem por Isabela em Dom Jun 03, 2018 9:59 am

A wheel collider possui algumas configurações de valores que num primeiro momento parecem não fazer sentido, mas compreender o que eles representam facilitará muito a tarefa de criar um veículo na Unity.
Um dos elementos mais importantes para a configuração correta da Wheel Collider é a curva de fricção, esta, define como o pneu irá se comportar com a variação do torque aplicado a ele.
Como estudo de caso, utilizei o MS Vehicle System Free, da forma como é disponibilizado, em sua configuração padrão, que é mostrada logo abaixo:




Entendendo a curva de fricção.

O Forward Friction define o quanto de aderência o pneu terá no sentido da banda de rodagem.
os valores de Extremum e Asymptote definem a forma da Curva de aderência. Essa forma é uma representação do quanto o pneu irá ter aderência conforme o torque é aplicado.
Stiffness funciona como um multiplicador dos valores de Extremum e Asymptote, você pode variá-lo para simular o comportamento do pneu sob diferentes superfícies, por exemplo: com 3 de stiffness, seu pneu pode se comportar como se estivesse sobre uma superfície asfaltada, caso seu carro saia da pista e passe sobre a grama, baixar o stiffness para 0.5 simulará um comportamento mais escorregadio, o que é esperado para uma superfície coberta por grama.
Abaixo podemos visualizar a curva formada pelos valores padrões de Forward Friction do MSVS, (1,1,1,1).



O Sideways Friction define a resistência que o pneu terá ao esforço lateral, ou seja, a aderência que o pneu terá em uma curva.
Abaixo vemos os valores padrões de Sideways Friction do MSVS, (1.6, 1, 0.5, 0.75)



Utilizando estes valores, o carro apresenta baixa aderência na arrancada, curvas, e frenagem, o que força o aumento da massa do Wheel Collider para "corrigir" o pouco atrito com o solo.
No exemplo cada Wheel Collider pesa 200 Kg, o que claramente não reflete a realidade.
A seguir temos uma curva semelhante ao apresentado na Documentação do Wheel Collider da Unity



Ressalto que os valores utilizados são apenas uma referência para a forma da Curva, o Stiffness é quem irá definir os valores reais dela.
No exemplo acima temos:
Extremum Slip: 2
Extremum value: 5
Asymptote Slip: 5
Asymptote value: 2
Stiffness: 1
Caso utilizasse o dobro do Stiffness, teríamos o dobro dos valores de Extremum e Asymptote.
Com essa forma de curva de aderência, o carro melhora nas arrancadas, responde melhor nas curvas e na frenagem.

Analisando a relação do torque com a curva de fricção, vemos que a aderência aumenta conforme o torque aplicado, até seu ápice(extremum), onde o valor começa a diminuir. Após o ponto Asymptote, a aderência tem um valor constante.
O cenário ideal utiliza uma curva de torque personalizada, uma curva de aderência similar ao exemplo acima, e o valor de Stiffness altera a abrangência da curva de aderência sobre a curva de torque. Isso só é alcançado com experimentação, pois cada veículo é único. Abaixo vemos um exemplo de cenário ideal para determinado tipo de carro:



Recomendações:
Se um carro tem um peso bruto de 1300 Kg, convém subtrair o valor aproximado de 4 rodas desse total ficando assim:
(exagerando) 20kg por roda = 80 Kg
peso da carroceria do veículo = 1220kg
*Respeitar o peso real dos objetos evita que haja o desbalanceamento nos cálculos de física, rodas muito pesadas tendem a fazer o carro perder a dianteira nas curvas (Understeer)

Defina os valores da curva seguindo a mesma forma apresentada no exemplo, ou com leves alterações pra simular tipos de pneus(macio, médio, duro, chuva, etc). e por fim altere o stiffness em tempo real conforme o tipo de terreno(asfalto, lama, concreto, paralelepípedos, etc).

Utilize dimensões reais sempre que possível, preste atenção no "tamanho" da roda, o valor solicitado pelo wheel collider é o raio! Uma roda Aro 20' possui 50 cm de diâmetro, ou 25 cm de raio. Somando o valor da banda de rodagem, temos algo em torno de 65 cm de diâmetro e 32,5 cm de raio. Errar esses valores alterará a velocidade final do veículo, assim como o torque do mesmo.
Aplicar 35,7 Kgf de torque numa roda de 10 cm de diâmetro, fará ela deslizar infinitamente, já uma roda com 2 metros de diâmetro, o carro se moverá bem devagar.

Evite alterar a escala do Whell Collider da maneira convencional, utilize o valor do raio para definir o seu tamanho correto, caso ela fique desproporcional, convém alterar a escala dos seus outros objetos no seu programa de modelagem preferido. preferivelmente adotando a escala similar à realidade. o wheel collider será o elemento chave da sua simulação, fazer gambiarras aqui não é uma opção se você quer obter realismo.

A seguir, uma comparação das configurações originais da Wheel Collider do MSVS (à esquerda), e a versão com uma curva similar à apresentada logo acima, com a correção do peso do veículo e rodas. (à direita) Note que mesmo reduzindo a massa das rodas, ela se prende melhor ao chão e consegue tracionar tanto quanto as rodas pesadas. Evitando a famosa "cantada de pneu" na arrancada.



Esse controle maior da aderência fica mais evidente na resposta que o carro passa a ter nas curvas, podendo ser personalizado de acordo com a necessidade, por exemplo:
Por se tratar de uma caminhonete cuja parte traseira tende a ser mais leve que a dianteira, o comportamento esperado é que ela perca a traseira nas curvas (oversteer), o que pode ser simulado abaixando o stiffness do sideways friction nas rodas traseiras.


Última edição por isah em Seg Jun 04, 2018 5:26 am, editado 3 vez(es) (Razão : Alterado ícone e inserido Tutorial)
avatar
Isabela
ProgramadorMaster

Feminino PONTOS : 426
REPUTAÇÃO : 142
Idade : 18
Áreas de atuação : ...
Respeito as regras :

Ver perfil do usuário https://www.youtube.com/watch?v=mer6X7nOY_o

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Wheel Collider - como configurar corretamente.

Mensagem por dstaroski em Dom Jun 03, 2018 10:39 am

isah escreveu:A wheel collider possui algumas configurações de valores que num primeiro momento parecem não fazer sentido, mas compreender o que eles representam facilitarão muito a tarefa de criar um veículo na Unity.
Um dos elementos mais importantes pra configuração correta da Wheel Collider é a curva de fricção, esta, define como o pneu irá se comportar com a variação do torque aplicado a ele.
Como estudo de caso, utilizei o MS Vehicle System Free, da forma como é disponibilizado, em sua configuração padrão, que é mostrada logo abaixo:



Entendendo a curva de fricção.
Forward Friction define o quanto de aderência o pneu terá no sentido da banda de rodagem.
os valores de Extremum e Asymptote definem a forma da Curva de aderência. restando ao  Stiffness multiplicar esses valores conforme a necessidade.
Abaixo podemos visualizar a curva formada pelos valores padrões de Forward Friction do MSVS, (1,1,1,1).



Sideways Friction define a resistência que o pneu terá ao esforço lateral, ou a aderência que o pneu terá em uma curva por exemplo.
Abaixo vemos os valores padrões de Sideways Friction do MSVS, (1.6, 1, 0.5, 0.75)



Utilizando estes valores, o carro apresenta baixa aderência na arrancada, curvas, e frenagem, o que força o aumento da massa do Wheel Collider para "corrigir" o pouco atrito com o solo.
No exemplo cada Wheel Collider pesa 200 Kg, o que claramente não reflete a realidade.
A seguir temos uma curva semelhante ao apresentado na Documentação do Wheel Collider da Unity



Ressalto que os valores utilizados são apenas uma referência para a forma da Curva, o Stiffness é quem irá definir os valores reais dela.
No exemplo acima temos:
Extremum Slip: 2
Extremum value: 5
Asymptote Slip: 5
Asymptote value: 2
Stiffness: 1
Caso utilizasse o dobro do Stiffness, teríamos o dobro dos valores de Extremum e Asymptote.
Com essa forma de curva, o carro melhora nas arrancadas, responde melhor às curvas, e a frenagem.

Analisando a relação do torque com a curva de fricção, vemos que a aderência aumenta conforme o torque aplicado, até seu ápice(extremum), onde o valor começa a diminuir. Após o ponto Asymptote, a aderência tem um valor constante.
O cenário ideal seria uma curva de torque personalizada, a curva de aderência similar ao exemplo acima, e o valor de Stiffness alterando a abrangência da curva de aderência sobre a curva de torque. Isso só é alcançado com experimentação, pois cada veículo é único. Abaixo vemos um exemplo de cenário ideal para determinado tipo de carro:



Recomendações:
Se um carro tem um peso bruto de 1300 Kg, subtraia o valor aproximado de 4 rodas desse total ficando assim:
(exagerando) 20kg por roda = 80 Kg
peso da carroceria do veículo = 1220kg

Utilize dimensões reais!  Preste atenção ao "tamanho" da roda, o valor solicitado pela wheel collider é o raio! Uma roda Aro 20' possui 50 cm de diâmetro, ou 25cm de raio. Somando o valor da banda de rodagem, temos algo em torno de 65 cm de diâmetro e 32,5cm de raio. Errar esses valores alterará a velocidade final do veículo, assim como o torque do mesmo.
Aplicar 35,7Kg de torque numa roda de 10cm de diâmetro, fará ela deslizar infinitamente, já uma roda com 2m de diâmetro, o carro se moverá bem devagar, então, utilize valores reais sempre que possivel.
Defina os valores da curva seguindo a mesma forma apresentada no exemplo, ou com leves alterações pra simular tipos de pneus(macio, medio, duro, chuva, etc). e por fim altere o stiffness em tempo real conforme o tipo de terreno(asfalto, lama, concreto, paralelepípedos, etc).

A seguir, uma comparação das configurações originais da Wheel Collider do MSVS, e a versão com uma curva similar à apresentada logo acima, com a correção do peso do veículo e rodas. Note que mesmo reduzindo a massa das rodas, ela se prende melhor ao chão e consegue tracionar tanto quanto as rodas pesadas.



Esse controle maior da aderência fica mais evidente na resposta que o carro passa a ter nas curvas, podendo ser personalizado de acordo com a necessidade, por exemplo:
Por se tratar de uma pickup cuja parte traseira tende a ser mais leve que a dianteira, o comportamento esperado é que ela perca a traseira nas curvas (oversteer), o que pode ser simulado abaixando o stiffness do sideways friction nas rodas traseiras.
Parabéns ai! vai ajudar bastante o pessoal!

Abraço!
avatar
dstaroski
Instrutor

Masculino PONTOS : 3696
REPUTAÇÃO : 955
Idade : 29
Áreas de atuação : Téc. Hardware e Redes, Programação C#.

Respeito as regras :

Ver perfil do usuário https://gamejolt.com/games/defeattheilluminatis/347786

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Wheel Collider - como configurar corretamente.

Mensagem por NKKF em Dom Jun 03, 2018 11:36 am

Legal, apesar de que.. Não entendi nada, mas alguém deve ter entendido haha.
avatar
NKKF
ProgramadorMaster

Masculino PONTOS : 1988
REPUTAÇÃO : 405
Idade : 14
Á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

TUTORIAL Re: [TUTORIAL] Wheel Collider - como configurar corretamente.

Mensagem por MarcosSchultz em Dom Jun 03, 2018 2:02 pm

wowwww, que tutorial topezorrr, esse vai ajudar MUITA GENTE (tipo eu, heueheuehe)
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 61037
REPUTAÇÃO : 2069
Idade : 22
Áreas de atuação : Administrador do fórum
Respeito as regras :

Ver perfil do usuário http://www.schultzgames.com

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