El sistema de física de Roblox permite construir mecanismos en movimiento como puertas, plataformas giratorias e incluso vehículos utilizando restricciones. Por ejemplo, se puede construir una puerta oscilante utilizando HingeConstraint.
Configuración de la puerta
Comienza creando partes para la puerta y sus sujeciones. Las Sujeciones son donde un objeto puede conectarse a otro. Estas sujeciones se usarán más adelante para conectar la puerta a su marco con una bisagra.
Crea dos partes con nombres como Puerta y MarcoDePuerta.

Selecciona MarcoDePuerta. En la ventana de Propiedades, activa Anclado para que no se mueva.

En el Explorador, pasa el cursor sobre MarcoDePuerta y añade una nueva Sujeción. Repite lo mismo para añadir una sujeción a la Puerta.

Cambia el nombre de las sujeciones para indicar a qué están conectadas, como SujeciónDePuerta y SujeciónDeMarco.

Mover las sujeciones
Las nuevas sujeciones se crean en el centro de una parte. Para que funcionen con la puerta, las dos sujeciones deben moverse para enfrentarse entre sí.
Para ver restricciones y sujeciones, activa Mostrar Detalles de Restricción desde el menú Ver de Studio.
En el Explorador, selecciona SujeciónDeMarco.

Presiona F para centrarte en la sujeción y acércate si es necesario. Luego, utiliza la herramienta Mover para posicionar la sujeción en la superficie del marco de la puerta, mirando hacia la puerta.
Repite lo mismo para mover SujeciónDePuerta. Tus sujeciones deberían estar posicionadas en la superficie frente a su contraparte.

Rotar las sujeciones
La orientación de una sujeción afecta cómo puede moverse una restricción. Para la puerta, ambas sujeciones deben ser rotadas para que la bisagra oscile de izquierda a derecha, como en una puerta estándar.
En el marco de la puerta, pasa el cursor sobre SujeciónDeMarco. Observa la flecha amarilla. Esta flecha, el eje, determina la rotación de la bisagra.

Para una rotación precisa, activa el ajuste de rotación en la barra de herramientas de Studio marcando Rotar y configurando el valor en 90.

Usa la herramienta Rotar para orientar ambas sujeciones amarillas hacia arriba. Si tus ejes ya están verticales, no es necesario hacer nada.

Añadir la restricción
Recuerda, las restricciones son una forma de conectar dos sujeciones para que se muevan de una manera específica. Esta puerta utilizará un HingeConstraint, una restricción común que rota objetos a lo largo de los ejes de dos sujeciones.
Bajo MarcoDePuerta, crea un nuevo HingeConstraint.

En las propiedades de la restricción, busca Attachment0. Haz clic en el cuadro vacío a la derecha de la propiedad y luego, en el Explorador, haz clic en SujeciónDePuerta.
Repite el mismo proceso conectando Attachment1 a SujeciónDeMarco. Las propiedades deberían aparecer como abajo.

Prueba el proyecto caminando hacia la puerta con tu personaje.
Ajustar la puerta
La puerta actualmente puede oscilar más allá del marco de la puerta. Esto se puede solucionar ajustando los límites de la bisagra.
En las propiedades de HingeConstraint, busca y activa LimitesHabilitados. Cuando está activo, puedes establecer los límites de rotación de la bisagra.

Para asegurarte de que esto esté orientado correctamente, selecciona SujeciónDePuerta y utiliza la herramienta de rotación para que la flecha naranja apunte hacia el marco de la puerta, como se muestra a continuación.

En la sección de Límites de las propiedades, establece tanto LowerAngle como UpperAngle en -90 y 90, respectivamente. Esto crea un rango de movimiento como la imagen de la izquierda.


Prueba la puerta y nota que la bisagra ahora está limitada.
Con la puerta completa, tómate un tiempo para explorar el uso de restricciones de bisagra en diferentes situaciones, como una trampa de puerta o una trampa de hacha oscilante.
