rd_samp.py 859 B

1234567891011121314
  1. import os, renderdoc as rd
  2. out=open(os.environ['OUT'],'w')
  3. cap=rd.OpenCaptureFile(); cap.OpenFile(os.environ['CAP'],'',None)
  4. st,ctl=cap.OpenCapture(rd.ReplayOptions(),None)
  5. for eid in [int(x) for x in os.environ['EIDS'].split(',')]:
  6. ctl.SetFrameEvent(eid,True)
  7. s=ctl.GetPipelineState()
  8. for sm in s.GetSamplers(rd.ShaderStage.Fragment):
  9. d=sm.sampler
  10. out.write('%d slot=%d filter=%s/%s/%s addr=%s %s lod=[%s,%s] bias=%s aniso=%s\n'%(eid,sm.access.index,d.filter.minify,d.filter.magnify,d.filter.mip,d.addressU,d.addressV,d.minLOD,d.maxLOD,d.mipBias,d.maxAnisotropy))
  11. for ro in s.GetReadOnlyResources(rd.ShaderStage.Fragment):
  12. dd=ro.descriptor
  13. out.write(' tex slot=%d res=%s firstMip=%d numMips=%d\n'%(ro.access.index,dd.resource,dd.firstMip,dd.numMips))
  14. ctl.Shutdown(); cap.Shutdown(); out.close(); os._exit(0)