RPGXP 스크립트
2013.09.27 02:21

FPS 표시 스크립트

조회 수 1166 추천 수 0 댓글 7
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 수정 삭제
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 수정 삭제


Graphics.frame_rate = 60
class FPS_Display
 
  #===CONFIGURATION===#
    TOGGLE = Input::F5
  #=END CONFIGURATION=#
 
  attr_accessor :frame_count
 
        def initialize
   
                # Create Sprite to display FPS
                @counter = Sprite.new
   
                # Position Sprite
                @counter.x, @counter.z = 500, 99999999
   
                # Create / Setup Bitmap
                @counter.bitmap = Bitmap.new(200, 24)
                #@counter.bitmap.fill_rect(0, 0, 200, 24, Color.new(0, 0, 0))
                @counter.bitmap.font.size = 15
                @counter.bitmap.font.name = '나눔고딕'
                @counter.bitmap.font.bold = true
                #@counter.bitmap.draw_text(100, 0, 100, 24, ' fps')
   
                # Get Target Frame Rate
                @frame_rate = Graphics.frame_rate
   
                # Set Start time
                @start = nil
                @on = true
                @frame_count = 0
                @fps = @frame_rate
                refresh
   
        end
       
        def refresh
   
                # Clear FPS
                #@counter.bitmap.fill_rect(0, 0, 100, 24, Color.new(0,0,0))
                @counter.bitmap.clear
                # Redraw Current FPS
                @counter.bitmap.font.color = Color.new(0,0,0,120)
                @counter.bitmap.draw_text(100-1, 0, 100, 24, ' fps')
                @counter.bitmap.draw_text(100-1, -1, 100, 24, ' fps')
                @counter.bitmap.draw_text(100-1, +1, 100, 24, ' fps')
                @counter.bitmap.draw_text(100+1, -1, 100, 24, ' fps')
                @counter.bitmap.draw_text(100+1, 1, 100, 24, ' fps')
                @counter.bitmap.draw_text(100+1, 0, 100, 24, ' fps')
                @counter.bitmap.draw_text(100, 1, 100, 24, ' fps')
                @counter.bitmap.draw_text(100, -1, 100, 24, ' fps')
                @counter.bitmap.draw_text(-1, 0, 100, 24, @fps.to_s ,2)
                @counter.bitmap.draw_text(1, 0, 100, 24, @fps.to_s ,2)
                @counter.bitmap.draw_text(0, 1, 100, 24, @fps.to_s ,2)
                @counter.bitmap.draw_text(1, -1, 100, 24, @fps.to_s ,2)
                @counter.bitmap.draw_text(1, -1, 100, 24, @fps.to_s ,2)
                @counter.bitmap.draw_text(1, 1, 100, 24, @fps.to_s ,2)
                @counter.bitmap.draw_text(-1, -1, 100, 24, @fps.to_s ,2)
                @counter.bitmap.draw_text(-1, 1, 100, 24, @fps.to_s ,2)
                @counter.bitmap.font.color = Color.new(255,255,255)
                 @counter.bitmap.draw_text(100, 0, 100, 24, ' fps')
                @counter.bitmap.draw_text(0, 0, 100, 24, @fps.to_s ,2)#+ " / " +
                      #@frame_rate.to_s, 2)
   
        end
               
        def update
   
                # If F5 is pressed, toggle FPS display
                if Input.trigger?(TOGGLE)
                        @on = !@on
                        @counter.visible = @on
                end
   
               (@frame_count = 0; return) if !@on
               if @start == nil
                 @start = Time.now
                 @frame_count = 0
               end
               # Get time elapsed in seconds
               cur_time = Time.now - @start
   
               if cur_time >= 1
               # Get Frames per second
               fps = (@frame_count / cur_time).to_i
   
               # If during check interval and the Frame Rate has changed
               if @fps != fps
                  @fps = fps
                  refresh
                end
                @start = nil
        end
   
        end
       
        def dispose
   
                @counter.dispose; @counter = nil
   
        end
 
end

module Graphics
 
  class << self
   
    alias :new_upd_fps :update unless method_defined?(:new_upd_fps)
   
  end
 
  def self.update
   
    self.new_upd_fps
    $fps = FPS_Display.new if $fps == nil
    #return if $fps == nil
   
    $fps.frame_count += 1
    $fps.update
   
  end
 
end

?

  1. 일시정지 스크립트

    Date2013.09.29 CategoryRPGXP 스크립트 By청담 Views929 Votes0
    Read More
  2. 셀프 스위치 조작

    Date2013.09.29 CategoryRPGXP 스크립트 By청담 Views656 Votes0
    Read More
  3. HBGames.ORG::Motion Blur

    Date2013.09.27 CategoryRPGXP 스크립트 By죽은노예 Views771 Votes0
    Read More
  4. 횡스크롤 스크립트

    Date2013.09.27 CategoryRPGXP 스크립트 By 운 Views1107 Votes0
    Read More
  5. FPS 표시 스크립트

    Date2013.09.27 CategoryRPGXP 스크립트 By 운 Views1166 Votes0
    Read More
  6. 안티 렉 스크립트

    Date2013.09.26 CategoryRPGXP 스크립트 By Views3327 Votes1
    Read More
  7. 2D 마인크래프트 프로젝트

    Date2013.09.26 CategoryRPGXP 스크립트 By Views3048 Votes2
    Read More
  8. 정지 모션 스크립트

    Date2013.09.26 CategoryRPGXP 스크립트 By Views713 Votes1
    Read More
  9. 모든 글자에 외곽선을 넣어주는 스크립트

    Date2013.09.26 CategoryRPGXP 스크립트 By Views808 Votes1
    Read More
  10. 아이템 소지수 무제한 스크립트

    Date2013.09.24 CategoryRPGXP 스크립트 By청담 Views1001 Votes0
    Read More
  11. 메뉴에서 실제시간 보는 스크립트

    Date2013.09.24 CategoryRPGXP 스크립트 By청담 Views607 Votes0
    Read More
  12. 장비제련 스크립트

    Date2013.09.24 CategoryRPGXP 스크립트 By청담 Views1024 Votes0
    Read More
  13. 맵 이동시 로딩 그림 표시 스크립트

    Date2013.09.24 CategoryRPGXP 스크립트 By청담 Views716 Votes0
    Read More
  14. 커다란 그래픽 좁은 길 못지나가는 스크립트

    Date2013.09.24 CategoryRPGXP 스크립트 By청담 Views866 Votes0
    Read More
  15. 복권 스크립트

    Date2013.09.24 CategoryRPGXP 스크립트 By청담 Views925 Votes0
    Read More
  16. 창고 시스템

    Date2013.09.24 CategoryRPGXP 스크립트 By청담 Views984 Votes0
    Read More
  17. 레벨업시 전회복 스크립트

    Date2013.09.24 CategoryRPGXP 스크립트 By청담 Views685 Votes0
    Read More
  18. 대화 글씨가 한글자씩 나오는 스크립트

    Date2013.09.24 CategoryRPGXP 스크립트 By청담 Views1415 Votes0
    Read More
  19. 간단한 여관 스크립트

    Date2013.09.24 CategoryRPGXP 스크립트 By청담 Views909 Votes0
    Read More
  20. 자동으로 장애물을 피해가는 스크립트

    Date2013.09.24 CategoryRPGXP 스크립트 By청담 Views860 Votes0
    Read More
Board Pagination Prev 1 ... 4 5 6 7 8 9 10 11 12 13 ... 15 Next
/ 15






[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)