Qual a diferença entre velocity e addforce?
4 participantes
Página 1 de 1
Qual a diferença entre velocity e addforce?
Gostaria de entender a diferença entre velocity e addforce. Por exemplo, se eu tenho um personagem simples que anda para frente, para atrás, esquerda e direita e que pula. Qual seria a maneira ideal criar esses movimentos? Vi alguns tutoriais e todos usaram programações diferentes e não entendi o motivo de escolher X ou Z.
Obrigado pela ajuda :D
Obrigado pela ajuda :D
Marmota- Iniciante
- PONTOS : 2756
REPUTAÇÃO : 4
Respeito as regras :
Re: Qual a diferença entre velocity e addforce?
Saudações!
Bom, respondendo a pergunta do título...
No geral, rigidbody.velocity é um movimento constante e que se mantém o mesmo (dependendo da condição) por isso ele é muito usado em scripts de movimentações.
Já o rigidbody.addForce é um impulso, como se você chutasse uma bola, por exemplo. Ela vai perdendo velocidade até parar por completo.
Para um personagem simples como você menciona, você pode usar rigidbody.velocity para fazer a movimentação, ou também o Character Controller que é um controlador que já vem com Unity
Bom, respondendo a pergunta do título...
No geral, rigidbody.velocity é um movimento constante e que se mantém o mesmo (dependendo da condição) por isso ele é muito usado em scripts de movimentações.
Já o rigidbody.addForce é um impulso, como se você chutasse uma bola, por exemplo. Ela vai perdendo velocidade até parar por completo.
Para um personagem simples como você menciona, você pode usar rigidbody.velocity para fazer a movimentação, ou também o Character Controller que é um controlador que já vem com Unity
JohnRambo- Moderador
- PONTOS : 5171
REPUTAÇÃO : 661
Idade : 24
Áreas de atuação : Unity;
Programação;
Música e Sonorização;
Graduado em Análise e Desenvolvimento de Sistemas;
Respeito as regras :
Re: Qual a diferença entre velocity e addforce?
Não existe um "Melhor" ou "Pior";
Geralmente uso mais o velocity;
como o nome já diz; Velocity é referente á velocidade em que o objeto está , ou vai atingir;
addForce é para adicionar uma "Força" para uma direcao, como se fosse um rigidbody.velocity que vai se decaindo;
Para isso, recomendo o Velocity;
Isso depende muito de cada pessoa, umas usam A e outras B
Geralmente uso mais o velocity;
como o nome já diz; Velocity é referente á velocidade em que o objeto está , ou vai atingir;
addForce é para adicionar uma "Força" para uma direcao, como se fosse um rigidbody.velocity que vai se decaindo;
Para isso, recomendo o Velocity;
Isso depende muito de cada pessoa, umas usam A e outras B
Phph09- Profissional
- PONTOS : 3788
REPUTAÇÃO : 240
Idade : 19
Respeito as regras :
Re: Qual a diferença entre velocity e addforce?
Obrigado pela ajuda pessoal. Sei que a questão do tópico já foi respondida, mas quero perguntar outra coisa. Como vocês aprenderam a programar? Pergunto isso no sentido de descobrir por conta própria o que é necessário para criar um comportamento na Unity. Não quero viver no copia e cola. Se alguém me pedisse agora para programar um avião(sem tutoriais e só com a documentação) eu simplesmente não conseguiria. Mas o que vocês fariam para descobrir isso, por exemplo?
Marmota- Iniciante
- PONTOS : 2756
REPUTAÇÃO : 4
Respeito as regras :
Re: Qual a diferença entre velocity e addforce?
Isso basicamente vai indo tudo por lógica. Programação é isso, tu pensar no que existe e aplicar usando uma lógica... Por exemplo, se eu fosse programar um avião seria assim:
- Pegaria um objeto, adicionaria um rigidbody
Para eu fazer ele subir, eu apenas aplicaria uma força para cima relativa a inclinação, para que simulasse o avião subindo(isso é uma lógica pensada baseada no component rigibody, eu aplico uma força de baixo para cima, então penso eu que o avião subiria)
Lembrando que nunca programei um avião, foi um exemplo...
E para outras funções, seguiria o mesmo seguimento. Basicamente programação é essa, tu pensa em como funcionaria, e aplica. Outro ex:
Um sistema de banco de dados de itens e inventário... Como eu faria o banco de dados? Eu faria uma classe com os dados e uma lista... Pronto, um banco de dados... E o inventário? Simples, eu faria o Ui com slots, detectaria quando apertasse em um slot, passaria se o comando foi botão esquerdo ou direito, se tem ou não um item e a ação que faria de acordo com o input... Se eu vou adicionar um item, checaria no banco qual seria e passe pro inv... Depois que você vai se adequando, vai vendo que é tudo na base do penso(a + a é b, então c seria a + b)-executo... Tudo que eu penso, vejo maneiras inusitadas de programa-la, com o tempo é assim, depois você se acostuma de acordo...
- Pegaria um objeto, adicionaria um rigidbody
Para eu fazer ele subir, eu apenas aplicaria uma força para cima relativa a inclinação, para que simulasse o avião subindo(isso é uma lógica pensada baseada no component rigibody, eu aplico uma força de baixo para cima, então penso eu que o avião subiria)
Lembrando que nunca programei um avião, foi um exemplo...
E para outras funções, seguiria o mesmo seguimento. Basicamente programação é essa, tu pensa em como funcionaria, e aplica. Outro ex:
Um sistema de banco de dados de itens e inventário... Como eu faria o banco de dados? Eu faria uma classe com os dados e uma lista... Pronto, um banco de dados... E o inventário? Simples, eu faria o Ui com slots, detectaria quando apertasse em um slot, passaria se o comando foi botão esquerdo ou direito, se tem ou não um item e a ação que faria de acordo com o input... Se eu vou adicionar um item, checaria no banco qual seria e passe pro inv... Depois que você vai se adequando, vai vendo que é tudo na base do penso(a + a é b, então c seria a + b)-executo... Tudo que eu penso, vejo maneiras inusitadas de programa-la, com o tempo é assim, depois você se acostuma de acordo...
Tópicos semelhantes
» Qual a diferença principal entre o VisuaStudio e o MonoDevelop?E qual é o melhor?
» Qual a diferença entre SmoothDamp e Lerp?
» Qual a diferença de Update e FixedUpdate
» Qual a diferença??
» Qual é a diferença?
» Qual a diferença entre SmoothDamp e Lerp?
» Qual a diferença de Update e FixedUpdate
» Qual a diferença??
» Qual é a diferença?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos