Jump to content

Search the Community

Showing results for tags 'camera'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • General
    • Proyectos
    • Offtopic
    • Unity Feeds
    • Website
    • Youtube
  • Mesa de ayuda
    • Unity
    • Arte
    • Builds & Dispositivos
    • Otras Especialidades
  • Aportes de la Comunidad
    • Recursos
    • Eventos
  • Bolsa de trabajo & Colaboraciones
    • Ofertas y Demandas

Blogs

There are no results to display.

There are no results to display.


Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Especialidad

Found 3 results

  1. hola a todos, me encuentro iniciándome en Unity, aprendiendo a hacer una cámara orbital que pueda mover con el raton buscando y buscando he aprendido a hacerlo de esta forma, añadiendo un objeto vacío que la cámara seguirá, pero tengo un problema y es que si muevo la cámara hasta abajo/arriba seguirá hasta dar la vuelta y quisiera que al llegar a cierta altura esta se detuviera aquí el script que uso public GameObject jugador, referencia;- private Vector3 distancia; void Start () { distancia = transform.position - jugador.transform.position; } void LateUpdate () { distancia = Quaternion.AngleAxis (Input.GetAxis ("Mouse X") * 1, Vector3.up) * Quaternion.AngleAxis(Input.GetAxis("Mouse Y") * 2, Vector3.right) * distancia; transform.position = jugador.transform.position + distancia; transform.LookAt (jugador.transform.position); Vector3 rotacion = new Vector3(0, transform.eulerAngles.y, 0); referencia.transform.eulerAngles = rotacion; } }
  2. Hola chicos, Presento el siguiente caso: Como ven a continuación, estoy realizando un I wanna be y quiero imitar el movimiento de la cámara, que al tocar el borde derecho se traslada de posición hacia la derecha y el borde izquierdo hacia la izquierda. Se me había ocurrido utilizar (para practicar mas comandos y explorar unity) Renderer.isVisible, donde en el script del personaje, hay un método llamado "cameraMov" que detecta de que lado de la cámara sale y es invocado en el método Update. La cuestión es que en el primer frame no detecta al personaje (Renderer.isVisible = false), por lo que si dejo el objeto (antes de ejecutar el juego) a la izquierda de la cámara, la cámara se traslada a la izquierda, y lo mismo si lo dejo a la derecha. Intente mil formas pero no se me ocurre ya como solucionarlo Si se les ocurre alguna idea, una solución, u otra forma de resolverlo, estaría muy agradecido con ustedes. Muchas gracias por leer
  3. Muy buenas. Tengo un problema con el que llevo unos días liado y no consigo resolver. Me pregunto si alguien podría ayudarme. En esta StartCourutine, la cámara de mi personaje FPS centra la vista en un objetivo concreto y hace un zoom In. Tras pasar unos segundos, hace un zoom Out. Hasta aquí bien. El problema viene cuando al terminar de hacer este zoom out y volver a tener control sobre mi personaje, la cámara hace un giro muy brusco. He estado mirando por ahí y parece que esto se debe a que la cámara guarda la rotación anterior a cuando centra al objetivo. De manera que cuando vuelve, la cámara vuelve a la rotación original. Supongo que la solución está en guardar las coordenadas de esta rotación antes y establecerlas cuando termine el zoom out. Pero no sé cómo se hace. Si alguien pudiera ayudarme lo agradecería enormemente. Un saludo y gracias por leerme. Aquí el script: using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UI; using UnityStandardAssets.Characters.FirstPerson; public class centrarObjetivo : MonoBehaviour { public float segundos = 1f; IEnumerator tiempoCentrarObjetivo () { GameObject.Find ("FPSController").GetComponent<CharacterController> ().enabled = false; GameObject.Find ("FPSController").GetComponent<FirstPersonController> ().enabled = false; Vector3 relativePos = new Vector3 (GameObject.Find ("objetivo").transform.position.x, GameObject.Find ("objetivo").transform.position.y + 0f, GameObject.Find ("objetivo").transform.position.z) - GameObject.Find ("FirstPersonCharacter").transform.position; Quaternion toRotation = Quaternion.LookRotation (relativePos); GameObject.Find ("FirstPersonCharacter").transform.rotation = Quaternion.Lerp (GameObject.Find ("FirstPersonCharacter").transform.rotation, toRotation, 2.5f * Time.deltaTime); GameObject.Find ("FirstPersonCharacter").GetComponent<Camera> ().fieldOfView = Mathf.Lerp (GameObject.Find ("FirstPersonCharacter").GetComponent<Camera> ().fieldOfView, 10f, Time.deltaTime * 0.2f); yield return new WaitForSeconds (segundos * 4); GameObject.Find ("FirstPersonCharacter").GetComponent<Camera> ().fieldOfView = Mathf.Lerp (GameObject.Find ("FirstPersonCharacter").GetComponent<Camera> ().fieldOfView, 90f, Time.deltaTime * 3f); yield return new WaitForSeconds (segundos * 2); GameObject.Find ("FPSController").GetComponent<CharacterController> ().enabled = true; GameObject.Find ("FPSController").GetComponent<FirstPersonController> ().enabled = true; } void Update () { StartCoroutine ((tiempoCentrarObjetivo ())); } }
×
×
  • Create New...