Física Básica

La física de Roblox permite a los desarrolladores crear interacciones y movimientos realistas dentro de sus juegos. Comprender y manipular los componentes de física puede mejorar en gran medida la jugabilidad y la inmersión.

ComponentesDescripciónCaso de uso
BodyForceAplica una fuerza constante a una parte.Simulando empuje continuo, como un motor de cohete.
BodyVelocityMantiene una velocidad especificada ajustando la fuerza aplicada.Manteniendo un vehículo o plataforma en movimiento a una velocidad constante.
BodyPositionMueve una parte a una posición especificada y la mantiene allí.Creando una parte que se mueve a una posición objetivo y se mantiene, como un ascensor.
BodyGyroMantiene la orientación de una parte usando torque.Estabilizando la rotación de una parte, como mantener un cohete en posición vertical.
BodyAngularVelocityAplica una velocidad de rotación constante a una parte.Rotando una parte a una velocidad constante, como un ventilador giratorio.

Ejemplos de Física Básica

BodyVelocity

Este componente aplica una fuerza continua para mantener una velocidad específica en una dirección elegida, anulando otras fuerzas que actúan sobre la parte.
Image 1
Roblox Studio
local parentPart = script.Parent -- Reference to the parent part

local velocity = Instance.new("BodyVelocity")
velocity.Velocity = Vector3.new(0, 50, 0) -- Move upward 
velocity.MaxForce = Vector3.new(0, 10000, 0) -- Apply force on Y axes
velocity.Parent = parentPart -- Apply the BodyVelocity to the parent part

Velocidad

Esto establece una velocidad inicial hacia arriba. La velocidad disminuirá con el tiempo debido a fuerzas externas como la gravedad y la fricción.
Image 1
Roblox Studio
local parentPart = script.Parent -- Reference to the parent part

parentPart.Velocity = Vector3.new(0, 50, 0) -- Move upward

BodyForce

Este componente aplica una fuerza continua en una dirección específica, a menudo utilizado para contrarrestar la gravedad o simular una aceleración constante. A diferencia de BodyVelocity, no controla directamente la velocidad, sino que influye en el movimiento al agregar una fuerza consistente.
Image 1
Roblox Studio
local parentPart = script.Parent -- Reference to the parent part

local force = Instance.new("BodyForce")
force.Force = Vector3.new(0, 5000, 0) -- Apply upward force of 5000 on the Y-axis
force.Parent = parentPart -- Apply the BodyForce to the parent part

BodyGyro

Este componente aplica fuerza continuamente para mover la parte a la posición especificada y mantenerla allí, anulando cualquier fuerza externa.
Image 1
Roblox Studio
local parentPart = script.Parent -- Reference to the parent part

local gyro = Instance.new("BodyGyro")
gyro.CFrame = CFrame.Angles(math.rad(45), math.rad(30), 0) -- Desired rotation
gyro.MaxTorque = Vector3.new(4000, 4000, 4000) -- Maximum torque applied on each axis
gyro.P = 3000 -- Power
gyro.Parent = parentPart -- Apply the BodyGyro to the parent part

BodyPosition

Este componente aplica fuerza continuamente para mover la parte a la posición especificada y mantenerla allí, contrarrestando cualquier fuerza externa.
Image 1
Roblox Studio
local parentPart = script.Parent -- Reference to the parent part

local position = Instance.new("BodyPosition")
position.Position = Vector3.new(0, 5, 0) -- Target position
position.MaxForce = Vector3.new(4000, 4000, 4000) -- Maximum force applied to reach the target position
position.D = 1000 -- Damping
position.P = 5000 -- Power
position.Parent = parentPart -- Apply the BodyPosition to the parent part

BodyAngularVelocity

Este componente aplica torque continuamente para mantener una velocidad de rotación constante alrededor del eje Y, anulando cualquier fuerza resistiva.
Image 1
Roblox Studio
local parentPart = script.Parent -- Reference to the parent part

local angularVelocity = Instance.new("BodyAngularVelocity")
angularVelocity.AngularVelocity = Vector3.new(0, 2, 0) -- Rotate around Y-axis
angularVelocity.MaxTorque = Vector3.new(0, 10000, 0) -- Maximum torque applied
angularVelocity.Parent = parentPart -- Apply the BodyAngularVelocity to the parent part

Si encuentras útil este tutorial y deseas apoyar mi trabajo, considera invitarme a un café.

¡Muchas gracias por tu apoyo!

Invítame a un café