RunService

O RunService pode ser usado para animações. Ele também permite o tratamento de atualizações em tempo real e controle quadro a quadro.

EventosDetalhes
HeartbeatAciona a cada quadro após a conclusão da simulação física.
PostSimulationAciona a cada quadro após a conclusão da simulação física.
PreAnimationAciona a cada quadro antes da simulação física, mas após a renderização.
PreRenderAciona a cada quadro antes do quadro ser renderizado.
PreSimulationAciona a cada quadro antes da simulação física.
RenderSteppedAciona a cada quadro antes do quadro ser renderizado.
SteppedAciona a cada quadro antes da simulação física.

RunService vs wait()

local part = Instance.new("Part")
part.Size = Vector3.new(4, 4, 4)
part.Position = Vector3.new(0, 5, 0)
part.Anchored = true
part.Parent = workspace

local speed = 5 -- studs per second

spawn(function()
    while true do
        wait(0.033) -- Approximate wait time for 30 FPS (Frame per second)
        part.Position = part.Position + Vector3.new(speed * 0.033, 0, 0)
    end
end)
wait() é menos preciso e pode variar levemente no tempo, resultando em animações menos suaves.

RunService vs TweenService

  • Ideal para animações suaves e previsíveis.
  • Melhor para transições simples de propriedades.
  • Fácil de usar com estilos de easing embutidos.
  • TweenService utiliza mecanismos semelhantes aos fornecidos pelo RunService para garantir animações suaves, incluindo o uso de delta time para interpolação de propriedades independente de quadro.
  • Adequado para atualizações dinâmicas em tempo real.
  • Permite controle quadro a quadro.
  • Versátil para diversas tarefas além das animações.
  • RenderStepped está vinculado ao processo de renderização, que ocorre no lado do cliente, sendo restrito a LocalScripts.

Exemplo de Caso de Uso do RunService

ExemplosDetalhes
Custom Render LogicGUIs 3D: Crie e atualize elementos GUI 3D que devem seguir partes ou personagens no mundo do jogo.
Player-Exclusive FeaturesMecânicas de Jogo Local: Implemente recursos ou mecânicas que devem afetar apenas o jogador local, como efeitos de partículas ou mudanças na iluminação.
Camera ManipulationControle Dinâmico da Câmera: Atualize suavemente a posição, orientação ou foco da câmera com base nas ações do jogador ou eventos do jogo para criar uma experiência mais imersiva.

Se você achou este tutorial útil e gostaria de apoiar meu trabalho, por favor, considere me comprar um café.

Muito obrigado pelo seu apoio!

Me compre um café