SHOW:
|
|
- or go back to the newest paste.
| 1 | import time, sfml as sf | |
| 2 | ||
| 3 | def time_stuff(): | |
| 4 | setup_times = [] | |
| 5 | for i in xrange(passes): | |
| 6 | start = time.time() | |
| 7 | create_va(W, H) | |
| 8 | end = time.time() | |
| 9 | setup_times.append(end - start) | |
| 10 | ||
| 11 | usage_times = [] | |
| 12 | for i in xrange(passes): | |
| 13 | start = time.time() | |
| 14 | update_va(W, H) | |
| 15 | end = time.time() | |
| 16 | usage_times.append(end - start) | |
| 17 | ||
| 18 | print ("setup_times - min %.3fs, max %.3fs" % (min(setup_times), max(setup_times)))
| |
| 19 | print ("usage_times - min %.3fs, max %.3fs" % (min(usage_times), max(usage_times)))
| |
| 20 | ||
| 21 | def create_va(W, H): | |
| 22 | global va | |
| 23 | va.resize(W*H*4) | |
| 24 | ||
| 25 | for i in xrange(W): | |
| 26 | for j in xrange(H): | |
| 27 | INDEX = (i+j*W) *4 | |
| 28 | ||
| 29 | va[INDEX + 0].position = sf.Vector2( i *W, j *H ) | |
| 30 | va[INDEX + 1].position = sf.Vector2( (i+1)*W, j *H ) | |
| 31 | va[INDEX + 2].position = sf.Vector2( (i+1)*W, (j+1)*H ) | |
| 32 | va[INDEX + 3].position = sf.Vector2( i *W, (j+1)*H ) | |
| 33 | ||
| 34 | va[INDEX + 0].tex_coords = sf.Vector2() | |
| 35 | va[INDEX + 1].tex_coords = sf.Vector2() | |
| 36 | va[INDEX + 2].tex_coords = sf.Vector2() | |
| 37 | va[INDEX + 3].tex_coords = sf.Vector2() | |
| 38 | ||
| 39 | va[INDEX + 0].color = sf.Color(0, 0, 0, 0) | |
| 40 | va[INDEX + 1].color = sf.Color(0, 0, 0, 0) | |
| 41 | va[INDEX + 2].color = sf.Color(0, 0, 0, 0) | |
| 42 | va[INDEX + 3].color = sf.Color(0, 0, 0, 0) | |
| 43 | ||
| 44 | def update_va(W, H): | |
| 45 | global va | |
| 46 | for i in xrange(W): | |
| 47 | - | setup = time.time() |
| 47 | + | |
| 48 | - | setup_times.append(setup - start) |
| 48 | + | |
| 49 | ||
| 50 | va[INDEX + 0].tex_coords = sf.Vector2() | |
| 51 | va[INDEX + 1].tex_coords = sf.Vector2() | |
| 52 | va[INDEX + 2].tex_coords = sf.Vector2() | |
| 53 | va[INDEX + 3].tex_coords = sf.Vector2() | |
| 54 | - | usage = time.time() |
| 54 | + | |
| 55 | - | usage_times.append(usage - start) |
| 55 | + | |
| 56 | va[INDEX + 1].color = sf.Color(0, 0, 0, 0) | |
| 57 | va[INDEX + 2].color = sf.Color(0, 0, 0, 0) | |
| 58 | va[INDEX + 3].color = sf.Color(0, 0, 0, 0) | |
| 59 | ||
| 60 | ||
| 61 | if __name__ == '__main__': | |
| 62 | W, H = 80, 50 | |
| 63 | passes = 7 | |
| 64 | va = sf.VertexArray( sf.PrimitiveType.QUADS ) | |
| 65 | ||
| 66 | time_stuff() | |
| 67 | raw_input() |