Skaruts

true_sfml.py

Jul 26th, 2017
45
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.82 KB | None | 0 0
  1. import time, sfml as sf
  2.  
  3. def create_va(W, H):
  4.     global va
  5.     va.resize(W*H*4)
  6.  
  7.     for i in xrange(W):
  8.         for j in xrange(H):
  9.             INDEX = (i+j*W) *4
  10.  
  11.             va[INDEX + 0].position = sf.Vector2(  i   *W,    j   *H )
  12.             va[INDEX + 1].position = sf.Vector2( (i+1)*W,    j   *H )
  13.             va[INDEX + 2].position = sf.Vector2( (i+1)*W,   (j+1)*H )
  14.             va[INDEX + 3].position = sf.Vector2(  i   *W,   (j+1)*H )
  15.            
  16.             va[INDEX + 0].tex_coords = sf.Vector2()
  17.             va[INDEX + 1].tex_coords = sf.Vector2()
  18.             va[INDEX + 2].tex_coords = sf.Vector2()
  19.             va[INDEX + 3].tex_coords = sf.Vector2()
  20.  
  21.             va[INDEX + 0].color = sf.Color(0, 0, 0, 0)
  22.             va[INDEX + 1].color = sf.Color(0, 0, 0, 0)
  23.             va[INDEX + 2].color = sf.Color(0, 0, 0, 0)
  24.             va[INDEX + 3].color = sf.Color(0, 0, 0, 0)
  25.  
  26. def update_va(W, H):
  27.     global va
  28.     for i in xrange(W):
  29.         for j in xrange(H):
  30.             INDEX = (i+j*W) *4
  31.            
  32.             va[INDEX + 0].tex_coords = sf.Vector2()
  33.             va[INDEX + 1].tex_coords = sf.Vector2()
  34.             va[INDEX + 2].tex_coords = sf.Vector2()
  35.             va[INDEX + 3].tex_coords = sf.Vector2()
  36.  
  37.             va[INDEX + 0].color = sf.Color(0, 0, 0, 0)
  38.             va[INDEX + 1].color = sf.Color(0, 0, 0, 0)
  39.             va[INDEX + 2].color = sf.Color(0, 0, 0, 0)
  40.             va[INDEX + 3].color = sf.Color(0, 0, 0, 0)
  41.  
  42. def time_stuff():
  43.     setup_times = []
  44.     for i in xrange(passes):
  45.         start = time.time()
  46.         create_va(W, H)
  47.         setup = time.time()
  48.         setup_times.append(setup - start)
  49.    
  50.     usage_times = []
  51.     for i in xrange(passes):
  52.         start = time.time()
  53.         update_va(W, H)
  54.         usage = time.time()
  55.         usage_times.append(usage - start)
  56.  
  57.     print ("setup_times - min %.3fs, max %.3fs" % (min(setup_times), max(setup_times)))
  58.     print ("usage_times - min %.3fs, max %.3fs" % (min(usage_times), max(usage_times)))
  59.  
  60. if __name__ == '__main__':
  61.     W, H = 80, 50
  62.     passes = 7
  63.     va = sf.VertexArray( sf.PrimitiveType.QUADS )
  64.  
  65.     time_stuff()
  66.     raw_input()
Advertisement
Add Comment
Please, Sign In to add comment