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:
[TUTORIAL] Inimigo seguir e atacar Player ao encostar
Trocar Personagem/Skin
Como faz para o jogo rodar mesmo quando minimizado?
Não consigo desativar script de gameObject (C#)
Alguem poderia me ajudar com combo 2d?
Jogador pode escolher que tipo de pos processamento usar nas configurações?
Como se faz um sistema de combo pra mobile
Como fazer com que collider detecte colisao de objeto especifico?
Problema mudar de sprite sempre que seja adicionado um novo sprite a lista
Colocar video no unity
Imagem excedendo o limite da tela. Como resolver?
Erro no Android
Como abrir uma empresa de games?
Informação Importante sobre o Edge Collider 2D
Como consigo aquele efeito de lanterna imagem abaixo
Como desativar e habilitar o Skinned MeshRenderer?
Como posso usar a função OnClick nesse script
[TUTORIAL] Como carregar uma cena em segundo plano?
[Tutorial] Sistema de Combos (Mobile e PC)
Personagem sofre dando e continua de onde parou com condição.
Como Abrir Porta do Carro (Capo,PortaMalas, Portas) Mirando Nelas
[RESOLVIDO] Várias faixas de música
[RESOLVIDO] int Random.Range(int min, int max) para geração procedural ?
Como fazer o som funcionar de acordo com a velocidade do objeto
Alto falante Vibrar
[RESOLVIDO] Luz no interior
[TUTORIAL] Como Fazer com que as Luzes Iluminem apenas o que você deseja
Traduções e Dublagens de games
[RESOLVIDO] Cono mudar a Tag por script?
[RESOLVIDO] Qualidade do sprite - Compression
[TUTORIAL] Unity 3D - AnimationCurve
Rotação de um gameobject sem que os gameobjects filhos se alterem?
[RESOLVIDO] Partículas com imagem
[RESOLVIDO] DUVIDA SOBRE ATIVAR UM GAMEOBJECT ATRAVÉS DE UMA CONDIÇÃO
NavMesh não consegue reproduzir sprits de um jogador
NavMesh não faz animação do jogador
Bom dia amigos compro assets do meu interesse!
Criar Ranking Online
[TUTORIAL] ScrollView rapida e facil de fazer
colocar imagem no fórum
Unity ou Game Maker Studio
[TUTORIAL] Tocar audios de uma lista em uma sequência que se repete
Error CS0246, não sei o que fazer
Como faço pra um colisor não reconhecer outro colisor sem usar IsTrigger
[RESOLVIDO] Alteração de nomes e rastreamento das mudanças
Som unity
CHAVE DE ASSINATURA
[TUTORIAL]identificar se está no controle ou teclado
[TUTORIAL] Sistema de fome, sede, barra de vida, barra de estamina, itens e dano por queda
Não estou conseguindo ativar o evento do onClick após instanciar o botão
Exportar Modelo 3D da Unity
Duvida sobre Spawn
Dúvida sobre volatile
[UE4] Por favor me digam como me livrar do motion blur!
[RESOLVIDO] Float to transform
[RESOLVIDO] mudar a cor quando a personagem passa
Como ativar um 'Panel'
Como faço pra desligar e ligar outro text?
Como Faço Para Ativar/Desativar Material Por Script ?
como modificar o script para receber e registar o dano no personagem
[TUTORIAL] Inteligência artificial, inimigo e AIPoints
Meu personagem está tomando repulsão da parede
Problemas com IEnumerator
Meu personagem ta tremendo quando toca em alguma coisa
[TUTORIAL] Como criar tiro no Unity usando Raycast
Scripts travados
Como faço para mudar a posição de um objeto para perto de outro.
Alteração de personagens durante o jogo // parte 2
Como se faz uma grid, apenas e somente uma grid em 3D?
meu primeiro jogo pronto
quero corverter uma int em string
Como mudar a posição de um objeto constantemente sem estar na void Update
Como conseguir fazer para minha moto dar grau
[RESOLVIDO] Alteração de personagens durante o jogo
Como fazer um retrovisor leve para android?
Preciso de um script para andar de moto alguem consegue me ajudar
Como consigo fazer esse efeito de escurecer o ambiente ao atacar?
Como fazer pra selecionar um inimigo pra atacar de varios unity 2d
Setparent Photon
duvida em sistema de Horror de como pegar e solta objeto
[UE4] Como fazer cutscene com o próprio personagem?
Plataforma Flutuante
OS Tycoon (DEVLOG) - Crie seu próprio sistema operacional
[RESOLVIDO] Grande X vermelho
Como desativo o vsync em projeto para celular?
Como fazer uma compra aleatoria em uma cena
Sistema de propagação de fogo
[TUTORIAL] Como utilizar a função " Instantiate "
Inteligencia Artificial
Como faço pra deixar as luzes mais leves em um jogo 2d
[TUTORIAL] Unity 2019.4 ou superior - PRESETS
colocar Produtos na Playstore, procuro freelancer.
Tem como fazer o jogo forçar o hardware do celular para rodar melhor?
Como fazer efeito de digitação em um texto
[TUTORIAL] Texto suave (UI)
Box, Whell e outros Collider Esta vindo 10x maior que o Objeto
Objetos não respeitam script
[RESOLVIDO] Duvidas sobre dar restart na cena com Scene Management
Game Jam - GAME JAAJ 5 (prêmio 1.800 reais)
Hoje à(s) 11:17 am
Hoje à(s) 10:45 am
Hoje à(s) 9:54 am
Hoje à(s) 1:07 am
Ontem à(s) 11:55 pm
Ontem à(s) 11:53 pm
Ontem à(s) 11:07 pm
Ontem à(s) 9:52 pm
Ontem à(s) 5:29 pm
Ontem à(s) 4:58 pm
Ontem à(s) 3:56 pm
Ontem à(s) 3:53 pm
Ontem à(s) 9:26 am
Ter Jan 19, 2021 10:30 pm
Ter Jan 19, 2021 8:28 pm
Ter Jan 19, 2021 7:29 pm
Ter Jan 19, 2021 4:48 pm
Ter Jan 19, 2021 6:49 am
Seg Jan 18, 2021 11:39 pm
Seg Jan 18, 2021 9:31 pm
Seg Jan 18, 2021 10:47 am
Seg Jan 18, 2021 10:34 am
Dom Jan 17, 2021 10:54 pm
Dom Jan 17, 2021 6:28 pm
Dom Jan 17, 2021 2:07 pm
Dom Jan 17, 2021 12:21 pm
Dom Jan 17, 2021 11:19 am
Dom Jan 17, 2021 11:17 am
Dom Jan 17, 2021 11:15 am
Dom Jan 17, 2021 1:44 am
Sab Jan 16, 2021 6:40 pm
Sab Jan 16, 2021 3:39 pm
Sab Jan 16, 2021 11:43 am
Sab Jan 16, 2021 11:12 am
Sex Jan 15, 2021 8:20 pm
Sex Jan 15, 2021 1:39 am
Qui Jan 14, 2021 9:53 pm
Qui Jan 14, 2021 7:44 pm
Qui Jan 14, 2021 5:35 pm
Qui Jan 14, 2021 3:55 pm
Qui Jan 14, 2021 2:07 pm
Qui Jan 14, 2021 1:51 pm
Qui Jan 14, 2021 12:56 pm
Qua Jan 13, 2021 6:57 pm
Qua Jan 13, 2021 2:45 pm
Ter Jan 12, 2021 11:14 pm
Ter Jan 12, 2021 8:14 pm
Ter Jan 12, 2021 3:16 pm
Seg Jan 11, 2021 6:26 pm
Seg Jan 11, 2021 5:55 pm
Seg Jan 11, 2021 10:51 am
Dom Jan 10, 2021 7:18 pm
Dom Jan 10, 2021 6:21 pm
Dom Jan 10, 2021 3:24 pm
Dom Jan 10, 2021 2:31 pm
Dom Jan 10, 2021 2:29 pm
Dom Jan 10, 2021 10:44 am
Sab Jan 09, 2021 9:30 pm
Sex Jan 08, 2021 9:14 am
Sex Jan 08, 2021 7:07 am
Sex Jan 08, 2021 1:02 am
Sex Jan 08, 2021 12:33 am
Qui Jan 07, 2021 7:31 pm
Qui Jan 07, 2021 5:31 pm
Qui Jan 07, 2021 3:51 pm
Qui Jan 07, 2021 3:49 pm
Qui Jan 07, 2021 12:12 am
Qua Jan 06, 2021 7:40 pm
Qua Jan 06, 2021 4:57 pm
Qua Jan 06, 2021 7:36 am
Ter Jan 05, 2021 5:29 pm
Ter Jan 05, 2021 1:58 pm
Ter Jan 05, 2021 10:35 am
Ter Jan 05, 2021 5:22 am
Ter Jan 05, 2021 1:00 am
Ter Jan 05, 2021 12:02 am
Seg Jan 04, 2021 4:33 pm
Seg Jan 04, 2021 3:24 pm
Seg Jan 04, 2021 3:15 pm
Seg Jan 04, 2021 2:23 pm
Seg Jan 04, 2021 2:06 pm
Seg Jan 04, 2021 8:56 am
Dom Jan 03, 2021 8:18 pm
Dom Jan 03, 2021 9:48 am
Dom Jan 03, 2021 4:14 am
Sab Jan 02, 2021 10:11 pm
Sab Jan 02, 2021 8:36 pm
Sab Jan 02, 2021 8:34 pm
Sab Jan 02, 2021 3:36 pm
Sab Jan 02, 2021 11:45 am
Sab Jan 02, 2021 5:50 am
Sab Jan 02, 2021 2:37 am
Sex Jan 01, 2021 7:09 pm
Sex Jan 01, 2021 4:50 pm
Qui Dez 31, 2020 4:47 pm
Qui Dez 31, 2020 3:42 pm
Qui Dez 31, 2020 3:38 pm
Qui Dez 31, 2020 3:38 pm
Qui Dez 31, 2020 3:34 pm
SauloeArthur
dutrabr100
NKKF
Pokedlg
dutrabr100
dutrabr100
Pokedlg
SamoelBanner
Pokedlg
SauloeArthur
NKKF
orph
dutrabr100
acefogo
Fagner
Vans 123
Vans 123
amoraleite
Pokedlg
acefogo
dutrabr100
Pokedlg
dutrabr100
Pokedlg
savtoi
dragongirl
dutrabr100
Rangel Oblivion
dutrabr100
JoelMJunior
MarcosSchultz
Fagner
dragongirl
dutrabr100
Ren Allen
Ren Allen
LucasGamerFx
SauloeArthur
NKKF
dutrabr100
SauloeArthur
Pokedlg
SauloeArthur
dutrabr100
Alexandre Santos
Pokedlg
starfreddybou69
diegopds
Super
dutrabr100
TIKO
dutrabr100
SauloeArthur
lesgoy
Fagner
Pokedlg
dutrabr100
Pokedlg
SauloeArthur
redPRO
glauco
Op3000
Pokedlg
JulioWinchester
SauloeArthur
SauloeArthur
Leozitu
Ren Allen
speedluk
SauloeArthur
BatataBugada54321
Pokedlg
Pokedlg
Ren Allen
Fagner
123
Pokedlg
macinhadeborracha
MRX
giowde
lesgoy
TIKO
Micco
Leonardo André
lesgoy
Moskeiro
Fagner
mama2401
Fagner
BRGC
fabricadegame
NyanHeavyBR
rafaelPortugal
dutrabr100
acefogo
MarcosSchultz
MarcosSchultz
acefogo
MarcosSchultz

[TUTORIAL] Script para jogo FPS Mobile

Ir em baixo

TUTORIAL [TUTORIAL] Script para jogo FPS Mobile

Mensagem por JulioWinchester em Ter Set 08, 2020 10:22 pm

com o mouse ou o touch do celular, esse script movimenta a camera igual fps, também movimenta o personagem com W, A, S, D. para movimentar o personagem pelo celular vc usa o plugin da assetStore "SimpleInput" aí vc joga o prefab "Joystick" no canvas e ta pronto o fps mobile.

Código:
   [Header("Character Info")]
    public CharacterController characterController;
    public float movementSpeed;
    public static bool isControllingCharacter;
    float gravity = 9f;
    Vector3 velocity;

    [Header("Camera Info")]
    public Transform characterCamera;
    public float cameraSensitivity;
    public static bool isControllingCamera;
    float rotationY = 0f;

    //Touch
    float moveInputDeadZone;
    float cameraPitch;
    Vector2 lookInput;
    int leftFingerId, rightFingerId;
    float halfScreenWidth;

    void Start()
    {
        isControllingCharacter = true;
        isControllingCamera = true;

        leftFingerId = -1;
        rightFingerId = -1;

        halfScreenWidth = Screen.width / 2.2f;

        moveInputDeadZone = Mathf.Pow(Screen.height / moveInputDeadZone, 2);
    }

    void LateUpdate()
    {
        CharacterControlling();
        CameraControlling();

        GetTouchInput();

        if (rightFingerId != -1)
        {
            LookAround();
        }
    }

    void CharacterControlling()
    {
        if(isControllingCharacter == true)
        {
            float moveX = SimpleInput.GetAxis("CharacterHorizontal");
            float moveZ = SimpleInput.GetAxis("CharacterVertical");

            Vector3 move = transform.right * moveX + transform.forward * moveZ;
            characterController.Move(move * movementSpeed * Time.deltaTime);
            characterController.Move(velocity * Time.deltaTime);

            velocity.y += -gravity * Time.deltaTime;
        }
    }

    void CameraControlling()
    {
        if(isControllingCamera == true)
        {
            Cursor.lockState = CursorLockMode.Locked;

            float mouseX = Input.GetAxis("Mouse X") * cameraSensitivity * Time.deltaTime;
            float mouseY = Input.GetAxis("Mouse Y") * cameraSensitivity * Time.deltaTime;

            rotationY -= mouseY;
            rotationY = Mathf.Clamp(rotationY, -85f, 85f);

            characterCamera.localRotation = Quaternion.Euler(rotationY, 0f, 0f);
            transform.Rotate(Vector3.up * mouseX);
        }
    }

    void GetTouchInput()
    {
        for (int i = 0; i < Input.touchCount; i++)
        {

            Touch t = Input.GetTouch(i);

            switch (t.phase)
            {
                case TouchPhase.Began:

                    if (t.position.x < halfScreenWidth && leftFingerId == -1)
                    {
                        leftFingerId = t.fingerId;
                    }
                    else if (t.position.x > halfScreenWidth && rightFingerId == -1)
                    {
                        rightFingerId = t.fingerId;
                    }

                    break;
                case TouchPhase.Ended:
                case TouchPhase.Canceled:

                    if (t.fingerId == leftFingerId)
                    {
                        leftFingerId = -1;
                    }
                    else if (t.fingerId == rightFingerId)
                    {
                        rightFingerId = -1;
                    }

                    break;
                case TouchPhase.Moved:

                    if (t.fingerId == rightFingerId)
                    {
                        lookInput = t.deltaPosition * cameraSensitivity * Time.deltaTime;
                    }

                    break;
                case TouchPhase.Stationary:

                    if (t.fingerId == rightFingerId)
                    {
                        lookInput = Vector2.zero;
                    }
                    break;
            }
        }
    }

    void LookAround()
    {
        if (isControllingCamera == true)
        {
            cameraPitch = Mathf.Clamp(cameraPitch - lookInput.y, -90f, 90f);
            characterCamera.localRotation = Quaternion.Euler(cameraPitch, 0, 0);

            transform.Rotate(transform.up, lookInput.x);
        }
    }

}
JulioWinchester
JulioWinchester
MembroAvançado

Masculino PONTOS : 506
REPUTAÇÃO : 12
Idade : 16
Áreas de atuação : Modelagem 3D
Respeito as regras : [TUTORIAL] Script para jogo FPS Mobile WvDYdlf

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Script para jogo FPS Mobile

Mensagem por JulioWinchester em Ter Set 08, 2020 10:47 pm

@JulioWinchester escreveu:com o mouse ou o touch do celular, esse script movimenta a camera igual fps, também movimenta o personagem com W, A, S, D. para movimentar o personagem pelo celular vc usa o plugin da assetStore "SimpleInput" aí vc joga o prefab "Joystick" no canvas e ta pronto o fps mobile.

Código:
    [Header("Character Info")]
    public CharacterController characterController;
    public float movementSpeed;
    public static bool isControllingCharacter;
    float gravity = 9f;
    Vector3 velocity;

    [Header("Camera Info")]
    public Transform characterCamera;
    public float cameraSensitivity;
    public static bool isControllingCamera;
    float rotationY = 0f;

    //Touch
    float moveInputDeadZone;
    float cameraPitch;
    Vector2 lookInput;
    int leftFingerId, rightFingerId;
    float halfScreenWidth;

    void Start()
    {
        isControllingCharacter = true;
        isControllingCamera = true;

        leftFingerId = -1;
        rightFingerId = -1;

        halfScreenWidth = Screen.width / 2.2f;

        moveInputDeadZone = Mathf.Pow(Screen.height / moveInputDeadZone, 2);
    }

    void LateUpdate()
    {
        CharacterControlling();
        CameraControlling();

        GetTouchInput();

        if (rightFingerId != -1)
        {
            LookAround();
        }
    }

    void CharacterControlling()
    {
        if(isControllingCharacter == true)
        {
            float moveX = SimpleInput.GetAxis("CharacterHorizontal");
            float moveZ = SimpleInput.GetAxis("CharacterVertical");

            Vector3 move = transform.right * moveX + transform.forward * moveZ;
            characterController.Move(move * movementSpeed * Time.deltaTime);
            characterController.Move(velocity * Time.deltaTime);

            velocity.y += -gravity * Time.deltaTime;
        }
    }

    void CameraControlling()
    {
        if(isControllingCamera == true)
        {
            Cursor.lockState = CursorLockMode.Locked;

            float mouseX = Input.GetAxis("Mouse X") * cameraSensitivity * Time.deltaTime;
            float mouseY = Input.GetAxis("Mouse Y") * cameraSensitivity * Time.deltaTime;

            rotationY -= mouseY;
            rotationY = Mathf.Clamp(rotationY, -85f, 85f);

            characterCamera.localRotation = Quaternion.Euler(rotationY, 0f, 0f);
            transform.Rotate(Vector3.up * mouseX);
        }
    }

    void GetTouchInput()
    {
        for (int i = 0; i < Input.touchCount; i++)
        {

            Touch t = Input.GetTouch(i);

            switch (t.phase)
            {
                case TouchPhase.Began:

                    if (t.position.x < halfScreenWidth && leftFingerId == -1)
                    {
                        leftFingerId = t.fingerId;
                    }
                    else if (t.position.x > halfScreenWidth && rightFingerId == -1)
                    {
                        rightFingerId = t.fingerId;
                    }

                    break;
                case TouchPhase.Ended:
                case TouchPhase.Canceled:

                    if (t.fingerId == leftFingerId)
                    {
                        leftFingerId = -1;
                    }
                    else if (t.fingerId == rightFingerId)
                    {
                        rightFingerId = -1;
                    }

                    break;
                case TouchPhase.Moved:

                    if (t.fingerId == rightFingerId)
                    {
                        lookInput = t.deltaPosition * cameraSensitivity * Time.deltaTime;
                    }

                    break;
                case TouchPhase.Stationary:

                    if (t.fingerId == rightFingerId)
                    {
                        lookInput = Vector2.zero;
                    }
                    break;
            }
        }
    }

    void LookAround()
    {
        if (isControllingCamera == true)
        {
            cameraPitch = Mathf.Clamp(cameraPitch - lookInput.y, -90f, 90f);
            characterCamera.localRotation = Quaternion.Euler(cameraPitch, 0, 0);

            transform.Rotate(transform.up, lookInput.x);
        }
    }

}

quando for compilar pra mobile tem q dar // no CameraControlling(); no late update
JulioWinchester
JulioWinchester
MembroAvançado

Masculino PONTOS : 506
REPUTAÇÃO : 12
Idade : 16
Áreas de atuação : Modelagem 3D
Respeito as regras : [TUTORIAL] Script para jogo FPS Mobile WvDYdlf

Voltar ao Topo Ir em baixo

Voltar ao Topo


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