Opa! To disponibilizando uma coisa que eu acho que é util...
Dei uma pesquisada antes de postar e não achei algo parecido então vou postar o meu.
Só colar o script acima do 'Main'.
Vlw, flw!
Dei uma pesquisada antes de postar e não achei algo parecido então vou postar o meu.
Só colar o script acima do 'Main'.
Vlw, flw!
- 'Script':
- Código:
#===============================================================================
# ** MEDIDOR FPS
#------------------------------------------------------------------------------
# Autor: Atos do Amaral
#===============================================================================
#--------------------------------------------------------------------------
# * Incluir atualização e definição do medidor
#--------------------------------------------------------------------------
module Graphics
class << self
unless self.method_defined?(:update_fps)
alias_method(:update_fps, :update)
end
def update(*args)
@fps = MEDIDOR_FPS.new if @fps == nil
@fps.update if @fps != nil
update_fps(*args)
end
end
end
#--------------------------------------------------------------------------
# * Exibição do FPS como texto
#--------------------------------------------------------------------------
class MEDIDOR_FPS < Sprite
def initialize
super()
self.x = 0 #POSICAO X
self.y = 0 #POSICAO Y
self.z = 999 #PRIORIDADE
@frame = 0
@fps = "..." #Texto inicial (enquanto não definido o fps)
@texto = "FPS "
self.bitmap = Bitmap.new(50, 30)
self.bitmap.font.name = "Calibri"
self.bitmap.font.size = 14
@texto_width = self.bitmap.text_size(@texto).width
@texto_height = self.bitmap.text_size(@texto).height
@start = 0
self.opacity = 0
self.visible = true
desenhar
end
#--------------------------------------------------------------------------
# * Exibição do texto em si
#--------------------------------------------------------------------------
def desenhar
self.bitmap.clear
self.bitmap.font.color = Color.new(0, 0, 0, 255)
self.bitmap.draw_text(1, 1, 50, 20, @texto+" #{@fps}", 1)
self.bitmap.font.color = Color.new(255, 255, 255, 255)
self.bitmap.draw_text(0, 0, 50, 20, @texto+" #{@fps}", 1)
end
#--------------------------------------------------------------------------
# * Atualização do Frame
#--------------------------------------------------------------------------
def update
super()
self.opacity += 3 if self.opacity < 255
if @start == 0
@start = Time.now #Time.now é a hora neste instante
@frame = 0
end
@frame += 1
cur_time = Time.now - @start
if cur_time >= 1
fps = (@frame / cur_time).to_i
#desenha novamente se alterado
if @fps != fps
@fps = fps-1
@fps = 0 if @fps < 0
desenhar
end
@start = 0
end
end
end
Última edição por atosamaral em Ter Ago 14, 2018 4:33 pm, editado 2 vez(es) (Motivo da edição : Adicionado "sombra" no texto.)