Objetos giratorios son objetos que giran en uno o más ejes dentro del espacio 3D. Usando el poder integrado de la simulación de Roblox, puedes hacer que los objetos giren y interactúen con su entorno de una manera que imita el comportamiento físico real que es familiar y intuitivo para los jugadores, como la gravedad, la aerodinámica y la fricción.
Usando el archivo Spinning Objects.rbxl como referencia, este tutorial explica cómo las fuerzas físicas afectan el movimiento ángular en Studio, y muestra varias técnicas para girar objetos en tus experiencias con diferentes comportamientos de giro, incluyendo consejos sobre:
- Usando un límite de movimiento de AngularVelocity para girar una instalación entera a una velocidad de giro constante.
- Usando un límite mecánico HingeConstraint para girar una parte dentro de una instalación a una velocidad de ángulo constante mientras que el resto de la instalación se mantiene estacionario.
- Usa el método ApplyAngularImpulse para girar una instalación con un impulso inicial de fuerza de ángulo para que la instalación gire lentamente con el tiempo.
Movimiento Angular y Fuerzas Físicas
Roblox Studio es un motor de simulación de mundo real que emula el comportamiento físico en tiempo real, por lo que para predecir el comportamiento de los objetos giratorios en las experiencias, es importante tener una comprensión de alto nivel de cómo los objetos giran en el mundo real con un movimiento de ángulo. Angular motion , o rotational motion, es el movimiento alrededor de un punto o eje fijo. Por ejemplo, cuando un propulsor tiene movimiento de ángulo, gira alrededor de su eje de rotación en el medio del propulsor.
El movimiento ángular no puede existir sin fuerzas físicas externas que empujan o cierran objetos para hacer girar. Según la primer ley de la física de Newton, los objetos estáticos se mantienen estáticos y los objetos en movimiento se mantienen en movimiento con una velocidad constante a menos que sean actuados por una fuerza externa. Por ejemplo, un propulsor estático se mantiene estático a menos que se actúe por una fuerza externa.
El torque es la medida de la fuerza física que causa que los objetos giren, y es responsable de que los objetos obtengan aceleración angular. Este concepto es particularmente importante para que los objetos giren en Studio; cuanto más torque aplicas a los objetos, más rápido pueden acelerar.
Esto es porque el par de torsión necesita ser mayor que cualquier fuerza física direccional que empuja contra el objeto, como la gravedad o la fricción. Por ejemplo, si colocara el propulsor en la tierra, la fuerza física del viento necesita superar la cantidad de fricción de la tierra para continuar acelerando el propulsor giratorio. Si la fuerza del viento no es mucho mayor que la fric
Velocidad de ángulo es la medida de la rotación de un objeto, o la puntuarcon la que gira el objeto alrededor de un punto o eje fijo durante un período de tiempo. Studio mide la velocidad de ángulo según el número de radianos que g
Las siguientes secciones se adentrarán más en estos conceptos a medida que aprendes cómo girar objetos en una velocidad de ángulo constante o inicial con la velocidad de torque necesaria para superar cualquier fuerza física opositoria dentro del entorno, ambiente. Cuando revisas estos conceptos de física con las próximas técnicas, puedes predecir más precisamente cómo ajustar los valores de propiedad para lograr cualquier comportamiento de rotación ideal en Studio.
Mantener una fuerza angular constante
Para que un objeto alcance y mantenga una velocidad angular constante, necesita una fuerza angular para superar cualquier fuerza física opuesta que decelere la velocidad angular del objeto o cause que el objeto se mantenga estático. Por ejemplo, si desea que un objeto tenga una velocidad angular de [0, 12, 0] en Studio
La cantidad de par que aplicas a tus objetos no solo depende de las fuerzas físicas opuestas dentro del propio ambiente, como la gravedad y la fricción, sino también del propio objeto. Por ejemplo, si tienes dos objetos del mismo tamaño que giran en el mismo eje, el objeto más grande con el mayor momento de inertia requiere más par para lograr la misma aceleración de ángulo.
Las siguientes secciones utilizan montajes de diferentes formas y tamaños para enseñarte cómo girar un objeto entero o solo una parte del objeto. Cuando experimentas con diferentes valores de propiedad, aprenderás a estimar la cantidad máxima de par que necesitas para los montajes en tus propias experiencias.
Usando Constricciones de Velocidad Angular
AngularVelocity objetos son un tipo de mover约束 que aplica el torque en toda una montaje para mantener una velocidad de ángulo constante. Para comenzar a girar la montaje, el AngularVelocity límite necesita saber:
- El punto y la dirección positiva o negativa para aplicar una fuerza angular.
- La cantidad de radianes que quieres que giren por segundo.
- La cantidad máxima de par que el motor puede aplicar para la instalación para alcanzar una velocidad de ángulo constante.
Para demostrar este proceso, agregará un bloque a su espacio de trabajo con un atributo que una referencia de límite de AngularVelocity a girar el bloque 6 radianes por segundo en el eje Y del mundo a una velocidad de giro constante, o alrededor de una rotación completa.
Añadir módulo
Puede especificar el punto fijo para girar una instalación agregando un objeto Attachment a la instalación, luego configurando la posición del conexiónen el espacio 3D. La experiencia de Objetos giratorios coloca un atributo en el centro de una parte del bloque para que el límite pueda girar el objeto contrario a la dirección del centro.
Los accesorios incluyen ayudas visuales para ayudarlo a visualizar sus ejes de rotación. La flecha amarilla muestra el eje principal del conexión, y la flecha naranja muestra el eje secundario del conexión. Mientras que ambos ejes de rotación no afectan la rotación del bloquesen los pasos de esta técnica, es importante comprender estas ayudas visuales para futuras referencias, ya que pueden ayudarlo a determinar
Para agregar un archivo conexión:
En la ventana Explorador , insértate una parte de bloque en el espacio de trabajo .
Inserta un accesorio en la nueva parte.
- En la ventana Explorador , pasa el cursor sobre la parte y haz clic en el botón ⊕. Se muestra un menú contextual.
- Del menú, inserta un Adjunto . El adjunto se muestra en el centro de la parte.
- Renombre el archivo a SpinArrow .
Configurar Con restricción
Ahora que tu bloque tiene un punto fijo para girar el bloques, puedes configurar las propiedades de un límite de AngularVelocity para especificar la dirección de rotación, el eje o los ejes para aplicar una velocidad de constante de ángulo, la cantidad de radianes que quieres que gire el bloque por segundo y la cantidad máxima de par que el motor puede aplicar para que el bloque alcance una velocidad de constante de ángulo.
La experiencia de objeto giratorio Spinning Objects aplica hasta 1000 Rowton-studs de fuerza de ángulo constante para girar el bloque 6 radianes por segundo a una velocidad de ángulo constante en el eje Y del mundo en una unidad de medida constante. Los Rowton-studs son las unidades físicas principales de Roblox para medir el torsión (mecánica). Para referirse a las unidades físicas de Roblox y cómo se
Para configurar un restricciónde AngularVelocity:
(Opcional) Haz que el límite sea visible en el espacio 3D para que puedas referenciar su dirección de rotación.
- En la barra de menú, navega a la pestaña Modelo y luego a la sección Con限り.
- Si no está actualmente habilitado, haga clic en Detalles de Conjunto para mostrar ayudas visuales de conjunto.
Inserta un AngularVelocity restricción en la parte.
- En la ventana Explorador , pasa el cursor sobre la parte, luego haz clic en el ícono⊕. Se muestra un menú contextual.
- Del menú contextual, inserta AngularVelocity . La ayuda visual del límite se muestra en el centro de la parte.
Asigna el accesorio de la parte a la nueva restricción.
- En la ventana Explorador , seleccione la restricción.
- En la ventana Propiedades ,
- Establece Attachment0 a SpinAttachment .
- Establece Velocidad de Angulo a 0, 6, 0 para girar la parte 6 radianes por segundo en el eje Y. Nota que si estableces esta propiedad a 0, -6, 0, el bloque giraría en sentido horario.
- Establece MaxTorque a 1000 para aplicar hasta 1000 Rowton-studs de fuerza de ángulo constante por segundo para lograr la velocidad de ángulo objetivo.
- Mantenga RelativoTo para Mundo para girar el bloque relativo a la posición y orientación del mundo.
Verifique la cantidad de par de torsión que ha establecido provoca que el bloque gire 6 radianes por segundo en el eje Y del mundo.
En la barra de menú, navegue a la pestaña Prueba .
En la sección Simulación, haz clic en el Selector de Modos. Se muestra un menú desplegable.
Seleccione Correr . Studio simula la experiencia en la posición de cámara actual sin tu avatar en el espacio 3D.
Es posible que deba ajustar su par de torsión dependiendo de la escala de su bloquesy cualquier fuerza física opuesta en su entorno, ambiente. Por ejemplo, las propiedades de la contrainción de AngularVelocity en la experiencia de muestra trabajan para una parte de bloque con un tamaño predeterminado de 4, 1, 2 en una plataforma plana con un material de plástico, y un entorno con la configur
Sin embargo, si tu bloque es de un tamaño más grande y en terreno de césped, necesitas aumentar tu propiedad AngularVelocity.MaxTorque porque la fuerza angular necesita superar tanto la masa como la fricción del bloquesdel entorno, ambiente. Por ejemplo, la gran parte del bloque que es cuadruple del tamaño de la parte del muestra necesita al menos 3000
Usando Confinamientos de HingeConstraint
HingeConstraint objetos son un tipo de requisito mecánico que permite que dos piezas giratorias alrededor de un eje, restringiendo las piezas a la misma posición y sus ejes principales en la misma dirección. Cuando usted establece HingeConstraint.ActuatorType a 0>Motor
Además, cuando coloca los elementos en una montura con dos objetos, los objetos se bloquean juntos y se intentan girar juntos según el eje principal fijo del conexión. Si anclas uno de estos objetos, la fuerza de ángulo continúa girando el otro objeto a una velocidad de ángulo constante mientras que el resto de la montura se mantiene estacionario.
Por ejemplo, para comenzar a girar un objeto específico dentro de una instalación, el límite de HingeConstraint necesita saber:
- La posición en la que quieres que se interponen los elementos.
- El punto y la dirección positiva o negativa para aplicar una fuerza angular.
- La cantidad de radianes que quieres que gire el objeto por segundo.
- La cantidad máxima de par que el motor puede aplicar para la conexión para alcanzar una velocidad de ángulo constante.
Para demostrar este proceso, agregará un montaje de hélice con dos objetos a su espacio de trabajo con ataduras en ambos objetos que una referencia de HingeConstraint a la hora de girar el propulsor 3 radianes por segundo (alrededor de la mitad de una rotación por segundo) alrededor de la velocidad de rotación constante de la base del propulsor.
Obtener propulsor de activo
La Tienda del Creador es una pestaña de la Caja de Herramientas que puedes usar para encontrar todos los recursos que son creados por Roblox y la comunidad de Roblox para usar en tus proyectos, incluyendo aplicación de modelado, imágenes, mallas, sonido, audio, complemento, video y fuentes de fuentes. Puedes usar la Tienda del Creador para agregar un recurso o biblioteca de recursos directamente en una experiencia abierta.
Este tutorial se refiere a un modelo de hélice que puedes usar como replicas cada paso de la técnica HingeConstraint de objetos giratorios. Puedes agregar este modelo a tu inventario dentro de Studio haciendo clic en el enlace Añadir a Inventario en el siguiente componente. Una vez que los activos estén en tu inventario, los puedes reutilizar en cualquier proyecto en la plataforma.
Para obtener esta herramienta del propulsor de tu inventario a tu experiencia:
En la barra de menú, seleccione la pestaña Ver .
En la sección Mostrar , haz clic en Caja de herramientas . La ventana Caja de herramientas se muestra.
En la ventana Caja de herramientas , haz clic en la pestaña Inventario . La pantalla de clasificación de Mis modelos muestra.
Haga clic en el Propeller mosaico. El modelo se muestra en su vista.
Configurar Accesorios
Puede especificar tanto la posición de dónde quiere que se interponen los accesorios como la dirección del movimiento de rotación para girar un objeto particular dentro de una montura agregando dos objetos Attachment a la montura, luego configurando su alineamiento y orientación en el espacio 3D.
La experiencia de Objetos giratorios ajusta dos accesorios cerca de la posición de donde el propulsor desanclado se alinean con la base, y orientan su eje principal de rotación hacia arriba para que giren en contra de las horas. La base de la base no puede girar en este ejemplo porque la base está anclada.
Para configurar los anuncios para la limitación del restricción:
Inserta un objeto Attachment en Cabeza y Base .
- En la ventana Explorador, pasa el cursor sobre Cabeza y haz clic en el botón ⊕. Se muestra un menú contextual.
- Del menú, insere un Adjunto .
- Repita este proceso para Base .
- Renombrar ambos accesorios HeadRotation y BaseRotation , respectivamente.
Gira HeadAttachment y BaseRotation para que la eje principal de cada accesorio apunte hacia arriba en el eje Y. Esto le dice a Studio que gire los accesorios en sentido contrario.
Mover BaseAttachment a la parte superior de Base , y HeadAttachment a la parte inferior de 1> Propeller1> . Esto le dice a Studio dónde conectar el hinge en sí mismo, y sobresalir ambos ataduras en tiempo de ejecución.
Configurar Con restricción
Ahora que sus accesorios tienen posición para superponerse y una dirección de movimiento de rotación, puede configurar las propiedades de un HingeConstraint límite para especificar la cantidad de radianes que desea que gire el objeto por segundo, y la cantidad máxima de torque que el motor puede aplicar para que el objeto alcance una velocidad de giro constante.
Al igual que la técnica anterior, la experiencia de objeto giratorio Spinning Objects aplica hasta 1000 Rowton-studs de fuerza de ángulo constante para girar el objeto de adherencia 3 radianes por segundo a una velocidad de ángulo constante en el eje Y. Sin embargo, debido a que la base de la atracción está en un objeto anclado, solo la atracción del propulsor puede girar.
Para configurar una limitación de restricción:
Inserta un objeto HingeConstraint en Cabeza .
- En la ventana Explorador, pasa el cursor sobre Cabeza y luego haz clic en el ícono⊕. Se muestra un menú contextual.
- Del menú contextual, inserta un HingeConstraint .
Asigne los accesorios del propulsor a la nueva restricción para que la hélice gire en relación con la base anclada.
- En la ventana Explorador , seleccione la restricción.
- En la ventana Propiedades ,
- Establece Attachment0 a BaseAppearance .
- Establece Attachment1 a HeadAttachment . El bisagra se muestra en la ventana de vista.
En la ventana Explorador , seleccione la restricción, luego en la ventana Propiedades ,
- Establece ActuatorType a Motor . Se muestran nuevos campos de propiedad.
- Establece MotorMaxTorque a 1000 para aplicar hasta 1000 Rowton-studs de fuerza de ángulo constante para lograr la velocidad de ángulo objetivo.
- Establece Velocidad de ángulo a 3 para girar la cabeza del propulsor 3 radianes por segundo.
Verifique la cantidad de par de torsión que ha establecido hace girar el propulsor 3 radianes por segundo a lo largo del eje Y.
En la barra de menú, navegue a la pestaña Prueba .
En la sección Simulación, haz clic en el Selector de Modos. Se muestra un menú desplegable.
Seleccione Correr . Studio simula la experiencia en la posición de cámara actual sin tu avatar en el espacio 3D.
Aplicando una fuerza angular inicial
Otra manera de cambiar la velocidad ángular de un objeto es aplicando un impulso de fuerza ángular. Después del impulso de la fuerza ángular, el objeto se acelera hasta que se vuelve estacionario si hay una fuerza opuesta, como la fricción, o permanece en movimiento con una velocidad constante si no hay fuerzas opuestas.
Esta técnica es útil para hacer girar objetos después de un evento de juego o clima significativo, como un fuerte ráfaga de viento, porque proporciona instantáneamente opinióna los jugadores. Para demostrar, la siguiente sección te enseña cómo hacer girar unaAssembly con una fuerza de ángulo inicial que puedes adaptar con nuevos valores para cumplir con tus propias exigencias de juego.
Usando ApplyAngularImpulse
El método ApplyAngularImpulse aplica el torque a una instalación entera para obtener una velocidad de ángulo inicial antes de ralentizar a una parada. Para comenzar a girar la instalación, el método necesita saber:
- La instalación para girar.
- El eje para aplicar el torque para alcanzar una velocidad de ángulo inicial.
- La cantidad de par de aplicar a cada eje.
Puedes definir todos estos valores en un script. Por ejemplo, el script de ejemplo define la arquitectura para girar como el padre del script, luego aplica un impulso aleatorio de fuerza de ángulo entre 0 y 100 Rowton-studs en el eje Y.
Para girar una instalación usando ApplyAngularImpulse :
Inserta una parte Esfera en el Espacio de Trabajo . La muestra usa una esfera con un MaterialVariant para que puedas ver claramente el movimiento de la esfera.
Inserta un script en la nueva parte.
- En la ventana Explorador , pasa el cursor sobre la parte y haz clic en el botón ⊕. Se muestra un menú contextual.
- Del menú, insere un Script .
Reemplace el código predeterminado con el siguiente código:
local part = script.Parentlocal impulse = Vector3.new(0, math.random(0, 100), 0)part:ApplyAngularImpulse(impulse)