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 Very Happy
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Site Profissional Completo Gratis para Jogos
Script + Direção
[Duvida] Como chamar uma void ou função, através de um botão.
Vender ideia de jogo para desenvolvedora
[RESOLVIDO] Como subir escadas
For lista
[RESOLVIDO] Sistema de recarregamento Precário.
[Duvida] Com NavMesh;
Como criar um timer?
Script sem erro, mas não funciona
Cut Scene com video player
[Duvida] Com LookAt
[Resolvido]Objeto não está sendo instanciado
[DUVIDA] - Pontuação e fim de jogo
Network Manager opção sumiu
[DUVIDA] Shader
PROBLEMA TEXTURA E TELA GAME
[Resolvido] Colisores nao colidem!!
Como colocar dano no inimigo? e vida no player?
O que falta??
OBJETO INSTANCIANDO EM POSIÇÃO ERRADA
QUEM AI TA DISPOSTO A DESENVOLVER UM GAME EM EQUIPE??
Como faz para colocar som nos passos do personagem?
[TUTORIAL] FPSController nadar e mergulhar, junto com efeito submerso
Receber tiro(animação)
QUER UMA PEQUENA GAMEPLAY DO MEU GAME?
Sistema de Sensibilidade Do Mouse X e Y!
Limite de tela
[Resolvido]COMO CONSULTAR O PAINEL DE PREFERENÇIAS DA UNITY?
Alguém poderia me dizer o que estou fazendo de errado nesses scripts? (Vuforia SDK).
[RESOLVIDO] Como movimentar um objeto de um lado para o outro
Movimento de rotação entre dois objetos
Ajuda sobre melhorar a Fricção no Wheel Collider
[Duvida] script para criar um servidor automaticamente
Alguem Me Ajuda A Corrigir Um Erro Em Uma Conexão Com mysql
Como faz para pular?
sombrancelha do mixamo
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
Atingir inimigo e ele se destruir
Alguns modelos low poly
Pegar coisas do chao
Checkpoint e Respawn
Teste jogo em andamento "Infiltraded"
Alguem quer ajudar em meu jogo???
[Resolvido]Como achar um objeto por componente?
Coletar
[TUTORIAL] Banco de Dados || PHP
[Resolvido] Como fazer o objeto colidir uma vez e tão ficar tremendo?
Problema com rotação de objeto
[____ADMINISTRAÇÃO____] PRECISO DE AJUDA [DICA PARA SER AJUDADO]
como fazer sombras pixelizadas
[Dúvida]Como selecionar o local de destino do "Application.CaptureScreenshot"
[Resolvido]Como se faz agua?
fps camera não vai para cima e para baixo network unity como resolver?
[Resolvido]Digitar um número e sair um áudio
[TUTORIAL] Unity 5 - Alterar Post-processing Stack através de um SCRIPT
erro AI Enemy
Colisão igual a reproduzir som
Random sem repetir a palavra
COMO POSSO FAZER MUDAR DE CENA QUANDO ABRIR A PORTA
Pegar o gameObject conectado a outro
Como alterar a cor dos pixel um a um de uma renderização
Atualização da unity
Salvar Score e Substituir caso faça Mais!
[Duvida] Em Relacao A Manerira com que exnxergam o player
LoadScene De um Jeito Diferente [duvida]
O que acham dos meus modelos? (Prédios)
[Vídeo] - Avaliem essa gameplay do meu jogo por favor?!
Formação de Equipe Battle of Worlds
MySql + Unity 5.5 Não esta funcionando
Pontos luminosos em objeto 3D
Jogo Teste - Survive
[RESOLVIDO] Problema com objeto 3D após mudar cena
Atualização
Projeto B
Galerapresciso de vozes?
The Pyramid demo 1.0.0
[TUTORIAL] Sistema de Lanterna com Pilhas
Equipe para criar um jogo estilo "My summer car" porém totalmente BR
Build
[Duvida] Objeto se deforma ao ser rotacionado como filho.
Projeto - Girl Blade
Salvar abates
ALGUEM PODE ME DIZER COM FAZER UMA CUTSCENE IGUAL O JOGO SCHULTZ
[TUTORIAL] MENU PRINCIPAL - UNITY 5 (5.3 ou superior) (Com UI)
Duvida sobre GetKeyDown !!!!
[ PLAYLIST ] - Musicas para escutar enquanto desenvolve seu jogo! (Sem funk)
Como funciona as variaveis bool?
Cenarios 3D para Unity!
Janela da cena com fps baixissimo, mas o jogo fica normal
[Duvida] Objeto acha o palyer, mas nao o segue!
ALGUEM SABE COMO EU POSSO COLOCAR SANGUE NO CHÃO
[Modelo 3D] Escada enferrujada Download grátis
(DUVIDA) Script de EXP
[Duvida] Como achar objetos mais proximos
[TUTORIAL] Android - Sistema de controle third person shooter, Joystick + Swipe camera
[Duvida] Como dizer quantos elementos uma array vai ter?
Custo de desenvolvimento de Game tipo GTA
Problema com scripts e não sei como resolver Pfv Me ajudem
Hoje à(s) 12:21 pm
Hoje à(s) 11:56 am
Hoje à(s) 11:51 am
Hoje à(s) 11:08 am
Hoje à(s) 10:49 am
Hoje à(s) 10:08 am
Hoje à(s) 9:39 am
Hoje à(s) 9:00 am
Hoje à(s) 7:56 am
Hoje à(s) 4:07 am
Ontem à(s) 11:41 pm
Ontem à(s) 11:31 pm
Ontem à(s) 10:13 pm
Ontem à(s) 9:57 pm
Ontem à(s) 9:38 pm
Ontem à(s) 9:02 pm
Ontem à(s) 8:25 pm
Ontem à(s) 8:23 pm
Ontem à(s) 8:00 pm
Ontem à(s) 6:24 pm
Ontem à(s) 6:23 pm
Ontem à(s) 5:51 pm
Ontem à(s) 5:51 pm
Ontem à(s) 5:50 pm
Ontem à(s) 4:40 pm
Ontem à(s) 4:30 pm
Ontem à(s) 4:03 pm
Ontem à(s) 3:43 pm
Ontem à(s) 3:15 pm
Ontem à(s) 2:44 pm
Ontem à(s) 2:41 pm
Ontem à(s) 2:13 pm
Ontem à(s) 2:12 pm
Ontem à(s) 2:10 pm
Ontem à(s) 2:00 pm
Ontem à(s) 1:56 pm
Ontem à(s) 8:25 am
Ontem à(s) 8:19 am
Ontem à(s) 7:45 am
Ontem à(s) 6:57 am
Ter Maio 23, 2017 10:26 pm
Ter Maio 23, 2017 10:16 pm
Ter Maio 23, 2017 9:33 pm
Ter Maio 23, 2017 8:52 pm
Ter Maio 23, 2017 8:04 pm
Ter Maio 23, 2017 7:52 pm
Ter Maio 23, 2017 7:10 pm
Ter Maio 23, 2017 4:59 pm
Ter Maio 23, 2017 4:10 pm
Ter Maio 23, 2017 4:05 pm
Ter Maio 23, 2017 4:02 pm
Ter Maio 23, 2017 3:59 pm
Ter Maio 23, 2017 3:49 pm
Ter Maio 23, 2017 3:46 pm
Ter Maio 23, 2017 3:39 pm
Ter Maio 23, 2017 3:36 pm
Ter Maio 23, 2017 3:29 pm
Ter Maio 23, 2017 3:24 pm
Ter Maio 23, 2017 3:08 pm
Ter Maio 23, 2017 2:57 pm
Ter Maio 23, 2017 2:53 pm
Ter Maio 23, 2017 2:52 pm
Ter Maio 23, 2017 2:45 pm
Ter Maio 23, 2017 2:35 pm
Ter Maio 23, 2017 2:33 pm
Ter Maio 23, 2017 2:10 pm
Ter Maio 23, 2017 1:45 pm
Ter Maio 23, 2017 1:39 pm
Ter Maio 23, 2017 12:31 pm
Ter Maio 23, 2017 8:49 am
Ter Maio 23, 2017 8:17 am
Seg Maio 22, 2017 5:32 pm
Seg Maio 22, 2017 2:55 pm
Seg Maio 22, 2017 2:35 pm
Seg Maio 22, 2017 2:27 pm
Seg Maio 22, 2017 1:41 pm
Seg Maio 22, 2017 1:41 pm
Seg Maio 22, 2017 12:28 pm
Seg Maio 22, 2017 12:20 pm
Seg Maio 22, 2017 9:56 am
Seg Maio 22, 2017 9:15 am
Seg Maio 22, 2017 7:39 am
Dom Maio 21, 2017 9:49 pm
Dom Maio 21, 2017 8:34 pm
Dom Maio 21, 2017 7:35 pm
Dom Maio 21, 2017 4:08 pm
Dom Maio 21, 2017 3:14 pm
Dom Maio 21, 2017 2:36 pm
Dom Maio 21, 2017 1:29 pm
Dom Maio 21, 2017 1:29 pm
Dom Maio 21, 2017 11:26 am
Dom Maio 21, 2017 11:12 am
Sab Maio 20, 2017 11:15 pm
Sab Maio 20, 2017 11:15 pm
Sab Maio 20, 2017 10:24 pm
Sab Maio 20, 2017 8:17 pm
Sab Maio 20, 2017 7:59 pm
Sab Maio 20, 2017 5:41 pm
Sab Maio 20, 2017 5:36 pm
DuViDoSo34
Madson
DuViDoSo34
John Rambo
DuViDoSo34
Chilinger
DuViDoSo34
DuViDoSo34
mafipt
aleksander700
hrr23
DuViDoSo34
thiagograssi
PauloFR
thiagograssi
Xurupitinha
Miss Talon
Junim
Manawydan
MarcosSchultz
bruxamissi
Junim
marcos4503
JCLEON
aleksander700
Mic4el
bruxamissi
Xurupitinha
marcos4503
WolfTheZelda
Games Indie
MarcosSchultz
MarcosSchultz
MarcosSchultz
Bruninho
MarcosSchultz
dstaroski
dstaroski
dstaroski
Mic4el
Matrirxp
Matrirxp
#N31
artplayer
Dom3000
marcos4503
Callyde Jr
BatataName
thzin
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
iagokennedyy
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
glauco
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
GameS DoG
iagokennedyy
iagokennedyy
Dom3000
sabbath
dstaroski
zZAndersonZz
Marc7
marcos4503
marcos4503
Dom3000
Callyde Jr
IanLuan
JackJones
dstaroski
DuViDoSo34
dstaroski
bruxamissi
glauco
bruxamissi
LucasGamerFx
marcos4503
weslleyFx
Gray_14
rafaelllsd
DuViDoSo34
glauco
MateusWTP
bruxamissi
DuViDoSo34
marcos4503
DuViDoSo34
tom ramber
LucasGamerFx

[TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

TUTORIAL [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Qua Mar 16, 2016 3:03 pm

Fala galera, elaborei este script simples que permite mover o seu jogador com Touch, como também com o Mouse, no estilo subway surfers... para jogos do tipo infinity runner

Basta criar um Script em C# com o nome "Mover", com o código abaixo, e jogar no seu jogador.

Código:
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody))]
public class Mover : MonoBehaviour {//NESTE SCRIPT O PERSONAGEM DEVE SE MOVER PARA FRENTE NO EIXO Z(AZUL), PARA TIRAR DÚVIDAS, CONTATE WWW.SCHULTZGAMES.COM
   private float ponteiroX, ponteiroY, novaPosicX;
   private int indicePosic;
   private bool podeMover, estaNoChao, pulouR;
   private Vector3 posicInicial;
   [Range(0.01f,1)]public float TempoParaMover = 0.15f;
   [Range(1,5)]public int QuantoMover = 1;
   [Range(1,20)]public float forcaDoPulo = 5.0f;
   [Range(0,20)]public float velocidadeJogador = 5.0f;
   public bool podePular = true;
   public LayerMask LayersNaoIgnoradas = -1;
   private Rigidbody corpoRigido;

   void Start(){
      corpoRigido = GetComponent<Rigidbody> ();
      corpoRigido.constraints = RigidbodyConstraints.FreezeRotation;
      posicInicial = transform.position;
      novaPosicX = posicInicial.x + indicePosic*QuantoMover;
      indicePosic = 0;
      pulouR = false;
      podeMover = true;
   }

   void Update () {
      estaNoChao = Physics.Linecast (transform.position, transform.position - Vector3.up, LayersNaoIgnoradas);
      if (podeMover) {
         DetectarMovimento ();
      }
   }

   IEnumerator EsperarParaMover(float tempo) {
      yield return new WaitForSeconds(tempo);
      podeMover = true;
   }
   IEnumerator EsperarParaPular(float tempo) {
      yield return new WaitForSeconds(tempo);
      pulouR = false;
   }

   void DetectarMovimento(){
      podeMover = false;
      StartCoroutine (EsperarParaMover(TempoParaMover));

      ponteiroX = ponteiroY = 0;
      if (Input.GetMouseButton (0)) {
         ponteiroX = Input.GetAxis ("Mouse X");
         ponteiroY = Input.GetAxis ("Mouse Y");
      }
      if (Input.touchCount > 0){
         ponteiroX = Input.touches[0].deltaPosition.x;
         ponteiroY = Input.touches[0].deltaPosition.y;
      }
      //DETECTAR EIXO X
      if (ponteiroX > 0 && indicePosic < 1) {
         indicePosic ++;
         novaPosicX = posicInicial.x + indicePosic*QuantoMover;
      }
      else if (ponteiroX < 0 && indicePosic > -1) {
         indicePosic --;
         novaPosicX = posicInicial.x + indicePosic*QuantoMover;
      }
      //DETECTAR EIXO Y
      if (ponteiroY > 0.1f && podePular) {
         Pular ();
      }
   }

   void FixedUpdate(){
      Vector3 proximaPosic = new Vector3 (novaPosicX, transform.position.y, transform.position.z);
      transform.position = Vector3.Lerp (transform.position, proximaPosic, Time.deltaTime * 5);
      corpoRigido.velocity = new Vector3 (corpoRigido.velocity.x, corpoRigido.velocity.y, velocidadeJogador);
   }

   void Pular(){
      if(estaNoChao == true && pulouR == false){
         corpoRigido.AddForce(Vector3.up * forcaDoPulo, ForceMode.Impulse);
         pulouR = true;
         StartCoroutine (EsperarParaPular(0.5f));
      }
   }
}

este script funcionará se o seu personagem se mover para frente no eixo Z


Última edição por MarcosSchultz em Dom Jun 26, 2016 6:38 pm, editado 2 vez(es)
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz em Qua Mar 16, 2016 5:59 pm

Poxa Marcos, valeu mesmo pelo tutorial era oque estava precisando pro meu jogo!!
Agora só preciso mudar umas coisas pq meu jogo é em 2D e a câmera é de cima, e tirar o pulo.. Com esse script já é um grande avanço!

Obrigado cara!
avatar
darkz
Iniciante
Iniciante

Masculino PONTOS : 581
REPUTAÇÃO : 0
Idade : 20
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Qui Mar 17, 2016 3:39 pm

darkz escreveu:Poxa Marcos, valeu mesmo pelo tutorial era oque estava precisando pro meu jogo!!
Agora só preciso mudar umas coisas pq meu jogo é em 2D e a câmera é de cima, e tirar o pulo.. Com esse script já é um grande avanço!

Obrigado cara!

Tem algum vídeo mostrando um exemplo de gameplay do sistema que você está tentando fazer???

Posso ajustar o sistema para 2D
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz em Qui Mar 17, 2016 6:34 pm

MarcosSchultz escreveu:
Tem algum vídeo mostrando um exemplo de gameplay do sistema que você está tentando fazer???

Posso ajustar o sistema para 2D

Não conheço nenhum vídeo com esse sistema que to tentando fazer...

Mas a pista e o movimento para a direita e a esquerda é estilo Subway Surfers, vai pra lá e pra cá, só que eu tava pensando em usar botões direito e esquerdo que pra mim parece mais fácil de programar.
avatar
darkz
Iniciante
Iniciante

Masculino PONTOS : 581
REPUTAÇÃO : 0
Idade : 20
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Qui Mar 17, 2016 11:07 pm

da para fazer isto facilmente, basta colocar o comando dos:

if(ponteiroX > 0 && indicePosic < 1){}, etc

como se fossem botões, dentro de voids, e ai tira o if. Depois basta implementar nos botões. Consegue?
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz em Sex Mar 18, 2016 1:37 am

Código:

public void Direita {
 (ponteiroX > 0 && indicePosic < 1) // aqui mostra "acessador get ou set esperado"
 indicePosic ++;
 novaPosicX = posicInicial.x + indicePosic*QuantoMover;
 }
public void Esquerda {
 (ponteiroX < 0 && indicePosic > -1) // aqui mostra "acessador get ou set esperado"
 indicePosic --;
 novaPosicX = posicInicial.x + indicePosic*QuantoMover;
 }

Pelo oque entendi é assim? Não sei programar, sei o básico mesmo das coisas.
avatar
darkz
Iniciante
Iniciante

Masculino PONTOS : 581
REPUTAÇÃO : 0
Idade : 20
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Sab Mar 19, 2016 12:23 pm

Código:
public void Direita {
      indicePosic ++;
      novaPosicX = posicInicial.x + indicePosic*QuantoMover;
   }
   public void Esquerda {
      indicePosic --;
      novaPosicX = posicInicial.x + indicePosic*QuantoMover;
   }


E para configurar os botões, basta seguir este tutorial:

avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz em Dom Mar 20, 2016 12:38 am



Está dando o mesmo problema.. Sad
Tentei colocar set {}, mas aparece outro erro no void, falando que "Esquerda"/"Direita": a propriedade ou o indexador não pode ter o tipo void.
avatar
darkz
Iniciante
Iniciante

Masculino PONTOS : 581
REPUTAÇÃO : 0
Idade : 20
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Dom Mar 20, 2016 11:07 pm

você declarou esta variável pelo menos?
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz em Dom Mar 20, 2016 11:23 pm

MarcosSchultz escreveu:você declarou esta variável pelo menos?

Sim, declarei.

Código:
private int indicePosic;
avatar
darkz
Iniciante
Iniciante

Masculino PONTOS : 581
REPUTAÇÃO : 0
Idade : 20
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Seg Mar 21, 2016 2:23 pm

poste o seu script completo ai
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz em Seg Mar 21, 2016 2:52 pm

Código:
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody))]
public class Mover : MonoBehaviour {
   private float ponteiroX, ponteiroY, novaPosicX;
   private int indicePosic;
   private bool podeMover, estaNoChao, pulouR;
   private Vector3 posicInicial;
   [Range(0.01f,1)]public float TempoParaMover = 0.15f;
   [Range(1,5)]public int QuantoMover = 1;
   public LayerMask LayersNaoIgnoradas = -1;
   private Rigidbody corpoRigido;

   void Start(){
      corpoRigido = GetComponent<Rigidbody> ();
      corpoRigido.constraints = RigidbodyConstraints.FreezeRotation;
      posicInicial = transform.position;
      novaPosicX = posicInicial.x + indicePosic*QuantoMover;
      indicePosic = 0;
      podeMover = true;
   }

   void Update () {
      estaNoChao = Physics.Linecast (transform.position, transform.position - Vector3.up, LayersNaoIgnoradas);
      if (podeMover) {
         DetectarMovimento ();
      }
   }

   IEnumerator EsperarParaMover(float tempo) {
      yield return new WaitForSeconds(tempo);
      podeMover = true;
   }

   void DetectarMovimento(){
      podeMover = false;
      StartCoroutine (EsperarParaMover (TempoParaMover));

      ponteiroX = ponteiroY = 0;
      if (Input.GetMouseButton (0)) {
         ponteiroX = Input.GetAxis ("Mouse X");
         ponteiroY = Input.GetAxis ("Mouse Y");
      }
      if (Input.touchCount > 0) {
         ponteiroX = Input.touches [0].deltaPosition.x;
         ponteiroY = Input.touches [0].deltaPosition.y;
      }
   }
      //DETECTAR EIXO X
   public void Direita {
      indicePosic ++;
      novaPosicX = posicInicial.x + indicePosic*QuantoMover;
   }
   public void Esquerda {
      indicePosic --;
      novaPosicX = posicInicial.x + indicePosic*QuantoMover;
   }

   void FixedUpdate(){
      Vector3 proximaPosic = new Vector3 (novaPosicX, transform.position.y, transform.position.z);
      transform.position = Vector3.Lerp (transform.position, proximaPosic, Time.deltaTime * 5);
   }
}
avatar
darkz
Iniciante
Iniciante

Masculino PONTOS : 581
REPUTAÇÃO : 0
Idade : 20
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Qua Mar 23, 2016 1:40 pm

Código:
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody))]
public class Mover : MonoBehaviour {
   private float novaPosicX;
   [HideInInspector]public int indicePosic;
   private bool podeMover;
   private Vector3 posicInicial;
   [Range(0.01f,1)]public float TempoParaMover = 0.15f;
   [Range(1,5)]public int QuantoMover = 1;
   public LayerMask LayersNaoIgnoradas = -1;
   private Rigidbody corpoRigido;

   void Start(){
      corpoRigido = GetComponent<Rigidbody> ();
      corpoRigido.constraints = RigidbodyConstraints.FreezeRotation;
      posicInicial = transform.position;
      novaPosicX = posicInicial.x + indicePosic*QuantoMover;
      indicePosic = 0;
      podeMover = true;
   }
   IEnumerator EsperarParaMover(float tempo) {
      yield return new WaitForSeconds(tempo);
      podeMover = true;
   }
   void FixedUpdate(){
      Vector3 proximaPosic = new Vector3 (novaPosicX, transform.position.y, transform.position.z);
      transform.position = Vector3.Lerp (transform.position, proximaPosic, Time.deltaTime * 5);
   }
   public void Direita(){
      if (podeMover && indicePosic < 1) {
         podeMover = false;
         indicePosic++;
         novaPosicX = posicInicial.x + indicePosic * QuantoMover;
         StartCoroutine (EsperarParaMover (TempoParaMover));
      }
   }
   public void Esquerda(){
      if (podeMover && indicePosic > -1) {
         podeMover = false;
         indicePosic--;
         novaPosicX = posicInicial.x + indicePosic * QuantoMover;
         StartCoroutine (EsperarParaMover (TempoParaMover));
      }
   }
}
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz em Qua Mar 23, 2016 10:29 pm

Poxa cara, você é top dms, ajudou bastante!!! É isso que estava precisando, muito obrigado!! cheers

Agora o resto do jogo tem tutorias no seu canal que vai me ajudar.

Valeu!
avatar
darkz
Iniciante
Iniciante

Masculino PONTOS : 581
REPUTAÇÃO : 0
Idade : 20
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Qua Mar 23, 2016 10:52 pm

qualquer coisa, posta ai... se quiser implementar mais movimentos, etc Very Happy
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por darkz em Qui Mar 24, 2016 9:35 am

Beleza! Very Happy
avatar
darkz
Iniciante
Iniciante

Masculino PONTOS : 581
REPUTAÇÃO : 0
Idade : 20
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por dinho em Qui Mar 24, 2016 11:12 am

Marcos vc é o Cara!!! Gostaria que vc fizesse um tutorial de movimentação com Touch de personagem em 360 graus , tipo aqueles de apresentação. Ficaria bem legal.
avatar
dinho
Membro
Membro

Masculino PONTOS : 669
REPUTAÇÃO : 5
Áreas de atuação : Desenhista e Modelador 3D.
Modelagem em Blender.
Respeito as regras :

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

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Hardencio em Seg Mar 28, 2016 4:06 pm

Muito obrigado Marcos!! Ajudou de mais, tava quebrando a cabeça pra fazer essa parte do touch! Acho que seria bacana você fazer um tuto em seu canal sobre touch em geral. Iria ajudar muita gente.

Continue assim!
Abraço!
avatar
Hardencio
MembroAvançado

Masculino PONTOS : 945
REPUTAÇÃO : 19
Áreas de atuação : Inermis Studios
Respeito as regras :

Ver perfil do usuário https://www.facebook.com/inermisstudios/

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Hardencio em Ter Mar 29, 2016 4:33 pm

Na verdade Marcos seu script não funcionou da maneira que eu queria no meu jogo, pois as dependendo da maneira como eu aplico o touch (sendo na unity, com o mouse ou direto do celular) o player avança mais do que deveria.

Queria que me ajudasse a implementar o sistema de touch swipe no meu script que estou usando agora, pois ele esta funcionando do modo que eu quero. Se puder me ajudar, criei um tópico mais cedo titulado como "Implementação de Touch em script modo Swipe", lá postei screenshot e o script que estou usando

avatar
Hardencio
MembroAvançado

Masculino PONTOS : 945
REPUTAÇÃO : 19
Áreas de atuação : Inermis Studios
Respeito as regras :

Ver perfil do usuário https://www.facebook.com/inermisstudios/

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Ter Mar 29, 2016 4:59 pm

Como exatamente está andando mais do que deveria??? Basta você ajustar a distancia na variável ué O.o

poderia especificar mais o problema?
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Hardencio em Ter Mar 29, 2016 5:38 pm

Não andando mais do que deveria na questão de distancia...hahaha

O script esta definido para cada deslize na tela o objeto movimente o valor 1 em tal eixo correto?
O problema é que quando eu deslizo muito sobre a tela ele pula um movimento, ou seja é como ele fosse pro segundo movimento. Por exemplo: Existem 3 lugares pro player se mover na posição 0, -1, e 1..Se eu estou na -1 e deslizo muito sobre a tela o player passa pela posição 0 e vai para a 1 direto.

Eu quero que a cada deslize de dedo, dependente se for um deslize pequeno ou um deslize maior o pleyer se movimente apenas uma vez. Não sei se entendeu, vou colar aqui um print do game pra clarear melhor a ideia: http://i.imgur.com/X4k9dFO.png
avatar
Hardencio
MembroAvançado

Masculino PONTOS : 945
REPUTAÇÃO : 19
Áreas de atuação : Inermis Studios
Respeito as regras :

Ver perfil do usuário https://www.facebook.com/inermisstudios/

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Ter Mar 29, 2016 11:54 pm

Hardencio escreveu:Não andando mais do que deveria na questão de distancia...hahaha

O script esta definido para cada deslize na tela o objeto movimente o valor 1 em tal eixo correto?
O problema é que quando eu deslizo muito sobre a tela ele pula um movimento, ou seja é como ele fosse pro segundo movimento. Por exemplo: Existem 3 lugares pro player se mover na posição 0, -1, e 1..Se eu estou na -1 e deslizo muito sobre a tela o player passa pela posição 0 e vai para a 1 direto.

Eu quero que a cada deslize de dedo, dependente se for um deslize pequeno ou um deslize maior o pleyer se movimente apenas uma vez. Não sei se entendeu, vou colar aqui um print do game pra clarear melhor a ideia: http://i.imgur.com/X4k9dFO.png

Testei aqui de novo e não obtive o erro O.o

Tem esta variável: TempoParaMover

que diz quanto tempo vai esperar entre cada movimento... talvez deva aumentar o valor dela
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Hardencio em Qua Mar 30, 2016 12:25 am

Pois é Marcos, eu tentei mexer nessa variável e é possivel chegar em um bom resultado, mas não na ideal, eu prezo bastante uma boa jogabilidade nos jogos...até mesmo antes da arte. xD

Mas obrigado pela ajuda que vem dando.
avatar
Hardencio
MembroAvançado

Masculino PONTOS : 945
REPUTAÇÃO : 19
Áreas de atuação : Inermis Studios
Respeito as regras :

Ver perfil do usuário https://www.facebook.com/inermisstudios/

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por matsuismael em Sab Maio 28, 2016 1:45 pm

Valeu Marcos, esse script e fantástico, com um ajusto ficou perfeito. 
Mas queria sabe se e possível aplicar o touch Screen a uma certa area da tela e não na tela todo?
avatar
matsuismael
Membro
Membro

PONTOS : 413
REPUTAÇÃO : 0
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por weslleyFx em Sab Maio 28, 2016 1:56 pm

Sim e possível vc pode usar o Rect.Contains

saiba mais
http://docs.unity3d.com/ScriptReference/Rect.Contains.html
avatar
weslleyFx
Moderador

Masculino PONTOS : 2438
REPUTAÇÃO : 536
Idade : 19
Áreas de atuação : C#
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por matsuismael em Sab Maio 28, 2016 2:35 pm

weslleyFx escreveu:Sim e possível vc pode usar o Rect.Contains

saiba mais
http://docs.unity3d.com/ScriptReference/Rect.Contains.html
Valeu, vou estuda como fazer isso.  Smile
avatar
matsuismael
Membro
Membro

PONTOS : 413
REPUTAÇÃO : 0
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Eduardoro39 em Dom Set 04, 2016 1:59 pm

queria saber como voce fes para arastar o dedo pra cima e o player pular? sei que é com tochCount mais como fes pra ir para o lado que deseja?

Eduardoro39
Avançado
Avançado

Masculino PONTOS : 436
REPUTAÇÃO : 8
Idade : 17
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Dom Set 04, 2016 11:31 pm

Eduardoro39 escreveu:queria saber como voce fes para arastar o dedo pra cima e o player pular? sei que é com tochCount mais como fes pra ir para o lado que deseja?

Ué, eu simplesmente separei o input do touch em X e Y, já que é um vector2.

O input é feito e retorna uma coordenada (X,Y). depois, eu apenas chequei se o deslocamento em Y era positivo ou negativo... X é o eixo horizontal, e Y é o eixo vertical.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Eduardoro39 em Seg Set 05, 2016 12:16 am

Pode me mostrar isso em um script em não entendi

Eduardoro39
Avançado
Avançado

Masculino PONTOS : 436
REPUTAÇÃO : 8
Idade : 17
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por thiagograssi em Seg Set 05, 2016 10:51 am

galera quando meu personagem vai para a parede ta pra parte do cenario q nao ta em uso como resolvo esse problema com a camera ?
avatar
thiagograssi
Avançado
Avançado

Masculino PONTOS : 492
REPUTAÇÃO : 21
Idade : 13
Áreas de atuação : Unity 3D;
Unity 2D;
Cinema 4D;
SketchUp;
C#(intermedario);

Respeito as regras :

Ver perfil do usuário https://www.youtube.com/channel/UClxaKPltt6jTWhxcfTqJ0AA

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Eduardoro39 em Seg Set 05, 2016 8:52 pm

thiagograssi escreveu:galera quando meu personagem vai para a parede ta pra parte do cenario q nao ta em uso como resolvo esse problema com a camera ?
a camera pega uma parte que nao é do cenario tipo a parede tente mover a camera mais para o lado contrario da parede que a camera esta pegando

Eduardoro39
Avançado
Avançado

Masculino PONTOS : 436
REPUTAÇÃO : 8
Idade : 17
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por thiagograssi em Seg Set 05, 2016 9:22 pm

so que meu boneco tem que ficar no meio  da camera e se eu mover o beneco se destralizar se eu  mover o bruneco junto com a camera ai mostra por fora a outra parede
avatar
thiagograssi
Avançado
Avançado

Masculino PONTOS : 492
REPUTAÇÃO : 21
Idade : 13
Áreas de atuação : Unity 3D;
Unity 2D;
Cinema 4D;
SketchUp;
C#(intermedario);

Respeito as regras :

Ver perfil do usuário https://www.youtube.com/channel/UClxaKPltt6jTWhxcfTqJ0AA

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Eduardoro39 em Seg Set 05, 2016 10:33 pm

Marcos vou mostrar o meu problema quando eu arrasto para o lado esquerdo ele vai pra tras e quando arrasto para direita ele vai para frente como mostra nesse link = http://prntscr.com/cemp6q = Parado ,  http://prntscr.com/cemq5r = Arrastando para Esquerda 

ele vai para frente enves de ir para o Lado sabe resolver aqui o script 
Código:
using UnityEngine;
using System.Collections;
[RequireComponent(typeof(Rigidbody2D))]
public class Mover : MonoBehaviour
{//NESTE SCRIPT O PERSONAGEM DEVE SE MOVER PARA FRENTE NO EIXO Z(AZUL), PARA TIRAR DÚVIDAS, CONTATE WWW.SCHULTZGAMES.COM
    private float ponteiroX, ponteiroY, novaPosicX;
    private int indicePosic;
    private bool podeMover, estaNoChao, pulouR;
    private Vector3 posicInicial;
    [Range(0.01f, 1)]
    public float TempoParaMover = 0.15f;
    [Range(1, 5)]
    public int QuantoMover = 1;
    [Range(1, 20)]
    public float forcaDoPulo = 5.0f;
    [Range(0, 20)]
    public float velocidadeJogador = 5.0f;
    public bool podePular = true;
    public LayerMask LayersNaoIgnoradas = -1;
    private Rigidbody2D corpoRigido;

    void Start()
    {
        corpoRigido = GetComponent<Rigidbody2D>();
       
        posicInicial = transform.position;
        novaPosicX = posicInicial.x + indicePosic * QuantoMover;
        indicePosic = 0;
        pulouR = false;
        podeMover = true;
    }

    void Update()
    {
        estaNoChao = Physics.Linecast(transform.position, transform.position - Vector3.up, LayersNaoIgnoradas);
        if (podeMover)
        {
            DetectarMovimento();
        }
    }

    IEnumerator EsperarParaMover(float tempo)
    {
        yield return new WaitForSeconds(tempo);
        podeMover = true;
    }
    IEnumerator EsperarParaPular(float tempo)
    {
        yield return new WaitForSeconds(tempo);
        pulouR = false;
    }

    void DetectarMovimento()
    {
        podeMover = false;
        StartCoroutine(EsperarParaMover(TempoParaMover));

        ponteiroX = ponteiroY = 0;
        if (Input.GetMouseButton(0))
        {
            ponteiroX = Input.GetAxis("Mouse X");
            ponteiroY = Input.GetAxis("Mouse Y");
        }
        if (Input.touchCount > 0)
        {
            ponteiroX = Input.touches[0].deltaPosition.x;
            ponteiroY = Input.touches[0].deltaPosition.y;
        }
        //DETECTAR EIXO X
        if (ponteiroX > 0 && indicePosic < 1)
        {
            indicePosic++;
            novaPosicX = posicInicial.x + indicePosic * QuantoMover;
        }
        else if (ponteiroX < 0 && indicePosic > -1)
        {
            indicePosic--;
            novaPosicX = posicInicial.x + indicePosic * QuantoMover;
        }
        //DETECTAR EIXO Y
        if (ponteiroY > 0.1f && podePular)
        {
           
        }
    }

    void FixedUpdate()
    {
        Vector3 proximaPosic = new Vector3(novaPosicX, transform.position.y, transform.position.z);
        transform.position = Vector3.Lerp(transform.position, proximaPosic, Time.deltaTime * 5);
        corpoRigido.velocity = new Vector3(corpoRigido.velocity.x, corpoRigido.velocity.y, velocidadeJogador);
    }




}

Eduardoro39
Avançado
Avançado

Masculino PONTOS : 436
REPUTAÇÃO : 8
Idade : 17
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por thiagograssi em Seg Set 05, 2016 10:43 pm

Eduardoro39 escreveu:Marcos vou mostrar o meu problema quando eu arrasto para o lado esquerdo ele vai pra tras e quando arrasto para direita ele vai para frente como mostra nesse link = http://prntscr.com/cemp6q = Parado ,  http://prntscr.com/cemq5r = Arrastando para Esquerda 

ele vai para frente enves de ir para o Lado sabe resolver aqui o script 
Código:
cara muda os eixos Y X Z até achar a posição correta ex: onde tá ponteiroY tenta mudar pro x nao funciona muda pro Z até achar a letra correnta
avatar
thiagograssi
Avançado
Avançado

Masculino PONTOS : 492
REPUTAÇÃO : 21
Idade : 13
Áreas de atuação : Unity 3D;
Unity 2D;
Cinema 4D;
SketchUp;
C#(intermedario);

Respeito as regras :

Ver perfil do usuário https://www.youtube.com/channel/UClxaKPltt6jTWhxcfTqJ0AA

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Ter Set 06, 2016 3:44 am

Eduardoro39, você não está seguindo o tutorial.

Nele eu deixo restritamente especificado que o personagem deve mover-se para frente no eixo Z, isto fará a rotação ficar correta para os demais eixos.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Eduardoro39 em Ter Set 06, 2016 10:13 am

Sim eu fis mais o cenario que esta sendo instanciado ta indo para direçao contraria 
quando instancia os Obstaculos ele vai para >> e o player nao
Esse aqui

Código:
#pragma strict

var VetorPlataformas: GameObject[];
var PlataformaAtual: GameObject;

var QntFilhos: int;
var i: int;

var PosicaoFim: Vector3;

var indicePlataforma: int;
var indicePlataformaAtual: int;

var n: int;

function Start () {

    PlataformaAtual = Instantiate(PlataformaAtual,transform.position+transform.up*-3+transform.forward *-3,Quaternion.identity);

    indicePlataformaAtual = 0;
    indicePlataforma = 0;
    n =0;
}

function Update () {

    if (Vector3.Distance(PlataformaAtual.transform.position,transform.position)<120)
    {
        PlataformaAtual.transform.name = "p"+n;
        QntFilhos = PlataformaAtual.transform.GetChildCount();
        for (i=0; i<QntFilhos; i++)
        {
            if (PlataformaAtual.transform.GetChild(i).name == "Fim")
            {
                PosicaoFim = PlataformaAtual.transform.GetChild(i).position;
                break;
            }
        }
        while (indicePlataformaAtual == indicePlataforma)
        {
            indicePlataforma = Random.Range(0,VetorPlataformas.Length);
        }
        indicePlataformaAtual = indicePlataforma;
 
        PlataformaAtual = Instantiate(VetorPlataformas[indicePlataforma],
                        PosicaoFim,
                        Quaternion.identity);
        n++;
    }
}

Eduardoro39
Avançado
Avançado

Masculino PONTOS : 436
REPUTAÇÃO : 8
Idade : 17
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Qua Set 07, 2016 12:26 am

Cara, refaça este script de spawn, só que em C#. 

Trabalhar em um projeto de infinity runner misturando C# com java não vai dar muito certo não, principalmente por que este script precisará se comunicar diretamente com o player em momentos de colisão ou coisas do tipo.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por thiagograssi em Qua Set 07, 2016 12:08 pm

marcos como eu faço para colocar animaçoes nesse script pq o meu a unica animação q tem é dele pulando
avatar
thiagograssi
Avançado
Avançado

Masculino PONTOS : 492
REPUTAÇÃO : 21
Idade : 13
Áreas de atuação : Unity 3D;
Unity 2D;
Cinema 4D;
SketchUp;
C#(intermedario);

Respeito as regras :

Ver perfil do usuário https://www.youtube.com/channel/UClxaKPltt6jTWhxcfTqJ0AA

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Qui Set 08, 2016 11:31 pm

thiagograssi escreveu:marcos como eu faço para colocar animaçoes nesse script pq o meu a unica animação q tem é  dele pulando

avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Édipo em Qua Nov 02, 2016 6:51 pm

ola marcos, boa noite, tenho uma duvida, teria como colocar o comando

corpoRigido.AddForce(Vector3.up * forcaDoPulo, ForceMode.Impulse);

apenas para ele mover para cima, sem ser para os lados, pois queria que ele movesse para os lados apenas quando estiver no chão.
e do jeito que esta ele pula para os lados sabe, e eu queria que ele só fosse pra cima

Édipo
MembroAvançado

Masculino PONTOS : 1075
REPUTAÇÃO : 22
Idade : 29
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Sex Nov 04, 2016 12:34 am

Édipo escreveu:ola marcos, boa noite, tenho uma duvida, teria como colocar o comando

corpoRigido.AddForce(Vector3.up * forcaDoPulo, ForceMode.Impulse);

apenas para ele mover para cima, sem ser para os lados, pois queria que ele movesse para os lados apenas quando estiver no chão.
e do jeito que esta ele pula para os lados sabe, e eu queria que ele só fosse pra cima

Da sim, basta fazer um comando de "isGrounded" e permitir o deslocamento horizontal apenas quando este ground for true, mas isto vai se aplicar ao seu jogo?

Olhe o subway por exemplo, tem muitas situações aonde é necessário ir para o lado ainda estando no ar... MUITAS MESMO
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por Édipo em Sex Nov 04, 2016 7:27 pm

-entendo o que vc disse, e vc tem razão na questão do jogo subway surfers, mas tipo a minha questão é que nesse script que vc compartilhou com a gente, se vc arrastar o dedo de um canto para o outro da tela na horizintal, e só ir um pouquinho pra cima, ele ja pula indo pro lado, e eu queria tipo restringir mais isso, tipo se eu arrastar para o lado e levantar um pouco o dedo ele vai somente para o lado, e pular somente quando eu arrastar o dedo para cima mesmo, tipo restringir o angulo de arrasto do dedo entende??
eu tentei fazer essa restrição de angulo do swap para os lados e deu certo que foi uma beleza, eu fiz assim...
Código:
if (ponteiroX > 0 && indicePosic < 1) {
         if (ponteiroY < 0.5f)
         {
            indicePosic ++;
            novaPosicX = posicInicial.x + indicePosic*QuantoMover;
         }
      }
      else if (ponteiroX < 0 && indicePosic > -1) {
         if (ponteiroY < 0.5f)
         {
               indicePosic --;
               novaPosicX = posicInicial.x + indicePosic*QuantoMover;
         }
      }
 
mas pra cima (pulando) ta uma canceira viu, nada de resultado positivo até agora :\
hehehe
vlw

Édipo
MembroAvançado

Masculino PONTOS : 1075
REPUTAÇÃO : 22
Idade : 29
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Mover personagem com Touch, no estilo SUBWAY SURFERS

Mensagem por MarcosSchultz em Ter Nov 08, 2016 1:37 am

cara, difícil... basicamente o sistema teria que ser quase todo reformulado, para seguir outras regras de Input.

Usando o AddForce você simplesmente faz a adição do impulso no momento do toque... para dar este efeito que você quer, o Input tem que ser extremamente limitado, mas pelo que eu testei aqui, acaba comprometendo muito a "fluidez" com que os comandos são aceitos.

Talvez você deva aumentar o tempo que é passado para o IENumerator de DetectarMovimento

Código:
StartCoroutine (EsperarParaPular(0.5f));

Troque de 0.5 para 1, 1.5, etc...
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 8728
REPUTAÇÃO : 1345
Idade : 20
Á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

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

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