Jump to content
UnitySpain

Search the Community

Showing results for tags 'camara'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Inicio
    • Proyectos
    • Offtopic
    • Unity Feeds
    • Website
  • Mesa de ayuda
    • Unity
    • Arte
    • Otras Especialidades
    • Builds & Dispositivos
  • Aportes de la Comunidad
    • Recursos
    • Eventos
    • Buenas Prácticas
  • Bolsa de trabajo & Colaboraciones
    • Ofertas y Demandas
  • Post Antiguos
    • General (Antiguo)

Blogs

  • byGui
  • El Blog de Pioj

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 42 results

  1. Hola a todos, lo que quiero hacer y no me sale porque no se me cae una idea de como empezar es de hacer que una cámara en tercera persona se fije al enemigo y que gire en torno al enemigo pero desde la posición de mi jugador, osea la tipica fijación de enemigo de todos los juegos de combate en tercera persona. Quiero lograr eso pero no se por donde empezar, agradeceria si alguien me podria dar alguna orientación para poder conseguir algo parecido. Muchas gracias.
  2. Tengo un problema con la renderización de objetos con la cámara de mi proyecto, el problemas es que la cámara no renderiza los objetos que están un poco lejos del personaje y cuando me voy acercando se van renderizando de apoco y los objetos que están muy cerca de la cámara se van perdiendo de a poco. Quisiera saber si hay alguna solucion para que no pase esto u que pase pero de otras formas más elegante.
  3. Buenas noches! Después de un par de años sin desarrollar nada en Unity, me he puesto manos a la obra con un nuevo proyecto para Android. Me he atascado en el siguiente punto, a ver si podéis echarme un cable. En una de las escenas se puede hacer una foto desde la cámara del móvil. Para ello utilizo la WebCamTexture de Unity. Tras ello utilizo un Renderer para aplicarle Zoom a la imagen captada. Por último utilizo una nueva variable de tipo Texture2D para guardarlo como imagen .png en el dispositivo. El problema es que aunque haya aplicado el Zoom en el Renderer (en el código) la imagen .png se guarda sin zoom. ¿Cómo podría guardar la imagen con el zoom aplicado? Adjunto unas imágenes para que se entienda mejor lo que explico. Muchas gracias!!!! camera_renderer.material.SetTextureScale("_MainTex", new Vector2(camera_zoom, camera_zoom)); camera_renderer.material.SetTextureOffset("_MainTex", new Vector2((1 - camera_zoom) / 2, (1 - camera_zoom) / 2)); camera_texture.SetPixels(backCam.GetPixels()); camera_texture.Apply(); backCam.Pause(); snap = camera_texture; Imagen con el zoom antes de guardar. La misma imagen una vez guardada en el dispositivo. Se ha guardado sin Zoom.
  4. Muy buenas,, saludos a la comunidad, tengo un inconveniente que de verdad no se como darle la vuelta,, explico la situacion; el escenario es un cuarto grande con un laberinto que no es muy largo para no aburrir. son jugadores aqui viene el detalle atencion; las paredes deben ser "invicibles" en sentido no tendran color solo el colider PEEROOOOOO....... si un jugador esta detras de una pared no podra ver al jugador contrario,, es decir los jugadores solo se podran ver si estan en el mismo pasillo. Algoparecido al depth mask de la camara pero no he conseguido ejemplos claros o tutoriales. O si hay otra forma de hacerlo no he visto en casos parecidos Esperando cualquier ayuda y/o sugerencia Gracias miles
  5. Hola amigos... tenemos un problema ... tenemos una cámara principal que renderiza algunas capas otra camara hija de ella , que renderiza un sprite (una animación) al darle play al juego la segunda camara no renderiza el sprite , a menos que manualmente le cambie la proyección de Orthographic a Perspective y luego de vuelta a Orthographic y entonces la renderiza.. .. se cambio por scrpit para k lo hiciera solo y aun no lo hace .. no puedo renderizarla con la primera camara, el sprite , pork esta cambia constantemente la proyección y aruinaria el efecto
  6. Muy buenas. Os describo el problema que estoy teniendo. Tengo un script que permite emparentar ciertos objetos del entorno del juego a la vista de cámara de mi personaje. El objeto emparentado se queda fijo en medio de la vista y puedo desplazarme con él facilmente. Sin embargo, el objeto se deforma (se estira en el eje Y) si miro arriba o abajo. Supongo que debe ser motivo de haber hecho hijo al objeto de la cámara y no se cómo arreglarlo. ¿Alguien podría ayudarme? Solo quisiera que el objeto que emparento con la cámara mantenga su escala original. Gracias y saludos.
  7. Hola amigos , quiero hacer un cambio en la cámara como hace el editor de unity cuando estas en vista 3d y pasas a vista 2d pulsando el botón 2d del editor ... pero de forma manual ...para que el cambio no sea de golpe en el juego ..
  8. Hola amigos, bueno actualmente estoy realizando una aplicación con vuforia, y estaba funcionando todo bien, sin embargo recientemente agregué más registros y se actualizo los datos de Vuforia y mi aplicación dejo de funcionar en mi teléfono, sin embargo al ejecutarla directamente en Unity no tiene problema, y esto es lo que pasa en el celular
  9. Hola! Cómo están? Tengo un pequeño problema con un script que hice. Lo único que hace es limitar el ángulo de rotación de la cámara en Y, pero única y exclusivamente al saltar. Funciona genial, pero he notado que al pasar por el 'grado' 0 (ó -0), hace un giro muy extraño y repentino. He exagerado un poco el salto del player para hacer un corto de ejemplo. El cubo verde representa la rotación 0: https://i.gyazo.com/06151e526fa4f9e3e0ecc557eb60abae.mp4 Nótese como el primer salto es correcto, funciona bien. Pero el segundo... al pasar por el 0 (cubo verde) hace un giro extraño al momento de volver a saltar. Lo que acaban de ver en ese vídeo también ocurre si giro en la dirección contraria a las agujas del reloj. El mencionado script está colocado en el player y así es como se lee: if (!controller.isGrounded) { cameraController.Yaw = Mathf.Clamp(cameraController.Yaw, transform.localEulerAngles.y - 20, transform.localEulerAngles.y + 20); } Ese es todo el código que hice al respecto para lograr esa funcionalidad, así que me imagino que es él quien está mal. A mi corto modo de ver, es como que al estar en números positivos y al pasar a negativos (y viceversa), es cuando se vuelve loco. No sé cómo podría solucionarlo y por eso hago este post Muchas gracias por su amabilidad.
  10. Estoy con un proyecto en vuforia con unity, me surge un problema, no tengo webcam, lo que tengo es una entrada de camara por medio de una capturadora blackmagic decklink que me reconoce vuforia, pero se ve todo negro, sin ver imagen ninguna, alguien sabe como puedo ver esa señal de camara externa. Muchas gracias.
  11. Buenas, señores. A ver si alguien me puede ayudar. Estoy liado con un plataformas 2D y de hecho lo llevo a más de la mitad ya; el caso es que no sé qué es lo que he tocado, pero cuando acerco la cámara con la rueda del ratón para acercar el mapa y añadir detalles, llega a un punto en el que desaparece. Como si me fuese a la parte de atrás, y no consigo tenerlo en la ampliación que necesito para poder trabajarlo. ¿? Gracias de antemano.
  12. Muy buenas a todos compañeros desarrolladores! Me encontre con un problema a la hora de crear un script en C#. Les comento la situación: Se trata de un juego 2D Plataformero, tengo el personaje y una camara estatica, la cuestión es que al colisionar el personaje con un objeto la camara debe moverse interpoladamente (Notese este punto importante) desde el punto en el que se encuentra hasta otro determinado. El caso es, como podría hacer este movimiento? Eh estado buscando y no encontre nada al respecto... me dan una mano compañeros? :D
  13. Hoy utilizaremos un simple script que nos permitirá hacer capturas de pantalla desde la camara de nuestro juego. Estas capturas las guardaremos como Png en nuestro disco duro. ¡No os lo perdáis!
  14. Hoy indagaremos un poco en el asset Cinemachine de Unity. En el ejemplo podremos ver cómo interactuar y manipular los componentes VirtualCamera.
  15. Buenos dias intentando hacer, con poco éxito un script que cuando tu arrastres el ratón en una superficie 2D por la pantalla se mueva la cámara según la fuerza que utilices en el impulso y pare poco a poco, similar a los juegos de android. El caso es que no doy pie con bola. No me sale nada limpio y suave. Todo es al mogollón y movimientos muy duros. Lo estoy intentando con un raycast, por que se que el touch no vale para PC. Un saludo y gracias.
  16. Hola , tengo un error que al probar el juego la cámara solo se mueve horizontalmente y yo quiero que se mueve también verticalmente.Es un juego para móviles y la cámara se mueve con un DualTauchControl Posdata:Para poder controlar la camara y que el personaje no se moviera(es lo que quería hacer)borre el botón de movimiento del personaje. Necesito ayuda Gracias.
  17. Me ha salida una duda con la camara de 3DMax y Unity, quiero exportar la animación de la camara de 3DMax a Unity, pero he leido que no es posible, por lo tanto he pensado en referenciar la Camara 3DMax con un "Helper" y también he realizado otra prueba con un Objeto (Mesh). Por lo tanto, el helper o el objeto copia los movimientos de la camara de 3DStudio Max, cuando exporto la escena a Unity la camara de 3DStudio Max no me sirve, pero intento utilizar la animación que ha quedado guardada en el helper o del objeto, para que la camara de Unity siga el helper o al objeto. Os dejo las imagenes de los pasos que he realizado para referenciar la camara de Unity al objeto o helper, en ningún caso me ha funcionado, es decir la camara no se mueve. Os explico brevemente los pasos: Imagen 1: Copio el movimiento de la camara a los helpers Imagen 2: Los Helpers realizan exactamente el mismo movimiento que la camara Imagen 3 y 4: Arrastro el Main Camera dentro del Point0001 (Helper), creo un Animator Controller para el Point001 y coloco dentro el Take001 (la animación del helper) Imagen 5: La camara no se mueve Imagen 6: Realizo otra prueba, esta vez con objetos poly (las estrellas), copio el movimiento de la camara al objeto Imagen 7: Hago la misma operación que hice en la imagen 4, arrastro el Main Camera dentro del Star0001 (el objeto), creo un Animator Controller para el Star001 y coloco dentro el Take001 (la animación del objeto) Imagen 8: La camara no se mueve Alguien sabe que estoy haciendo mal?
  18. Hola, siempre quise saber como funcionaban las camaras 2D que cuando llegabas a un cierto punto del nivel se quedaban quietas y/o modificaban alguna caracteristica como el target o el tamaño, etc. Cuando me sente dos segundos a pensar como era no podia creer que fuera tan facil de implementar. Basicamente cuando el transform objetivo normal entra en un trigger2D que sea un nodo, el node se impone de target. Cuando sale el target vuelve a ser el target normal. Para cada nodo se puede setear: - tamaño ortografico (solo para proyeccion ortografica) - FOV (solo para proyeccion perspectiva) - lerp del ajuste de proyeccion - lerp de seguimiento al target - offsetX - offsetY camara 2D: //Camera2D.cs ------------- (va en camara) using System.Collections; using System.Collections.Generic; using UnityEngine; public class Camera2D : MonoBehaviour { struct CameraProperties { public float lerpValue; public float projLerpValue; //orthographic public float size; //perspective public float fov; public float offsetX; public float offsetY; public Transform target; } //public public float m_lerpValue = 2; public float m_projLerpValue = 3; public float m_size = 4; public float m_fov = 50; public float m_offsetX = 0; public float m_offsetY = 0; Transform m_target; CameraProperties normalCam = new CameraProperties(); Transform m_transform; Camera m_cam; void Start () { m_transform = transform; m_cam = GetComponent<Camera>(); normalCam.lerpValue = 2; normalCam.projLerpValue = 3; normalCam.size = 4; normalCam.fov = 50; normalCam.offsetX = 0; normalCam.offsetY = 0; normalCam.target = Player.instance.transform; UseNormal(); transform.position = new Vector3(m_target.position.x , m_target.position.y , transform.position.z); } public void UseOrthographicView(float lerpValue , float projLerpValue, float size, float offsetX , float offsetY , Transform target) { m_lerpValue = lerpValue; m_projLerpValue = projLerpValue; m_size = size; m_offsetX = offsetX; m_offsetY = offsetY; m_target = target; } public void UsePerspectiveView(float lerpValue, float projLerpValue, float fov, float offsetX, float offsetY, Transform target) { m_lerpValue = lerpValue; m_projLerpValue = projLerpValue; m_fov = fov; m_offsetX = offsetX; m_offsetY = offsetY; m_target = target; } public void UseNormal() { m_lerpValue = normalCam.lerpValue; m_projLerpValue = normalCam.projLerpValue; m_size = normalCam.size; m_fov = normalCam.fov; m_offsetX = normalCam.offsetX; m_offsetY = normalCam.offsetY; m_target = normalCam.target; } void LateUpdate () { m_transform.position = new Vector3 ( Mathf.Lerp(m_transform.position.x , m_target.position.x + m_offsetX, m_lerpValue * Time.unscaledDeltaTime), Mathf.Lerp(m_transform.position.y , m_target.position.y + m_offsetY, m_lerpValue * Time.unscaledDeltaTime), m_transform.position.z); //Orthographic if (m_cam.orthographic) m_cam.orthographicSize = Mathf.Lerp(m_cam.orthographicSize, m_size, m_projLerpValue * Time.unscaledDeltaTime); else //Perspective m_cam.fieldOfView = Mathf.Lerp(m_cam.fieldOfView, m_fov, m_projLerpValue * Time.unscaledDeltaTime); } } Y el nodo o trigger del target CameraNode.cs using System.Collections; using System.Collections.Generic; using UnityEngine; [RequireComponent(typeof(Collider2D))] public class CameraNode : MonoBehaviour { public float m_lerpValue = 2; public float m_projLerpValue = 2; [Header("Orthographic Size")] public float m_size = 5; [Header("Perspective FOV")] public float m_fov = 50; [Header("Offset")] public float m_offsetX = 0; public float m_offsetY = 0; Camera2D cam2D; void Start() { if (Camera.main.GetComponent<Camera2D>()) cam2D = Camera.main.GetComponent<Camera2D>(); } void OnDrawGizmos() { Gizmos.color = new Color(0, 0, 1, 0.1f); if (Camera.main.orthographic){ Gizmos.DrawCube(transform.position + Vector3.right * m_offsetX + Vector3.up * m_offsetY, new Vector3(2 * m_size * Camera.main.aspect, 2 * m_size, 1)); } else { float distance = transform.position.z - Camera.main.transform.position.z; float verticalHalfSize = distance * Mathf.Tan(Mathf.Deg2Rad * (m_fov / 2)); Gizmos.DrawCube(transform.position + Vector3.right * m_offsetX + Vector3.up * m_offsetY, new Vector3(2 * verticalHalfSize * Camera.main.aspect, 2 * verticalHalfSize, 1)); } } void OnTriggerEnter2D(Collider2D col) { if (col == Player.instance.boxCollider) { if(Camera.main.orthographic) cam2D.UseOrthographicView (m_lerpValue , m_projLerpValue, m_size , m_offsetX , m_offsetY, transform); else cam2D.UsePerspectiveView(m_lerpValue, m_projLerpValue, m_fov, m_offsetX, m_offsetY, transform); } } void OnTriggerStay2D(Collider2D col) { if (col == Player.instance.boxCollider) { if (Camera.main.orthographic) cam2D.UseOrthographicView(m_lerpValue, m_projLerpValue, m_size, m_offsetX, m_offsetY, transform); else cam2D.UsePerspectiveView(m_lerpValue, m_projLerpValue, m_fov, m_offsetX, m_offsetY, transform); } } void OnTriggerExit2D(Collider2D col) { if (col == Player.instance.boxCollider) { cam2D.UseNormal (); } } } Saludos y espero que sirva OJO! --> En el codigo tengo "Player.instance.boxCollider", basta con referenciar cualquier collider a gusto Agregué: - Funcionalidad de usar lo mismo para Orthographic y para Perspective. - Gizmos para predecir la vista de la camara cuando utilice un target (para las dos proyecciones )
  19. Estoy haciendo un trabajo para la universidad con Unity + Vuforia... tengo una camara de RA apuntando desde arriba a unos 30 image targets de un mismo objeto (fotos desde distintos angulos)... y quiero que cuando cualquiera de esos 30 targets reconozcan el objeto ...me abra otro escenario y poder ejecutar otra cosa... el tema seria que los 30 targets apunten trabajen de la misma forma sin tener que poner 30 veces lo mismo. esta es la parte que estoy trabado, como hacer que me abra otra escena y como hacer que todos los targets hagan lo mismo. gracias!
  20. Hola! He hecho que, cuando mi player está cayéndose desde "x" altura, la cámara mire hacia el suelo, en plan "mira, te vas a estrellar", y luego pierde el control de movimiento de la cámara mientras está cayendo, y lo recupera nuevamente cuando llega al suelo (si es que sobrevive). _________________________________________________________________________________________________ Todo esto funciona perfecto. Pero como problema es un poco raro, lo explicaré como si fueran pasos: Me tiro por el precipicio. Muevo la cámara hacia todos lados, simplemente para ver la transición de la cámara en cuanto comience a rotar hacia el suelo. Cuando llego a "x" altura, la cámara empieza a hacerle focus al suelo, y aparte ya no puedo mover más la cámara (tal y como yo quiero). Finalmente llego al suelo, y hago que el FOV de la cámara disminuya bastante para dar cierto efecto cuando choco contra el suelo. Pasan unas milésimas de segundo y el FOV vuelve a la normalidad, y aparte ya tengo de nuevo el control de la cámara! [EL PROBLEMA]: Lo que ocurre cuando me devuelve el control de la cámara (al final del en el paso nº5), es que la rotación de la cámara vuelve a la posición en donde la dejé por última vez, en el paso nº2!!! Ése es el problema! Es decir, me tiro... me quedo mirando hacia el cielo (por ejemplo)... la cámara comienza a encarar el suelo... entonces llego al suelo y hace el efecto del fov, y oh sí todo muy genial... y luego la cámara vuelve a mirar al cielo repentinamente como si Jesucristo le estuviese hablando. _________________________________________________________________________________________________ Bueno, espero haberme hecho entender con esto. Aquí pongo el código, para tratar de que no sea tan confuso: using UnityEngine; using System.Collections; [DisallowMultipleComponent] public class CameraHitGround : MonoBehaviour { private GameObject _player; private PlayerController _playerController = null; private CameraController _cameraController = null; private Transform _target; private float _hitFOV = 20f; private float _normalFOV = 72f; private float _hitLerpSpeed = 10f; private float _normalLerpSpeed = 0.05f; private float _hitGroundCounter = 0f; private float _rotationSpeed = 0.5f; void Awake() { _player = GameObject.Find("Player"); _playerController = _player.GetComponent<PlayerController>(); _cameraController = _player.GetComponentInChildren<CameraController>(); _target = GameObject.Find("Ground").transform; } void Update() { // Cuando choca contra el suelo desde una larga caída... if (_playerController.IsFalling && _playerController.MidAirCounter > 4f) { _cameraController.CanMoveCamera = false; // Hace que la cámara mire al "suelo", el cual en realidad es un empty gameobject que es hijo de mi player y que está colocado debajo de él... var targetRotation = Quaternion.LookRotation(_target.transform.position - transform.position); // Suaviza la rotación. transform.rotation = Quaternion.Slerp(transform.rotation, targetRotation, _rotationSpeed * Time.deltaTime); } if (_playerController.MidAirCounter > 4f && _playerController.CC.isGrounded) { Camera.main.fieldOfView = Mathf.Lerp(Camera.main.fieldOfView, _hitFOV, _hitLerpSpeed * Time.deltaTime); // Después de chocar contra el suelo... _hitGroundCounter += 1f * Time.deltaTime; if (_hitGroundCounter >= 1.5f && _playerController.CC.isGrounded) { Camera.main.fieldOfView = Mathf.Lerp(Camera.main.fieldOfView, _normalFOV, _normalLerpSpeed * Time.deltaTime); _cameraController.CanMoveCamera = true; _hitGroundCounter = 0f; _playerController.MidAirCounter = 0f; } } } } Ahí está, espero que alguien me ayude a levantarme de esta caída. Lol. Gracias de antemano.
  21. Hola a todos!! tengo una pregunta a ver si alguien sabe orientarme... Se puede pausar el dibujado de la camara sin tener que desactivarla??? El caso es que estoy haciendo un "DynamicGI.UpdateEnvironment();" y esto consume mucho... La idea que se me ha ocurrido es hacer el DynamicGI.UpdateEnvironment(); cada dos o tres segundos, pero evidentemente en el frame en el que esto sucede hay una caida de fps considerable y había pensado en intentar que la camara en ese frame no ejecutase el dibujado, (me refiero ha pintar la pantalla con el escenario). ¿Es posible hacer que la camara no dibuje la escena durante un frame y que en ese frame el dibujado de la camara fuese el del frame anterior? No se explicarlo mejor.. ¿O alguna otra idea? Espero vuestra ayuda, un saludo y gracias por adelantado.
  22. Hola soy yo otra vez jeje, pues tengo un problema, necesito que mi personaje voltee su cuerpo si muevo la camara(no se si me explico, es un shooter en primera persona pero tengo un modelo del personaje ya que es online, entonces necesito que si el jugador mueve la camara hacia atras pues el cuerpo tambien lo haga, en pocas palabras: que el cuerpo siga la rotacion de la camara)entonces he intentado con un forward para buscar la direccion de un cubo que esta enlazado(esta de hijo) con el personaje, pero unity me dice que no puede cambiar un Vector3 a un Quaternion, entonces de que manera debo de realizarlo? es con el mismo forwad (me imagino) pero como hago que tome la direccion. El codigo que tengo es este, por cierto uso el codigo por defecto de unity (el que se llama Simple mouse rotator para que pueda moverme un poco): public Transform posicionCubo; public GameObject posicionCuerpo; void Update(){ Vector3 posicionNueva = posicionCubo.forward; posicionCuerpo.transform.rotation = posicionNueva; } Por cierto lo hago con el cubo y no con la camara ya que la camara tambien ve hacia arriba, y no quiero que el cuerpo se valla en vertical. Ojala puedan ayudarme gracias.
  23. Hola muy buenas a todos hoy les vengo a hacer una pregunta con un error que tuve el poner el fieldOfView a la camara : var camera : Camera; CODE : zoom = 30f; CODE : camera.GetComponent.<Camera>().fieldOfView = zoom; Error : Assets/Ghost Army/player/script/disparo.js(66,17): BCE0004: Ambiguous reference 'camera': disparo.camera, UnityEngine.Component.camera. Si alguno sabe como arreglarlo se lo agresco mucho. saludos :)
  24. Tengo una duda, no de programación sino de lógica. Necesito hacer una cámara que se acerque al jugador cuando choca con un objeto, para evitar que atraviese el objeto y no se vea dentro de este. Yo lo haría lanzando raycast en todas las direcciones y detectando la proximidad mover la cámara, pero os pregunto para ver si tenéis mejores ideas. Por cierot, no se si lo dije es para un third person controller.
  25. Hola presento una nueva duda, quizas muy tonta, pero recientemente actualicé Unity y (no se si es por la actualización ya que antes no me sucedía) pongo un FPController(el que viene por defecto en Unity) y emparento unos brazos que descargue de internet a la camra del FPC. El problema es que la cámar tiene un "tope", por a sí decirlo, muy amplio lo que hace que al mirar hacia bajo o hacia arriba suceda que puedo ver los brazos "salirse" del personaje. Les dejo una imagen para que me explique mejor Quisiera saber si hay alguna forma de modificar el rango de rotación máximo, ya que desde el componente "Camera" no lo pude encontrar. Y gracias de antemano : ) No aclaré que la primera imagen esta bien (algo obvio) y que el problema radica en las otras dos imágenes
×
×
  • Create New...