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:
[DÚVIDA] Script teleporte, como esperar determinados segundos para teleportar
(DÚVIDA) como eu posso fazer para a Câmera ativar um objeto ao ver?
Como Eu fasso um Um sistema de dia e noite
Duvidas sobre jogos 2d
Trocar controles de keyboard para gui
Desativar arma quando pegar outra
Efeito arma giratória
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
[TUTORIAL] Sistema de tiro com RAYCAST (várias armas, mira laser, munição, dano, etc, etc)
IsLocalPlayer não existe, o que substitui ele?
Script de Chute Futebol
Polygon Collider anexado a sprite com areas transparentes
Seleçao de personagens no Photon.
Botão para acionar velocidade e botão para retornar a posição inicial
como fazer sistema de seleção de personagem para moba no photon?
Sombras na "tampa" de buracos no blender
[____APOIE O FÓRUM E O CANAL E GANHE RECOMPENSAS____]
[____ADMINISTRAÇÃO____] PRECISO DE AJUDA [DICA PARA SER AJUDADO]
Gradiente de cores
Personagem olhar para frente ao andar.
[TUTORIAL] Criando um simples Multiplayer [UNITY 5]
[Dúvida] Multiplayer Client Object Spawn
Tangram ou Quebra Cabeça
[RESOLVIDO] Problema Com o transform.LookAt!
Jogo com Battle Royale já em desenvolvimento
[TUTORIAL] Unity 5 - Skid Marks (marcas de derrapagem)
Inimigo jogar o jogador de volta.
Como fazer um gráfico em forma de pizza na unity?
Texturização no Blender
Tudo fica bugado ao mudar o projeto de PC para Android
erro de dll's
Como alterar todos os materiais de um mesh renderer?
Destruir Polygon Collider 2D e Readiciona-lo, porém não há uma precisão no colisor gerado!
[TUTORIAL] Mudando material
[RESOLVIDO] Remover child
[RESOLVIDO] Como compilar pra android ?
Inimigo seguir o jogador sem usar o NavMesh
Resolução
(DUVIDA) Pq os Graficos Não Diminuem Corretamente?
[RESOLVIDO] Script não ativa bool do animator
[FORMAÇÃO DE EQUIPE]Equipe para jogo De Carros
Como evitar que o QualitySettings afete a qualidade da textura de um texto do canvas?
[TUTORIAL] Deixar o Texto (UI) mais bonito - HD
Código não compila
Há alguma forma de Fazer o apk Funcionar somente se for baixado pela Play Store ?
[Alpha Android] - Winthia Chronicles (Alpha Devlog, 21 de março de 2018). V 1.6
Configurar MS vehicle system free para UFPS
CRIAR MENSAGEM NA TELA PARA PERSOAGEM
[RESOLVIDO] Dúvida sobre animação do personagem
Duvida sobre Cenas
[RESOLVIDO] Duvida sobre versao da unity e sobre o lerp
[RESOLVIDO] problemas ao animar o game object
[DÚVIDA] Sair som e acender luz de um BOTÃO UI ao pressionar uma tecla
Dificuldade em criação de mapa simples no Unity
Procuro Modelador 3D, To criando uma equipe.vamos?
[TUTORIAL] Inteligência Artificial
[Devlog] ZByte Defender 10/04 (Alpha Aberta) + Download
[____ADMINISTRAÇÃO____] Alterações IMPORTANTES no fórum.
[TUTORIAL] Decrescer o valor do Emission Particlesystem
Limitar quantidades de vezes chamadas na void Update
[TUTORIAL] Sistema de inventário Sobrevivência
Sistema de Particulas não inicia com o jogo
[TUTORIAL] Serialização - JSON
Como posso resolver um bug reporter que não me deixa abrir o projeto?
[TUTORIAL]Sistema de Pet Virtual [Tamagotchi] Completo (ANDROID/PC)
Como arrumar efeitos do UFPS?
Servidor de discord para desenvolvedores.
Setar objeto filho de outro objeto via scrit
[RESOLVIDO] NavMesh nao funciona direito com terrain ?
[PEDIDO]Criar uma vestimenta para esse modelo que fiz no blender (Com-rig)
Duvida sobre blender para unity
Script para Sistema de Entregas e no final ganhar dinheiro
Problema com contator
Formação de equipe
Criar jogo estilo clash of clans
Form API POST WebService unity
Por que a engine Unity 3D ficou pesado(FPS pior) depois da versão 5?
[TUTORIAL] Screenshoot do jogo no editor (em resoluções mais altas)
[DÚVIDA] Fazer pontuação quando objeto passar por um collider
Como marcar um limite do direcional light em cada parte da cidade?
[Duvida] Multiplayer Moviment Client [Bug?!]
desenvolvimento do meu projeto, fase final
Movimentação 2D em personagem 3D
Ajuda com Substance Designer
Duvida usar posicao do mouse para mudar direcao de Ray
Ajuda Brush de Árvore Terreno
Command 888
Preciso de programador
Sistema de probabilidade de Spawn para Waves
Ajuda com o recuo da arma Jogo de Fps no unity
FPS Asset package completo
Duvida sobre como instanciar 3 objetos de uma vez mas com um tempo entre cada instancia
Shadow of the colossus materiais e models
Duvida Nav Mesh
Dificuldade na Criação de fase bônus
Bomb Battle Jogo Online Em Desenvolvimento
Arquivos NUGET
Controle de Som Quiz
CANVAS BUGADO
Hoje à(s) 7:42 pm
Hoje à(s) 5:32 pm
Hoje à(s) 12:38 pm
Hoje à(s) 12:22 pm
Hoje à(s) 12:12 pm
Hoje à(s) 8:36 am
Hoje à(s) 1:32 am
Hoje à(s) 12:00 am
Ontem à(s) 7:05 pm
Ontem à(s) 6:21 pm
Ontem à(s) 3:12 pm
Ontem à(s) 3:07 pm
Ontem à(s) 12:58 pm
Ontem à(s) 6:39 am
Ontem à(s) 6:24 am
Ontem à(s) 1:05 am
Qui Abr 19, 2018 10:35 am
Qui Abr 19, 2018 10:34 am
Qui Abr 19, 2018 10:33 am
Qui Abr 19, 2018 9:33 am
Qui Abr 19, 2018 6:45 am
Qui Abr 19, 2018 6:02 am
Qua Abr 18, 2018 10:30 pm
Qua Abr 18, 2018 9:13 pm
Qua Abr 18, 2018 8:57 pm
Qua Abr 18, 2018 6:33 pm
Qua Abr 18, 2018 6:18 pm
Qua Abr 18, 2018 5:48 pm
Qua Abr 18, 2018 3:28 pm
Qua Abr 18, 2018 2:59 pm
Qua Abr 18, 2018 1:41 pm
Ter Abr 17, 2018 9:55 pm
Ter Abr 17, 2018 8:05 pm
Ter Abr 17, 2018 8:01 pm
Ter Abr 17, 2018 8:00 pm
Ter Abr 17, 2018 7:53 pm
Ter Abr 17, 2018 3:35 pm
Ter Abr 17, 2018 2:22 pm
Ter Abr 17, 2018 1:07 pm
Seg Abr 16, 2018 10:28 pm
Seg Abr 16, 2018 9:03 pm
Seg Abr 16, 2018 6:36 pm
Seg Abr 16, 2018 6:33 pm
Seg Abr 16, 2018 6:31 pm
Seg Abr 16, 2018 1:19 pm
Seg Abr 16, 2018 12:40 pm
Seg Abr 16, 2018 12:09 pm
Seg Abr 16, 2018 10:01 am
Seg Abr 16, 2018 1:07 am
Dom Abr 15, 2018 8:28 am
Dom Abr 15, 2018 12:06 am
Sab Abr 14, 2018 4:29 pm
Sab Abr 14, 2018 2:52 pm
Sab Abr 14, 2018 1:23 pm
Sab Abr 14, 2018 11:23 am
Sab Abr 14, 2018 11:10 am
Sab Abr 14, 2018 9:56 am
Sex Abr 13, 2018 10:20 pm
Sex Abr 13, 2018 10:01 pm
Sex Abr 13, 2018 8:12 pm
Sex Abr 13, 2018 7:22 pm
Sex Abr 13, 2018 4:50 pm
Sex Abr 13, 2018 3:12 pm
Sex Abr 13, 2018 1:30 pm
Sex Abr 13, 2018 12:59 pm
Sex Abr 13, 2018 12:20 pm
Sex Abr 13, 2018 12:16 pm
Sex Abr 13, 2018 12:02 pm
Qui Abr 12, 2018 10:14 pm
Qui Abr 12, 2018 7:01 pm
Qui Abr 12, 2018 12:09 pm
Qua Abr 11, 2018 9:02 pm
Qua Abr 11, 2018 4:26 pm
Qua Abr 11, 2018 2:00 pm
Ter Abr 10, 2018 11:33 pm
Ter Abr 10, 2018 8:26 pm
Ter Abr 10, 2018 5:57 pm
Ter Abr 10, 2018 2:30 pm
Seg Abr 09, 2018 9:12 pm
Seg Abr 09, 2018 8:37 pm
Seg Abr 09, 2018 5:36 pm
Dom Abr 08, 2018 5:38 pm
Dom Abr 08, 2018 4:53 pm
Dom Abr 08, 2018 3:51 am
Sab Abr 07, 2018 11:00 pm
Sab Abr 07, 2018 8:39 pm
Sab Abr 07, 2018 7:28 pm
Sab Abr 07, 2018 5:27 pm
Sab Abr 07, 2018 12:05 am
Sex Abr 06, 2018 8:07 pm
Sex Abr 06, 2018 6:27 pm
Sex Abr 06, 2018 4:42 pm
Sex Abr 06, 2018 4:30 pm
Sex Abr 06, 2018 2:43 pm
Sex Abr 06, 2018 12:45 pm
Qui Abr 05, 2018 5:22 pm
Qui Abr 05, 2018 4:49 pm
Qui Abr 05, 2018 4:30 pm
Qui Abr 05, 2018 1:51 pm
Souris
glauco
dstaroski
Zack2
otavio00augusto
dstaroski
Before Dawn
MarcosSchultz
DreamKiller
YmKx
dstaroski
dstaroski
Callyde Jr
Phph09
Phph09
felipehobs1
dstaroski
dstaroski
dstaroski
Daniel Pires da Silva
Phph09
Callyde Jr
luizmauro123
MarcosUAC
MarcosUAC
guimaraf
rafaelllsd
oilson
Yagogomes
Fluttershy28
hetrodo_gamer
Dom3000
MarcosSchultz
Dom3000
AmaralGabriel2
TioUV
dstaroski
Zack2
glauco
Daniel Pires da Silva
fabriciorsz34
Daniel Pires da Silva
Souris
Souris
fabriciorsz34
Cássio Ambelouer
Phph09
felipehobs1
Callyde Jr
Phph09
Ronmaster
nando07
Souris
Callyde Jr
Dom3000
Dom3000
Mateus2583
MarcosSchultz
ffabim
Daniel Pires da Silva
Fluttershy28
YmKx
natanael.olimpio
Souris
dstaroski
Phph09
BRGC
Phph09
Callyde Jr
BRGC
Zack2
heliab125
ruanzikaad
Souris
gcs13
natanael.olimpio
Daniel Pires da Silva
dstaroski
srhuculak
MarcosSchultz
Callyde Jr
Patrick
Souris
PedroSilva
Souris
YmKx
Callyde Jr
Phph09
Callyde Jr
rafaelllsd
gcs13
360flip
brunopereira06
YmKx
360flip
Phph09
natanael.olimpio
antoniodeveloper
rZwr

[TUTORIAL] Camera orbital com zoom (scroll)

Ir em baixo

TUTORIAL [TUTORIAL] Camera orbital com zoom (scroll)

Mensagem por MarcosSchultz em Sab Jul 09, 2016 1:15 pm

Fala galera, elaborei este sistema simples para uma câmera orbital... basta criar um script em C# chamado "CameraOrbital" e usar este código nele:

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

[Serializable]
public class ConfigsDaCameraOrbital {
 [Range(0.01f,2.0f)] public float sensibilidade = 0.8f, velocidadeScrool = 1.0f, velocidadeY = 0.5f;
 [Range(3.0f,20.0f)] public float distanciaMinima = 5.0f;
 [Range(20.0f,200.0f)] public float distanciaMaxima = 50.0f;
}

public class CameraOrbital : MonoBehaviour {

 float xOrbit, yOrbit, distanciaCameraOrbit;
 public GameObject ObjetoCamera;
 public ConfigsDaCameraOrbital Configuracoes;

 void Start () {
 distanciaCameraOrbit = Configuracoes.distanciaMinima;
 xOrbit = ObjetoCamera.transform.eulerAngles.x;
 yOrbit = ObjetoCamera.transform.eulerAngles.y;
 transform.gameObject.layer = 2;
 }

 void LateUpdate () {
 float velocidadeTimeScale = 1.0f / Time.timeScale;
 float sensibilidade = Configuracoes.sensibilidade;
 float distMin = Configuracoes.distanciaMinima;
 float distMax = Configuracoes.distanciaMaxima;
 float velocidadeScrool = Configuracoes.velocidadeScrool * 50.0f;
 float sensYMouse = Configuracoes.velocidadeY * 10.0f;
 //
 RaycastHit hit;
 if (!Physics.Linecast (transform.position, ObjetoCamera.transform.position)) {

 } else if (Physics.Linecast (transform.position, ObjetoCamera.transform.position, out hit)) {
 distanciaCameraOrbit = Vector3.Distance (transform.position, hit.point);
 distMin = Mathf.Clamp ((Vector3.Distance (transform.position, hit.point)), distMin * 0.5f, distMax);
 }
 //
 xOrbit  += Input.GetAxis ("Mouse X") * (sensibilidade * distanciaCameraOrbit)/(distanciaCameraOrbit*0.5f);
 yOrbit  -= Input.GetAxis ("Mouse Y") * sensibilidade * sensYMouse;
 yOrbit  = ClampAngle (yOrbit, 0.0f, 85.0f);
 Quaternion rotation = Quaternion.Euler (yOrbit, xOrbit , 0);
 distanciaCameraOrbit = Mathf.Clamp (distanciaCameraOrbit - Input.GetAxis ("Mouse ScrollWheel") * velocidadeScrool, distMin, distMax);
 Vector3 negDistance = new Vector3 (0.0f, 0.0f, -distanciaCameraOrbit);
 Vector3 position = rotation * negDistance + transform.position;
 Vector3 posicAtual = ObjetoCamera.transform.position;
 Quaternion rotacAtual = ObjetoCamera.transform.rotation;
 ObjetoCamera.transform.rotation = Quaternion.Lerp(rotacAtual,rotation,Time.deltaTime*5.0f*velocidadeTimeScale);
 ObjetoCamera.transform.position = Vector3.Lerp(posicAtual,position,Time.deltaTime*5.0f*velocidadeTimeScale);
 }
 public static float ClampAngle (float angulo, float min, float max){
 if (angulo < -360F) { angulo += 360F; }
 if (angulo > 360F) { angulo -= 360F; }
 return Mathf.Clamp (angulo, min, max);
 }
}

Este script deve ir no seu jogador, e a única coisa que você tem que fazer é jogar a câmera variável "Objeto Camera" do script, e pronto, terá uma câmera orbital, com zoom e rotação, além de ajustes Very Happy
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 10364
REPUTAÇÃO : 1833
Idade : 21
Á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] Camera orbital com zoom (scroll)

Mensagem por Chilinger em Dom Jul 10, 2016 3:57 pm

O que seria essa camera orbital?Zoom de sniper ?

Chilinger
MembroAvançado

Masculino PONTOS : 1593
REPUTAÇÃO : 32
Idade : 24
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Camera orbital com zoom (scroll)

Mensagem por MarcosSchultz em Dom Jul 10, 2016 11:36 pm

@Chilinger escreveu:O que seria essa camera orbital?Zoom de sniper ?
Camera orbital é tipo camera de jogo RPG, que você pode orbitar ao redor do jogador.
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 10364
REPUTAÇÃO : 1833
Idade : 21
Á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] Camera orbital com zoom (scroll)

Mensagem por GustavoMaster em Seg Jan 09, 2017 10:09 pm

O meu começa a se distânciar do objeto, o que posso fazer ?
avatar
GustavoMaster
Avançado
Avançado

Masculino PONTOS : 1365
REPUTAÇÃO : 14
Idade : 15
Áreas de atuação : ; )
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Camera orbital com zoom (scroll)

Mensagem por LucioHenrique em Ter Jan 10, 2017 8:52 pm

Opa pessoal queria saber como faço para inves de ser o scroll do mouse ser a letra "C"

LucioHenrique
Iniciante
Iniciante

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

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Camera orbital com zoom (scroll)

Mensagem por AndyShow em Ter Jan 10, 2017 10:55 pm

@LucioHenrique escreveu:Opa pessoal queria saber como faço para inves de ser o scroll do mouse ser a letra "C"

Usa um Math.Lerp no Lugar do Scroll e chama ele no Input.GetKey
avatar
AndyShow
Instrutor

Masculino PONTOS : 2552
REPUTAÇÃO : 569
Idade : 35
Áreas de atuação : Blender e Unity
Respeito as regras :

Ver perfil do usuário http://mundounity3d.forumbom.com/

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Camera orbital com zoom (scroll)

Mensagem por LucioHenrique em Qua Jan 11, 2017 8:51 pm

LucioHenrique escreveu:Opa pessoal queria saber como faço para inves de ser o scroll do mouse ser a letra "C"

Usa um Math.Lerp no Lugar do Scroll e chama ele no Input.GetKey


como faço isso

LucioHenrique
Iniciante
Iniciante

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

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Camera orbital com zoom (scroll)

Mensagem por MarcosSchultz em Sex Jan 13, 2017 7:26 pm

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

[Serializable]
public class ConfigsDaCameraOrbital {
   [Range(0.01f,2.0f)] public float sensibilidade = 0.8f, velocidadeY = 0.5f;
   [Range(3.0f,20.0f)] public float distanciaMinima = 5.0f;
   [Range(20.0f,200.0f)] public float distanciaMaxima = 50.0f;
}

public class CameraOrbital : MonoBehaviour {

   float xOrbit, yOrbit, distanciaCameraOrbit;
   public GameObject ObjetoCamera;
   public ConfigsDaCameraOrbital Configuracoes;
   bool zoom;
   void Start () {
      zoom = false;
      distanciaCameraOrbit = Configuracoes.distanciaMinima;
      xOrbit = ObjetoCamera.transform.eulerAngles.x;
      yOrbit = ObjetoCamera.transform.eulerAngles.y;
      transform.gameObject.layer = 2;
   }

   void Update(){
      if (Input.GetKeyDown (KeyCode.C)) {
         zoom = !zoom;
      }
      if (zoom) {
         distanciaCameraOrbit = Configuracoes.distanciaMinima;
      } else {
         distanciaCameraOrbit = Configuracoes.distanciaMaxima;
      }
   }

   void LateUpdate () {
      float velocidadeTimeScale = 1.0f / Time.timeScale;
      float sensibilidade = Configuracoes.sensibilidade;
      float distMin = Configuracoes.distanciaMinima;
      float distMax = Configuracoes.distanciaMaxima;
      float sensYMouse = Configuracoes.velocidadeY * 10.0f;
      //
      RaycastHit hit;
      if (!Physics.Linecast (transform.position, ObjetoCamera.transform.position)) {

      } else if (Physics.Linecast (transform.position, ObjetoCamera.transform.position, out hit)) {
         distanciaCameraOrbit = Vector3.Distance (transform.position, hit.point);
         distMin = Mathf.Clamp ((Vector3.Distance (transform.position, hit.point)), distMin * 0.5f, distMax);
      }
      //
      xOrbit  += Input.GetAxis ("Mouse X") * (sensibilidade * distanciaCameraOrbit)/(distanciaCameraOrbit*0.5f);
      yOrbit  -= Input.GetAxis ("Mouse Y") * sensibilidade * sensYMouse;
      yOrbit  = ClampAngle (yOrbit, 0.0f, 85.0f);
      Quaternion rotation = Quaternion.Euler (yOrbit, xOrbit , 0);
      Vector3 negDistance = new Vector3 (0.0f, 0.0f, -distanciaCameraOrbit);
      Vector3 position = rotation * negDistance + transform.position;
      Vector3 posicAtual = ObjetoCamera.transform.position;
      Quaternion rotacAtual = ObjetoCamera.transform.rotation;
      ObjetoCamera.transform.rotation = Quaternion.Lerp(rotacAtual,rotation,Time.deltaTime*5.0f*velocidadeTimeScale);
      ObjetoCamera.transform.position = Vector3.Lerp(posicAtual,position,Time.deltaTime*5.0f*velocidadeTimeScale);
   }
   public static float ClampAngle (float angulo, float min, float max){
      if (angulo < -360F) { angulo += 360F; }
      if (angulo > 360F) { angulo -= 360F; }
      return Mathf.Clamp (angulo, min, max);
   }
}
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 10364
REPUTAÇÃO : 1833
Idade : 21
Á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] Camera orbital com zoom (scroll)

Mensagem por Gabriel César O em Sex Jul 14, 2017 1:46 pm

esse tuto é 100/10
avatar
Gabriel César O
Programador

Masculino PONTOS : 1592
REPUTAÇÃO : 212
Idade : 16
Áreas de atuação : (ESTUDANDO SEGUNDO GRAU), (FUÇANDO NO UNITY)){
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Camera orbital com zoom (scroll)

Mensagem por zZAndersonZz em Sex Jul 14, 2017 5:16 pm

Eu tinha feito um bem simples pro meu personagem:
Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CameraLivre : MonoBehaviour {

    public GameObject Alvo;
    public int Tempo;

    private float VelocidadeHorizontal = 20f;
    private float VelocidadeVertical = 20f;
    private float VelocidadeDeZoom = 0f;


    void Update ()
    {
        transform.LookAt(Alvo.transform);
        var VelHorizontal = VelocidadeHorizontal * Input.GetAxis("Mouse X");
        var VelVertical = VelocidadeVertical * Input.GetAxis("Mouse Y");
        var Zoom = VelocidadeDeZoom * Input.GetAxis("Mouse ScrollWheel");
        transform.RotateAround(Alvo.transform.position, new Vector3(VelVertical, VelHorizontal, Zoom), Tempo * Time.deltaTime);
    }
}
Esse ai de cima volta e meia dá uma tremida Shocked

Depois um fiz um bem melhor pro barco, com limites pro zoom do scroll e tudo mais.
avatar
zZAndersonZz
Avançado
Avançado

Masculino PONTOS : 777
REPUTAÇÃO : 125
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Camera orbital com zoom (scroll)

Mensagem por Gabriel César O em Sex Jul 14, 2017 5:17 pm

^^
avatar
Gabriel César O
Programador

Masculino PONTOS : 1592
REPUTAÇÃO : 212
Idade : 16
Áreas de atuação : (ESTUDANDO SEGUNDO GRAU), (FUÇANDO NO UNITY)){
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Camera orbital com zoom (scroll)

Mensagem por lidio133 em Sab Jul 15, 2017 10:56 pm

Teria como eu fazer a camera movimentar em volta do personagem com o mouse ?

lidio133
Iniciante
Iniciante

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

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Camera orbital com zoom (scroll)

Mensagem por Gabriel César O em Dom Jul 16, 2017 5:08 am

@lidio133 escreveu:Teria como eu fazer a camera movimentar em volta do personagem com o mouse ?
MAS A CÂMERA ORBITAL FAZ ISSO, COPIE E COLE O SCRIPT DESSE TÓPICO E PRONTO.
avatar
Gabriel César O
Programador

Masculino PONTOS : 1592
REPUTAÇÃO : 212
Idade : 16
Áreas de atuação : (ESTUDANDO SEGUNDO GRAU), (FUÇANDO NO UNITY)){
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Camera orbital com zoom (scroll)

Mensagem por Gregory2017 em Dom Jul 23, 2017 9:02 pm

@MarcosSchultz escreveu:Fala galera, elaborei este sistema simples para uma câmera orbital... basta criar um script em C# chamado "CameraOrbital" e usar este código nele:

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

[Serializable]
public class ConfigsDaCameraOrbital {
 [Range(0.01f,2.0f)] public float sensibilidade = 0.8f, velocidadeScrool = 1.0f, velocidadeY = 0.5f;
 [Range(3.0f,20.0f)] public float distanciaMinima = 5.0f;
 [Range(20.0f,200.0f)] public float distanciaMaxima = 50.0f;
}

public class CameraOrbital : MonoBehaviour {

 float xOrbit, yOrbit, distanciaCameraOrbit;
 public GameObject ObjetoCamera;
 public ConfigsDaCameraOrbital Configuracoes;

 void Start () {
 distanciaCameraOrbit = Configuracoes.distanciaMinima;
 xOrbit = ObjetoCamera.transform.eulerAngles.x;
 yOrbit = ObjetoCamera.transform.eulerAngles.y;
 transform.gameObject.layer = 2;
 }

 void LateUpdate () {
 float velocidadeTimeScale = 1.0f / Time.timeScale;
 float sensibilidade = Configuracoes.sensibilidade;
 float distMin = Configuracoes.distanciaMinima;
 float distMax = Configuracoes.distanciaMaxima;
 float velocidadeScrool = Configuracoes.velocidadeScrool * 50.0f;
 float sensYMouse = Configuracoes.velocidadeY * 10.0f;
 //
 RaycastHit hit;
 if (!Physics.Linecast (transform.position, ObjetoCamera.transform.position)) {

 } else if (Physics.Linecast (transform.position, ObjetoCamera.transform.position, out hit)) {
 distanciaCameraOrbit = Vector3.Distance (transform.position, hit.point);
 distMin = Mathf.Clamp ((Vector3.Distance (transform.position, hit.point)), distMin * 0.5f, distMax);
 }
 //
 xOrbit  += Input.GetAxis ("Mouse X") * (sensibilidade * distanciaCameraOrbit)/(distanciaCameraOrbit*0.5f);
 yOrbit  -= Input.GetAxis ("Mouse Y") * sensibilidade * sensYMouse;
 yOrbit  = ClampAngle (yOrbit, 0.0f, 85.0f);
 Quaternion rotation = Quaternion.Euler (yOrbit, xOrbit , 0);
 distanciaCameraOrbit = Mathf.Clamp (distanciaCameraOrbit - Input.GetAxis ("Mouse ScrollWheel") * velocidadeScrool, distMin, distMax);
 Vector3 negDistance = new Vector3 (0.0f, 0.0f, -distanciaCameraOrbit);
 Vector3 position = rotation * negDistance + transform.position;
 Vector3 posicAtual = ObjetoCamera.transform.position;
 Quaternion rotacAtual = ObjetoCamera.transform.rotation;
 ObjetoCamera.transform.rotation = Quaternion.Lerp(rotacAtual,rotation,Time.deltaTime*5.0f*velocidadeTimeScale);
 ObjetoCamera.transform.position = Vector3.Lerp(posicAtual,position,Time.deltaTime*5.0f*velocidadeTimeScale);
 }
 public static float ClampAngle (float angulo, float min, float max){
 if (angulo < -360F) { angulo += 360F; }
 if (angulo > 360F) { angulo -= 360F; }
 return Mathf.Clamp (angulo, min, max);
 }
}

Este script deve ir no seu jogador, e a única coisa que você tem que fazer é jogar a câmera variável "Objeto Camera" do script, e pronto, terá uma câmera orbital, com zoom e rotação, além de ajustes Very Happy
Quando eu clico no botão de acelera pelo android a camera vira sozinha, oque eu faço para nao ficar virando quando clicar no acelerador?

Gregory2017
Iniciante
Iniciante

Masculino PONTOS : 408
REPUTAÇÃO : 2
Idade : 19
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Camera orbital com zoom (scroll)

Mensagem por MarcosSchultz em Qua Jul 26, 2017 3:12 pm

Ai você tem que meio que refazer este script para ele detectar se algum botão está sendo pressionado ou não... 

Ou trabalhar com layers
avatar
MarcosSchultz
Administrador

Masculino PONTOS : 10364
REPUTAÇÃO : 1833
Idade : 21
Á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] Camera orbital com zoom (scroll)

Mensagem por Gregory2017 em Qui Jul 27, 2017 10:38 pm

@MarcosSchultz escreveu:Ai você tem que meio que refazer este script para ele detectar se algum botão está sendo pressionado ou não... 

Ou trabalhar com layers
Cm que eu faço isso?

Gregory2017
Iniciante
Iniciante

Masculino PONTOS : 408
REPUTAÇÃO : 2
Idade : 19
Respeito as regras :

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL] Camera orbital com zoom (scroll)

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


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