Jump to content
UnitySpain

Search the Community

Showing results for tags 'matrix4x4'.



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

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 1 result

  1. Hola, espero que esten teniendo un buen dia. Primero que nada a que me refiero con ortodoxo? Simplemente a que no sigue una doctrina es decir no sigue algo fijo, algo que quiero que sea de una manera pero es de otra. Necesito que XYZ siempre miren hacia la misma direccion aunque rote el padre o el objeto y apartir de ahi poder modificar XYZ... Conosco que un V3 "localposition" de un transform se refiere a la posicion local lo cual no se modifica, pero de todas formas los ejes no me hacen caso.. y eso es un problema para mi... Vamos con ejemplos practicos, no creo que todabia me hayan entendido: Script para dar ejemplo: Una Tapa se cierra y se abre en el sentido Z SI TIENEN 5 MINUTOS PRUEBEN LO PORFA asi me ayudan sino es difícil entender mi problema <3 // PARA USARLO CREEN UN OBJETO CON MALLA TIPO CUBO // EN LA ESCALA PONGANLE 0 EN Z // INSERTEN EL SCRIPT EN EL OBJETO // LISTO PUEDEN USAR EL SCRIPT // CON E ABREN CON R CIERRAN public class CloseTop : MonoBehaviour { private MeshRenderer _mesh; public float maxScale = 1f; public float speed = 2f; private Vector3 _posFix; private float _scaleStart; private float _scaleEnd; public bool _close = false; public bool _open = false; void Start() { _mesh = GetComponent<MeshRenderer>(); _posFix = transform.localPosition; _scaleStart = transform.localScale.z; _scaleEnd = _scaleStart; } void Update() { transform.localScale = new Vector3(1, -0.06f,Mathf.MoveTowards(transform.localScale.z, _scaleEnd, Time.deltaTime * speed)); transform.localPosition = _posFix + transform.forward * (transform.localScale.z / 2.0f + _scaleStart / 2.0f); if (_open) { _close = false; _mesh.enabled = true; if (transform.localScale.z == maxScale) { _open = false; } } if (_close) { _open = false; if (transform.localScale.z == _scaleStart) { _mesh.enabled = false; _close = false; } } if (Input.GetKeyDown(KeyCode.E)) { _open = true; _close = false; _scaleEnd = maxScale; } else if (Input.GetKeyDown(KeyCode.R)) { _close = true; _open = false; _scaleEnd = _scaleStart; } } } Bueno hasta ahi todo correcto el objeto abre y cierra en Z.. Ahora al objeto ponganlo adentro de un padre... Roten el PADRE 90 grados Ejecuten el start Y ESE es mi problema.... Como pudieron observar si miran el transform del gameobject "Top"(tapa) cuando esta rotado el padre. La rotacion se modifica correctamente... en Z, pero la posicion se modifica en Y... Neceisto que se modifique en Z tambien. Alguna solucion?
×
×
  • Create New...