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.

Procurando mais ferramentas úteis para aumentar sua produtividade?

Explorar Mais Ferramentas

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é