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:
Mapa de um jogo
[TUTORIAL] Mover e rotacionar objeto em relação a posição do MOUSE
[Projeto] Line Battle
Identificar Limite de Tela
Valor Multiplica Quando Troca Cena
Sistema de um game de Vôlei de praia
Como Usar a Mesma Animação Pra Personagens Diferentes na Unity ?
Gradiente de cores
Missil perseguidor
[TUTORIAL] Photon Networking Part.2 (Conectando ao servidor)
[DUVIDA]Pergunta Aleatória
[Duvida] Controle de Terceira pessoa por JoyStick
[TUTORIAL] Loja Virtual Fácil e Grátis
Imagem Aparecer como pergunta
Dúvidas sobre aparecer imagem na tela
Mudar a visiabilidade do inputField
[Duvida] Erro em "Public Float". "Not all code paths return a value"
Procuro Equipe Para Criação de Um Jogo
(DÚVIDA) USAR O UNITY PRO SENDO QUE CRACKEADO DA BRONCA?
JOGO QUIS - Como fazer as perguntas serem aleatórias?
Botão UI - Toggle (Botão Mutar) - Como deixar ele em todas as cenas?
Como criar um sistema de Ranking simples.
Erro com textura, cor e skybox
Loja e inventario em jogo fps multiplayer.
TILEMAP NÃO FUNCIONA QUANDO ARRASTO AS SPRITES PARA TILEPALETTE
[Devlog] ZByte Defender:The Game 10/04 (Alpha Aberta) + Download
Como Fazer quiz com pergunta Aletórias no Unity-5
Fixar o objeto no chão !
Exportar animações
[TUTORIAL] Unity + PHP + Mysql (com PDO)
base para multiplayer , qual melhor método, e restrições
Scena Demorando muito Para Carregar!
[ NONAME ] Procura de pessoas interessadas
Apertar mais de um botão no UNITY
Zerar os tempos do Cronometro Unity
PHP retorno?
The Lost Blade (Em Desenvolvimento)
Spawn varios objetos
[TUTORIAL] Sistema de vida,morte,dano
Erro UNITY 5 NOTA PARA JOGO DE TERROR
Botão no Touch || saltar e tiro
SOM Duplicado unity3d
Reproduzir audio no if c## e musica continuar tocando entre cenas.
Bug com detecção de chão
Girar personagem no próprio eixo usando joystick virtual
Asset de Efeito de congelamento
Tirar seleção de Objeto na Cena
Command 888
Care Box - Disponível na Play Store
[TUTORIAL] Script de arma automatica
[____ADMINISTRAÇÃO____] Alterações IMPORTANTES no fórum.
Site de assets
" FUEL " O maior jogo do Mundo
[TUTORIAL] Compilar para Android
[TUTORIAL] Unity 5 - Wheel Collider, veículos, suspensão realista.
Deformação de Objetos
Itens de diferentes tamanho no inventario
[TUTORIAL] Sistema COMPLETO de câmeras
Efeito arma giratória
[TUTORIAL] Criando Plants VS Zombies (remake - Parte 1)
Como aumentar os dados de Black In do color grading do post processing via script?
[DUVIDA] Fps multiplayer
[Asset] Script Arma Completo Incluso Recuo. Incluso outros Scripts
[TUTORIAL] Controle 3ª pessoa com animações mecânicas (root motion)
Novo jogo - Astero - PlayStore
IA de Patrulha do inimigo !
Modeladores e programadores por favor.
Dúvida com jogo estilo Clash Royale
Survalways :: procuro interessados : programador/áudio
Personagem morrer ao cair da tela
Problema na configuração do Wheel Colider (para um jogo mobile)
Celular Virtual
[TUTORIAL] SISTEMA DE CHUVA COM PARTICULAS.
Sobre Coolers ( Fans )
[TUTORIAL] Criar Analógico Virtual UI Para Mobile.
Loading cronometrado
[TUTORIAL] Unity 5 - Como criar o próprio FPS Controller
The Walker [Open - Beta 0.02v]
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
unity não quer ativar a lincense
Script SceneManager.GetActiveScene
[DÚVIDA] Como publicar um jogo na Windows Store/Loja do Windows 10?
Sistema de Compra incompleto!
Como por sistema de score em projeto Match 3 tipo Candy Crush?
Como parar um Cronometro?
Salvar dados
como fazer o corpo se mover junto com a roupa do personagem ?
sistema de dia e noite de acordo com a hora do computador.
A Unity detecta o click mouse como um touch?
Beta_Jogo (Lost and Alone)Por favor Avaliem!
Projeto em andamento! (Graficos quase realistas)
Raycast em objeto dentro de collider?
Build setting não entra
[Jogo Mobile] Alien - Lost in the space
Ajuda com cores.
[TUTORIAL] 42 ÓTIMAS DICAS DE OTIMIZAÇÃO PARA JOGOS MOBILE (Android)
[RESOLVIDO] Player Prefs perdendo dados?
[TUTORIAL] Deformar mesh com batidas (para objetos, veículos, etc)
Como fazer um corredor se fechando na unity
Hoje à(s) 12:30 am
Hoje à(s) 12:23 am
Hoje à(s) 12:23 am
Ontem à(s) 11:33 pm
Ontem à(s) 10:50 pm
Ontem à(s) 10:08 pm
Ontem à(s) 9:38 pm
Ontem à(s) 8:53 pm
Ontem à(s) 8:51 pm
Ontem à(s) 8:50 pm
Ontem à(s) 8:22 pm
Ontem à(s) 4:55 pm
Ontem à(s) 4:29 pm
Ontem à(s) 4:28 pm
Ontem à(s) 3:50 pm
Ontem à(s) 3:03 pm
Ontem à(s) 2:55 pm
Ontem à(s) 12:52 pm
Ontem à(s) 12:33 pm
Ontem à(s) 11:08 am
Ontem à(s) 10:59 am
Ter Maio 22, 2018 11:27 pm
Ter Maio 22, 2018 8:13 pm
Ter Maio 22, 2018 7:27 pm
Ter Maio 22, 2018 5:48 pm
Ter Maio 22, 2018 5:18 pm
Ter Maio 22, 2018 5:09 pm
Ter Maio 22, 2018 4:36 pm
Ter Maio 22, 2018 8:44 am
Ter Maio 22, 2018 5:56 am
Seg Maio 21, 2018 9:44 pm
Seg Maio 21, 2018 8:01 pm
Seg Maio 21, 2018 7:00 pm
Seg Maio 21, 2018 3:42 pm
Seg Maio 21, 2018 3:32 pm
Seg Maio 21, 2018 2:13 am
Dom Maio 20, 2018 8:41 pm
Dom Maio 20, 2018 8:38 pm
Dom Maio 20, 2018 7:32 pm
Dom Maio 20, 2018 6:34 pm
Dom Maio 20, 2018 6:33 pm
Dom Maio 20, 2018 3:13 pm
Dom Maio 20, 2018 2:11 pm
Dom Maio 20, 2018 1:40 pm
Dom Maio 20, 2018 1:00 pm
Dom Maio 20, 2018 12:25 pm
Dom Maio 20, 2018 12:07 pm
Dom Maio 20, 2018 9:38 am
Dom Maio 20, 2018 8:06 am
Sab Maio 19, 2018 8:06 pm
Sab Maio 19, 2018 5:40 pm
Sab Maio 19, 2018 1:34 pm
Sab Maio 19, 2018 1:06 pm
Sab Maio 19, 2018 12:13 pm
Sab Maio 19, 2018 11:10 am
Sab Maio 19, 2018 9:51 am
Sab Maio 19, 2018 6:11 am
Sab Maio 19, 2018 12:14 am
Sex Maio 18, 2018 10:49 pm
Sex Maio 18, 2018 7:12 pm
Sex Maio 18, 2018 4:55 pm
Sex Maio 18, 2018 11:06 am
Sex Maio 18, 2018 10:39 am
Sex Maio 18, 2018 10:12 am
Sex Maio 18, 2018 8:09 am
Qui Maio 17, 2018 9:51 pm
Qui Maio 17, 2018 5:53 pm
Qui Maio 17, 2018 5:49 pm
Qui Maio 17, 2018 4:49 pm
Qui Maio 17, 2018 3:55 pm
Qui Maio 17, 2018 1:19 am
Qui Maio 17, 2018 12:12 am
Qua Maio 16, 2018 6:59 pm
Qua Maio 16, 2018 11:59 am
Qua Maio 16, 2018 2:27 am
Ter Maio 15, 2018 11:41 pm
Ter Maio 15, 2018 11:36 pm
Ter Maio 15, 2018 8:38 pm
Ter Maio 15, 2018 8:23 pm
Ter Maio 15, 2018 3:37 pm
Ter Maio 15, 2018 2:43 pm
Ter Maio 15, 2018 1:57 pm
Ter Maio 15, 2018 10:04 am
Ter Maio 15, 2018 7:48 am
Ter Maio 15, 2018 1:30 am
Seg Maio 14, 2018 11:05 pm
Seg Maio 14, 2018 8:11 pm
Seg Maio 14, 2018 6:06 pm
Seg Maio 14, 2018 4:59 pm
Seg Maio 14, 2018 4:33 pm
Seg Maio 14, 2018 4:20 pm
Seg Maio 14, 2018 3:41 pm
Seg Maio 14, 2018 2:16 pm
Seg Maio 14, 2018 1:23 pm
Seg Maio 14, 2018 12:55 pm
Seg Maio 14, 2018 11:38 am
Seg Maio 14, 2018 9:42 am
Seg Maio 14, 2018 12:45 am
Dom Maio 13, 2018 9:14 pm
ruanzikaad
tony
ruanzikaad
azool
felipehobs1
isah
TioUV
Flávio
Flávio
Phph09
Rayllander
DuViDoSo
Yan
Pedro Marquesini
negoll
Phph09
felipehobs1
zeca urubu
fabriciorsz34
Rayllander
Rayllander
luansantos
Souris
MRX
RenatoMoran
Mateus2583
Rayllander
Netão
Phph09
Callyde Jr
Phph09
fabriciorsz34
ruanzikaad
Souris
Felix
Callyde Jr
ismarspn
Lteo
Callyde Jr
Rafa123
Douglas Costa Amorim
Rayllander
Rayllander
Joaopm1
Jmspp
Dom3000
Dom3000
Callyde Jr
Another Developer
Merotec32
Matrirxp
SuperGamer
Callyde Jr
Souris
francisco barroso
Lteo
Callyde Jr
MarcosSchultz
Flávio
MayLeone
YmKx
Daniel Dória
dimmuo
dstaroski
Édipo
dkrazor
ErikBreno360
RGKC
M4theuz
mafipt
zKilleD
Zack2
Callyde Jr
julioou
mateusvasco100
WesFarias
MarcosSchultz
Souris
Souris
thiagograssi
vitorhugo
gcs13
MarcosUAC
dracuno
niao
arnaldojunior
Dom3000
Johann santos
otavio00augusto
Zecandy
julioou
isah
Daniel Dória
leocc
euvictoralmeida
RamonPS
YmKx
MarcosSchultz
isah

Efeito arma giratória

Ir em baixo

DÚVIDA Efeito arma giratória

Mensagem por Flávio em Qua Abr 18, 2018 2:34 am

bom dia, pretendo fazer uma arma giratoria, ela vai começar a girar sempre a partir de 0 graus no eixo Z.
então ela vai começar a girar ou para cima ou para baixo inicialmente.

toda vez que a arma chegar em 60 graus no eixo z, ela passa a girar no sentido contrario, e vai girando até chegar em -60 graus no eixo z. 
Chegou em -60 em z, passa a girar no outro sentido até 60 graus em z, atingiu 60 em z inverte o ghiro e assim vai fazendo essa troca no sentido do giro.

como que eu faço isso via script?

até agora o que consegui fazer:



eu fiz a mudança do sentido do giro por tempo, mas eu queria fazer por detecção do rotation em z, ou seja, quando detectar 60 graus positivos muda o sentido, e quando detectar 60 graus negativos muda de novo. reparem que o canhao começa em 0 graus e gira só até uns -60 graus e volta até 0.
queria iniciar o sentido de giro aleatorio, ou seja, algo que selecione de forma aleatoria entre começar a girar para cima, no sentido positivo até 60 graus, ou girar para baixo no sentido negativo até -60 graus.
seja para qual lado começar, aí vai detectar: se rotation z chegar até +60 vai girar para baixo; se chegar até -60, vai giarar para cima.

o script de giro da arma
Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CanhaoScript : MonoBehaviour {

    public float duracao;
    public float tempo;
    public bool positivo;
    public float velRotacao;

    void Start () {
        positivo = false;
    }

    void Update () {
        tempo += Time.deltaTime;

        if (tempo >= duracao) {
            tempo = 0f;
            positivo = !positivo;
        }

        if (positivo) {
            transform.Rotate(0, 0, velRotacao * Time.deltaTime);
        }

        if (!positivo) {
            transform.Rotate(0, 0, -velRotacao * Time.deltaTime);
        }
    }
}

o que posso alterar no script?
avatar
Flávio
Avançado
Avançado

Masculino PONTOS : 285
REPUTAÇÃO : 8
Áreas de atuação : Aprendizagem em programação;
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Efeito arma giratória

Mensagem por Fluttershy28 em Qua Abr 18, 2018 3:31 am

Porque você não faz uma animação no blender ou qualquer outro programa? você pouparia 5* o tempo
avatar
Fluttershy28
Avançado
Avançado

Masculino PONTOS : 350
REPUTAÇÃO : 45
Idade : 21
Áreas de atuação : Modelagem,Animação,Texturização,Design
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Efeito arma giratória

Mensagem por isah em Qua Abr 18, 2018 4:58 pm

Como é uma animação simples, pode ser feito dentro da própria unity mesmo... com o Animator
avatar
isah
Membro
Membro

Feminino PONTOS : 89
REPUTAÇÃO : 26
Idade : 18
Áreas de atuação : Character & Environment designer/modeller
Respeito as regras :

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

Voltar ao Topo Ir em baixo

DÚVIDA Re: Efeito arma giratória

Mensagem por Souris em Qua Abr 18, 2018 5:07 pm

Não entendi, sua solução é muito simples: verificar o eixo Z, como você mesmo disse, através de transform.rotation.z :I
avatar
Souris
ProgramadorMaster

Masculino PONTOS : 1306
REPUTAÇÃO : 271
Idade : 13
Áreas de atuação : UNET ~ HLAPI,
Dev. Mobile,
HTML5 & PHP,
Photon Cloud,
Unity 2D.
Respeito as regras :

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

Voltar ao Topo Ir em baixo

DÚVIDA Re: Efeito arma giratória

Mensagem por Flávio em Qui Abr 19, 2018 12:45 am

@Souris escreveu:Não entendi, sua solução é muito simples: verificar o eixo Z, como você mesmo disse, através de transform.rotation.z :I

Souris eu até fiz uma verificação do rotation z dessa forma:

Código:
var rotZ = transform.rotation.z;
        if (rotZ > 60f) {
            return;
        }

        if (rotZ < 60f) {
            transform.Rotate(0, 0, velRotacao * Time.deltaTime);
        }

mas nao está funcionando. 
tem que ter um jeito de verificar a rotação em Z, mas o canhao continua rodando mesmo chegando em 60
avatar
Flávio
Avançado
Avançado

Masculino PONTOS : 285
REPUTAÇÃO : 8
Áreas de atuação : Aprendizagem em programação;
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Efeito arma giratória

Mensagem por Fluttershy28 em Qui Abr 19, 2018 2:05 am

Tenta isso
Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Rodar : MonoBehaviour {
   bool rodar;
   public float velocidadeDoGiro = 100f;
   Vector3 rotacao;


   void Start(){
      rodar = true;
      transform.localEulerAngles = new Vector3 (0, 0, 0);
      rotacao = transform.localEulerAngles;
   }

   void Update () {
      if (rodar == true) {
         while (rotacao.z < 60) {
            rotacao.z += Time.deltaTime * velocidadeDoGiro;
            transform.localEulerAngles = rotacao;
            if (rotacao.z >= 60) {
               rotacao = new Vector3 (0, 0, 60);
               rodar = false;
            }
            return;
         }
      }else{
         while (rotacao.z > -60) {
            rotacao.z -= Time.deltaTime * velocidadeDoGiro;
            transform.localEulerAngles = rotacao;
            if (rotacao.z <= -60) {
               rotacao = new Vector3 (0, 0, -60);
               rodar = true;
            }
            return;
         }
      }
   }
}
Surprised
avatar
Fluttershy28
Avançado
Avançado

Masculino PONTOS : 350
REPUTAÇÃO : 45
Idade : 21
Áreas de atuação : Modelagem,Animação,Texturização,Design
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Efeito arma giratória

Mensagem por Phph09 em Qui Abr 19, 2018 6:54 am

avatar
Phph09
ProgramadorMaster

Masculino PONTOS : 1335
REPUTAÇÃO : 197
Idade : 12
Áreas de atuação :

Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

DÚVIDA Re: Efeito arma giratória

Mensagem por Before Dawn em Sab Abr 21, 2018 1:32 am

Eu faria por animação também, por ser tão simples. Outra opção fácil seria fazer o canhão ficar mirando pra um objeto com lookAt, e voce só movimentar esse objeto pra cima e pra baixo.
avatar
Before Dawn
Iniciante
Iniciante

PONTOS : 167
REPUTAÇÃO : 6
Áreas de atuação : Modelagem, esculturas, animação, texturização. 2D e 3D ;d
Respeito as regras :

Ver perfil do usuário http://wakeupbeforedawn.tumblr.com/

Voltar ao Topo Ir em baixo

DÚVIDA Re: Efeito arma giratória

Mensagem por Flávio em Sex Maio 18, 2018 10:49 pm

Desculpem a demora, mais uma vez me afastei porque estava internado no hospital desde 24 de abril.
consegui resolver isso dessa forma:

Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CanhaoScript : MonoBehaviour {

    public bool positivo;
    public float velRotacao;
    public float z;
    public int numero;
    public bool vaiEVolta;
    public bool posInicial;

    private Transform pontoBala;
    private Transform myTr;

    void Awake() {
        pontoBala = transform.Find("fire");
    }

    void Start () {
        myTr = GetComponent<Transform>();
        numero = Random.Range(1, 3);
        positivo = false;
        vaiEVolta = false;
        posInicial = true;
    }

    IEnumerator VoltarRotacaoZero() {
        yield return new WaitForSeconds(8.0f);
        posInicial = true;
        vaiEVolta = false;
        CancelInvoke("AtiraBala");
       
    }

    void AtiraBala() {
        var prefBala = Resources.Load("Prefabs/Bala");
        Instantiate(prefBala, pontoBala.position, transform.rotation);
    }

    void Update () {
        // Gira o canhao para cima ou para baixo conforme o valor aleatório de numero.
        if (!posInicial) {
            if (!vaiEVolta && numero == 2) {
                z = Mathf.MoveTowards(z, -68.71f, Time.deltaTime * velRotacao);
                transform.eulerAngles = new Vector3(0, 0, z);
            }

            if (!vaiEVolta && numero == 1) {
                z = Mathf.MoveTowards(z, 68.71f, Time.deltaTime * velRotacao);
                transform.eulerAngles = new Vector3(0, 0, z);
            }

            if (!vaiEVolta) {
                if (z >= 68.71f || z <= -68.71f) {
                    vaiEVolta = true;
                    numero = 0;
                }
            }

            // Gira vai e volta entre 60 e -60 graus no eixo Z.
            if (vaiEVolta) {
                if (z >= 68.71f) {
                    positivo = false;
                }

                if (z <= -68.71f) {
                    positivo = true;
                }

                if (positivo) {
                    z = Mathf.MoveTowards(z, 68.71f, Time.deltaTime * velRotacao);
                    transform.eulerAngles = new Vector3(0, 0, z);
                }

                if (!positivo) {
                    z = Mathf.MoveTowards(z, -68.71f, Time.deltaTime * velRotacao);
                    transform.eulerAngles = new Vector3(0, 0, z);
                }
            }
        }
        else {
            z = Mathf.MoveTowards(z, 0, Time.deltaTime * 20f);
            transform.eulerAngles = new Vector3(0, 0, z);
        }
    }

    public void AtivarGiro() {
        numero = Random.Range(1, 3);
        posInicial = false;
        InvokeRepeating("AtiraBala", 0.0f, 0.15f);
        StartCoroutine("VoltarRotacaoZero");
    }
}

velRotacao e deixei em 80.
aproveitei e coloquei um efeito de tiros.
em um outro script no mesmo objeto vai ter um gatilho que dispara o giro e as balas, o gatilho é quando aperto a tecla space:

Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CanhaoControle : MonoBehaviour {

    private CanhaoScript scrCanhao;

   void Start () {
        scrCanhao = GetComponent<CanhaoScript>();
    }
   
   void Update () {
        if (Input.GetKeyDown(KeyCode.Space)) {
            scrCanhao.AtivarGiro();
        }
    }
}

ficou como eu queria 
Fluttershy28 seu script tambem funcionou, agora tenho que acrescentar algumas coisas nele para ficar exatamente o efeito que consegui com o meu.
valeu a contribuição de todos!!
avatar
Flávio
Avançado
Avançado

Masculino PONTOS : 285
REPUTAÇÃO : 8
Áreas de atuação : Aprendizagem em programação;
Respeito as regras :

Ver perfil do usuário

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