Rotacionando câmera com mouse na Unity 3D

Use o Mouse para rotacionar a sua Câmera de forma rápida e fácil com a Unity 3D

São diversas as aplicações que necessitamos controlar a câmera 3D com o Mouse, seja para mudar o ângulo de visão do Player, controlar uma filmadora, entre outros. Nesse artigo, você confere a explicação de como fazer a rotação e também pode assistir a nossa videoaula.

Para mover a câmera, temos que pensar na lógica de como isso funciona dentro do espaço 3D. Veja as ações que devem ser executadas quando movemos o Mouse.

Movimento com o mouse Ação com a câmera
Mouse Horizontal/Mouse X  Rotacionar no eixo Y 
Mouse Vertical/Mouse YRotacionar no eixo X

 

Rotacionar Câmera com mouse no Unity 3D.
Rotacionar Câmera com mouse no Unity 3D.

Figura 1: Rotacionar Câmera com mouse no Unity 3D.

Logo abaixo você confere nosso script de como fazer a movimentação totalmente comentando. 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CameraMove : MonoBehaviour
{

	public bool travarMouse = true; //Controla se o cursor do mouse é exibido
	public float sensibilidade = 2.0f; //Controla a sensibilidade do mouse

	private float mouseX = 0.0f, mouseY = 0.0f; //Variáveis que controla a rotação do mouse

	void Start()
	{
		if (!travarMouse)
		{
			return;
		}

		Cursor.visible = false; //Oculta o cursor do mouse
		Cursor.lockState = CursorLockMode.Locked; //Trava o cursor do centro
	}


	void Update()
	{
		mouseX += Input.GetAxis("Mouse X") * sensibilidade; // Incrementa o valor do eixo X e multiplica pela sensibilidade
		mouseY -= Input.GetAxis("Mouse Y") * sensibilidade; // Incrementa o valor do eixo Y e multiplica pela sensibilidade. (Obs. usamos o - para inverter os valores)

		transform.eulerAngles = new Vector3(mouseY, mouseX, 0); //Executa a rotação da câmera de acordo com os eixos
	}
}

A seguir você pode assistir a nossa videoaula.

Espero que tenha gostado e até a próxima.

Gunnar Correa
Gunnar Correa

Autodidata, Graduado em Desenvolvimento Web, Especialista em Tecnologias na Educação e Pós-graduando em Segurança da Informação. Começou seus estudos na área de programação quando era criança, e atualmente, está estudando desenvolvimento de jogos. É CEO do portal SatellaSoft, criado em 2009 com o intuito de compartilhar conhecimento de forma gratuita e inédita.

Deixe um comentário