Jump to content

Sreaver

Registrados
  • Content Count

    22
  • Joined

  • Last visited

  • Days Won

    2

Sreaver last won the day on November 29 2020

Sreaver had the most liked content!

Community Reputation

6 Neutral

About Sreaver

  • Rank
    Iniciado

Profile Information

  • Especialidad
    Otros

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Jajaja. Es que me estoy familiarizando con las palabras todavía.... El eje z si esta congelado. Ya me pasaba que se iba la bola a tomar viento 😂. Mañana revisaré todo y probaré a cambiar la forma del collider. No pensaba atascarme en estas cosillas, la verdad está resultando el aprendizaje más complicado de lo que parecía. Gracias
  2. Hola. Buscando información he encontrado varios temas que según el buscador están en general antiguo, pero una vez pincho el enlace no encuentra el post. ¿Se puede recuperar /visualizar de alguna manera? Gracias
  3. Buenas. Hace lo mismo, aunque me ha venido bien para otro efecto que quiero aplicar. Por lo que veo cuando roza por la orilla el bloque lo destruye y no se desvía la trayectoria de la bola. Me tiene loco el tema. He probado cambiando el tamaño del box collider en los bloques, pero nada.
  4. Buenas noches, estoy practicando con el típico juego "rebotes" a lo arkanoid. Tengo unos materiales físicos aplicados a la barra y la pelota para que rebote y no pierda velocidad. Sin fricción. Los bloques tienen marcado "is kinetic", con el material también para que rebote. Estoy utilizando un OnCollisionEnter que funciona bien cuando la pelota golpea se elimina el objeto, pero algunas veces cuando la pelota golpea en determinadas zonas a el lateral del ladrillo hay veces que se destruye pero no rebota, es decir la pelota sigue en la misma trayectoria. He puesto la colisión en dinámica, pero esta no parece ser la solución. ¿Alguna idea? Gracias
  5. Hola, yo también soy novato, pero para esa función os aconsejo utilizar las corrutinas, Saludos,
  6. No consigue que funcione.¿Quaternion.Left es Quaternion.Lerp? Ninguna de las dos me funciona, left no lo reconoce y Lerp no me deja usarlo. ¿Alguna sugerencia? Esto de los Quaterniones se me está empalagando mucho. He visto y he leído mucho sobre el tema y cada vez entiendo menos. No he encontrado ningún tutorial con ejemplos prácticos es Español, y los que he encontrado en inglés tampoco me aclaran mucho. Todos los que encuentro me aclaran mucha teoría, pero práctica cero..... Haciendo pruebas y más pruebas mi código está como sigue. Lo he puesto entero, porque no es muy extenso. De este modo la nave gira. No sé porqué hasta 180º, y tampoco sé porqué gira sobre los tres ejes. ¿Será porque la nave tiene un rigidbody? He probado a bloquear desde el inspector los ejes z e y, pero siguen girando. using System.Collections; using System.Collections.Generic; using UnityEngine; public class Barra : MonoBehaviour { public float velocidad = 40.0f; Vector3 posicionInicial; Quaternion rotacionInicial; public float tecladoHorizontal; //float rotacion; void Start() { posicionInicial = transform.position; rotacionInicial = transform.rotation; } public void Reset() { transform.position = posicionInicial; transform.rotation = rotacionInicial; } void Update() { tecladoHorizontal = Input.GetAxisRaw("Horizontal"); float posX = transform.position.x + (tecladoHorizontal * velocidad * Time.deltaTime); transform.position = new Vector3(Mathf.Clamp(posX,-34.42f,34.42f), transform.position.y, transform.position.z); Quaternion rotActual = transform.rotation; if (tecladoHorizontal == 1) { rotActual.x +=0.05f; transform.rotation = rotActual; } else if (tecladoHorizontal == 0) { transform.rotation = rotacionInicial; } else if (tecladoHorizontal == -1) { rotActual.x -= 0.05f; transform.rotation = rotActual; } } } Bueno, finalmente he conseguido el efecto que quería después de mucho trasnochar. Parece mentira como me ofusco algunas veces en tonterías.......... el problema principal era que no estaba rotando el eje que era. Estaba tratando de rotar X, cuando en realidad era Z. Adjunto el código definitivo por si le es de utilidad a alguien. Es el mismo que el anterior, pero en la parte del if va lo siguiente: if (tecladoHorizontal == 1) { transform.eulerAngles = new Vector3(0, 0, 80); transform.rotation = Quaternion.Lerp(rotActual, transform.rotation, 1.5f * Time.deltaTime); } else if (tecladoHorizontal == 0) { transform.rotation = rotacionInicial; transform.eulerAngles = new Vector3(0, 0, 90); transform.rotation = Quaternion.Lerp(rotActual, transform.rotation, 10.1f * Time.deltaTime); } else if (tecladoHorizontal == -1) { transform.eulerAngles = new Vector3(0, 0, 100); transform.rotation = Quaternion.Lerp(rotActual, transform.rotation, 1.5f * Time.deltaTime); Muchas gracias a todos y sobre todo a tí Francoe1 por tomarte la molestia de responder.
  7. void Update() { tecladoHorizontal = Input.GetAxisRaw("Horizontal"); float posX = transform.position.x + (tecladoHorizontal * velocidad * Time.deltaTime); transform.position = new Vector3(Mathf.Clamp(posX,-34.42f,34.42f), transform.position.y, transform.position.z); if (tecladoHorizontal == 1) { rotacion = 10; transform.Rotate(new Vector3(0, 0, Mathf.Clamp(-rotacion,10,10) * Time.deltaTime)); } else if (tecladoHorizontal == 0) { rotacion = 0; transform.Rotate(new Vector3(0, 0, rotacion) * Time.deltaTime); } else if (tecladoHorizontal == -1) { rotacion = -10; transform.Rotate(new Vector3(0, 0, Mathf.Clamp(rotacion,-10,-10) * Time.deltaTime)); } } Buenas noches, estoy haciendo un código en el que quiero que una nave se incline hacia la dirección en la que me desplazo, es decir, cuando gire a la derecha se incline 10 grados, hacia la izquierda -10 y cuando no gire vuelva a su estado natural. El proyecto es 3D. El código que hago es este: Lógicamente no funciona, pues la nave gira, pero no como quiero y tampoco vuelve a su estado cuando dejo de pulsar las teclas. No gira como quiero porque yo quiero girarla unos grados determinados, es decir, que cuando me desplace a la derecha se incline a 10 grados y cuando deje de girar vuelva a su estado (cero grados), pero el código lo que hace es ir girando gradualmente . Espero haberme explicado, Gracias anticipadas,
×
×
  • Create New...