Browse Source

python/retrace: Dump constants.

tags/mesa_20090313
José Fonseca 16 years ago
parent
commit
59ae12b5b1
1 changed files with 15 additions and 2 deletions
  1. 15
    2
      src/gallium/state_trackers/python/retrace/interpreter.py

+ 15
- 2
src/gallium/state_trackers/python/retrace/interpreter.py View File

@@ -28,6 +28,8 @@


import sys
import struct

import gallium
import model
import parser
@@ -206,7 +208,8 @@ class Winsys(Object):
4,
gallium.PIPE_BUFFER_USAGE_CPU_READ |
gallium.PIPE_BUFFER_USAGE_CPU_WRITE )
buffer.write(data, size)
assert size == len(data)
buffer.write(data)
return buffer
def buffer_create(self, alignment, usage, size):
@@ -216,7 +219,8 @@ class Winsys(Object):
pass
def buffer_write(self, buffer, data, size):
buffer.write(data, size)
assert size == len(data)
buffer.write(data)
def fence_finish(self, fence, flags):
pass
@@ -369,6 +373,15 @@ class Context(Object):
if state is not None:
self.real.set_constant_buffer(shader, index, state.buffer)

if 1:
data = state.buffer.read()
format = '4f'
index = 0
for offset in range(0, len(data), struct.calcsize(format)):
x, y, z, w = struct.unpack_from(format, data, offset)
sys.stdout.write('\tCONST[%2u] = {%10.4f, %10.4f, %10.4f, %10.4f}\n' % (index, x, y, z, w))
index += 1

def set_framebuffer_state(self, state):
_state = gallium.Framebuffer()
_state.width = state.width

Loading…
Cancel
Save