rs.spec revision 707aaf341a4b068e6ccadf923af85acdd85fd775
1326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 2326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 3326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindRootScript { 4326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsScript sampler 5326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 6326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 7326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramFragmentStore { 8326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsProgramFragmentStore pgm 9326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 10326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 11326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramFragment { 12326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsProgramFragment pgm 13326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 14326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 15326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsContextBindProgramVertex { 16326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsProgramVertex pgm 17326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 18326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 1957b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoContextSetDefineF { 2057b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param const char* name 2157b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param float value 2257b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato } 2357b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato 2457b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoContextSetDefineI32 { 2557b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param const char* name 2657b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param int32_t value 2757b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato } 2857b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato 29a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason SamsAssignName { 30a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams param void *obj 31a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams param const char *name 32a4a54e42fc710a62b47cbcb9d64c34a190429d9eJason Sams param size_t len 33a0a1b6fbece2eb8d72d788422ab3e5f58d5a9216Jason Sams } 34326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 35707aaf341a4b068e6ccadf923af85acdd85fd775Jason SamsObjDestroy { 36707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams param void *obj 37707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams } 38707aaf341a4b068e6ccadf923af85acdd85fd775Jason Sams 39326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementBegin { 40326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams} 41326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 42326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementAddPredefined { 43326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElementPredefined predef 44326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 45326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 46326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementAdd { 47326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsDataKind dataKind 48326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsDataType dataType 49326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool isNormalized 50326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param size_t bits 518b2c065dfc16c148e2829a19e83d2269b9bcd4ccJason Sams param const char * name 52326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 53326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 54326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementCreate { 55326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsElement 56326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 57326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 58326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsElementGetPredefined { 59326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElementPredefined predef 60326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsElement 61326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 62326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 63326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeBegin { 64326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement type 65326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 66326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 67326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeAdd { 68326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsDimension dim 69326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param size_t value 70326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 71326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 72326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTypeCreate { 73326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsType 74326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 75326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 76326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateTyped { 77326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsType type 78326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsAllocation 79326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 80326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 81326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreatePredefSized { 82326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElementPredefined predef 83326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param size_t count 84326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsAllocation 85326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 86326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 87326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationCreateSized { 88326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement e 89326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param size_t count 90326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsAllocation 91326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 92326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 936678e9b2568ad041429a2477177133fe4932159fJason SamsAllocationCreateFromFile { 94326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const char *file 95326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool genMips 96326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsAllocation 97326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 98326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 996678e9b2568ad041429a2477177133fe4932159fJason SamsAllocationCreateFromBitmap { 1006678e9b2568ad041429a2477177133fe4932159fJason Sams param uint32_t width 1016678e9b2568ad041429a2477177133fe4932159fJason Sams param uint32_t height 1026678e9b2568ad041429a2477177133fe4932159fJason Sams param RsElementPredefined dstFmt 1036678e9b2568ad041429a2477177133fe4932159fJason Sams param RsElementPredefined srcFmt 1046678e9b2568ad041429a2477177133fe4932159fJason Sams param bool genMips 1056678e9b2568ad041429a2477177133fe4932159fJason Sams param const void * data 1066678e9b2568ad041429a2477177133fe4932159fJason Sams ret RsAllocation 1076678e9b2568ad041429a2477177133fe4932159fJason Sams } 1086678e9b2568ad041429a2477177133fe4932159fJason Sams 109c9d43db4d216b01b13aebfdb31d5615909591b33Jason SamsAllocationCreateFromBitmapBoxed { 110c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams param uint32_t width 111c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams param uint32_t height 112c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams param RsElementPredefined dstFmt 113c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams param RsElementPredefined srcFmt 114c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams param bool genMips 115c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams param const void * data 116c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams ret RsAllocation 117c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams } 118c9d43db4d216b01b13aebfdb31d5615909591b33Jason Sams 1196678e9b2568ad041429a2477177133fe4932159fJason Sams 120326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToTexture { 121326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation alloc 122326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t baseMipLevel 123326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 124326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 125326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationUploadToBufferObject { 126326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation alloc 127326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 128326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 129326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 130326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocationData { 131326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation va 132326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void * data 133d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams } 134326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 135326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation1DSubData { 136326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation va 137326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t xoff 138326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t count 139326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void *data 140d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams } 141326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 142326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAllocation2DSubData { 143326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation va 144326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t xoff 145326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t yoff 146326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t w 147326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t h 148326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void *data 149326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 150326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 151e579df42e85d9e00f53c42ef1b78dbd209dba989Jason SamsAllocationRead { 152e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams param RsAllocation va 153e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams param void * data 154e579df42e85d9e00f53c42ef1b78dbd209dba989Jason Sams } 155326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 156326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DCreate { 157326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsAdapter1D 158326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 159326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 160326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DBindAllocation { 161326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter1D adapt 162326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation alloc 163326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 164326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 165326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSetConstraint { 166326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter1D adapter 167326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsDimension dim 168326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t value 169326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 170326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 171326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DData { 172326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter1D adapter 173326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void * data 174d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams } 175326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 176326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter1DSubData { 177326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter1D adapter 178326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t xoff 179326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t count 180326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void *data 181d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams } 182326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 183326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DCreate { 184326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsAdapter2D 185326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 186326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 187326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DBindAllocation { 188326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter2D adapt 189326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation alloc 190326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 191326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 192326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSetConstraint { 193326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter2D adapter 194326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsDimension dim 195326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t value 196326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 197326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 198326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DData { 199326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter2D adapter 200326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void *data 201d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams } 202326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 203326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsAdapter2DSubData { 204326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAdapter2D adapter 205326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t xoff 206326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t yoff 207326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t w 208326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t h 209326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void *data 210326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 211326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 212326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerBegin { 213326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 214326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 215326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerSet { 216326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsSamplerParam p 217326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsSamplerValue value 218326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 219326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 220326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsSamplerCreate { 221326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsSampler 222326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 223326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 224326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 225326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshBegin { 226326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement vertex 227326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement index 228326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 229326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 230326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshAddVertex { 231326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param const void *vtx 232326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 233326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 234326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshAddTriangle { 235326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t idx1 236326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t idx2 237326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t idx3 238326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 239326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 240326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshCreate { 241326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsTriangleMesh 242326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 243326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 244326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 245326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshRender { 246326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsTriangleMesh vtm 247326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 248326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 249326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsTriangleMeshRenderRange { 250326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsTriangleMesh vtm 251326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t start 252326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t count 253326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 254326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 255326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 256326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptBindAllocation { 257326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsScript vtm 258326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation va 259326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t slot 260326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 261326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 262326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 263326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCBegin { 264326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 265326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 266d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearColor { 267d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams param RsScript s 268326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param float r 269326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param float g 270326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param float b 271326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param float a 272326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 273326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 274d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetTimeZone { 275d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams param RsScript s 27698e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy param const char * timeZone 27798e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy param uint32_t length 27898e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy } 27998e10fd7438f2e925e7fb5c2ec97c1f8cc583634Romain Guy 280d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearDepth { 281d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams param RsScript s 282326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param float depth 283326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 284326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 285d34b725ac1752f5a234c7643a0b65245591ea1ccJason SamsScriptSetClearStencil { 286d34b725ac1752f5a234c7643a0b65245591ea1ccJason Sams param RsScript s 287326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t stencil 288326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 289326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 290fa51719e6c1bd17b3f347477b4827face9ab647eJason SamsScriptSetType { 291326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsType type 292fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams param uint32_t slot 29390b36a88cf0cc549b296ac15a249ea7786c6de9eJason Sams param bool isWritable 294fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams param const char * name 295326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 296326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 297fa51719e6c1bd17b3f347477b4827face9ab647eJason SamsScriptSetRoot { 298326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool isRoot 299326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 300326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 301fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams 302fa51719e6c1bd17b3f347477b4827face9ab647eJason Sams 303326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCSetScript { 3041ef8b80bc49f415b93912fe7335f852953bde4a4Jack Palevich param void * codePtr 305326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 306326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 3071f52633fefd1862451e6a30209d590680d02beecJason SamsScriptCSetText { 3081f52633fefd1862451e6a30209d590680d02beecJason Sams param const char * text 3091f52633fefd1862451e6a30209d590680d02beecJason Sams param uint32_t length 3101f52633fefd1862451e6a30209d590680d02beecJason Sams } 3111f52633fefd1862451e6a30209d590680d02beecJason Sams 312326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsScriptCCreate { 313326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsScript 314326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 315326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 31657b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineF { 31757b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param const char* name 31857b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param float value 31957b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato } 32057b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato 32157b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe OnoratoScriptCSetDefineI32 { 32257b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param const char* name 32357b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato param int32_t value 32457b79ceb1126e3797fa42367b97dd7bcfcda1ed9Joe Onorato } 325326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 326326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBegin { 327326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement in 328326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement out 329326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 330326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 331326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreColorMask { 332326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool r 333326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool g 334326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool b 335326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool a 336326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 337326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 338326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreBlendFunc { 339326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsBlendSrcFunc srcFunc 340326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsBlendDstFunc destFunc 341326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 342326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 343326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthMask { 344326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool enable 345326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams} 346326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 347326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDither { 348326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool enable 349326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams} 350326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 351326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreDepthFunc { 352326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsDepthFunc func 353326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams} 354326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 355326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentStoreCreate { 356326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsProgramFragmentStore 357326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 358326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 359326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 360326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 361326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBegin { 362326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement in 363326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement out 364326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 365326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 366326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindTexture { 367326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsProgramFragment pf 368326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t slot 369326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation a 370326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 371326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 372326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentBindSampler { 373326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsProgramFragment pf 374326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t slot 375326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsSampler s 376326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 377326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 378326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentSetType { 379326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t slot 380326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsType t 381326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 382326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 383326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentSetEnvMode { 384326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t slot 385326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsTexEnvMode env 386326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 387326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 388326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentSetTexEnable { 389326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param uint32_t slot 390326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool enable 391326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 392326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 393326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramFragmentCreate { 394326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsProgramFragment 395326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 396326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 397326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 398326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBegin { 399326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement in 400326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsElement out 401326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 402326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 403326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexCreate { 404326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams ret RsProgramVertex 405326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 406326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 407326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexBindAllocation { 408326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsProgramVertex vpgm 409326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param RsAllocation constants 410326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 411326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 412326e0ddf89e8df2837752fbfd7a014814b32082cJason SamsProgramVertexSetTextureMatrixEnable { 413326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams param bool enable 414326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams } 415326e0ddf89e8df2837752fbfd7a014814b32082cJason Sams 416b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason SamsProgramVertexAddLight { 417b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams param RsLight light 418b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams } 419b5909ce06dd10dcb5ac715572a05b2d225b77c98Jason Sams 42062bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightBegin { 42162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams } 42262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 42362bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetLocal { 42462bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param bool isLocal 42562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams } 42662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 42762bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetMonochromatic { 42862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param bool isMono 42962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams } 43062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 43162bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightCreate { 43262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams ret RsLight light 43362bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams } 43462bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 43562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 43662bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetPosition { 43762bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param RsLight light 43862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param float x 43962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param float y 44062bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param float z 44162bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams } 44262bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 44362bc1db27ba17f7eed0a6dfb639da7326753b268Jason SamsLightSetColor { 44462bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param RsLight light 44562bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param float r 44662bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param float g 44762bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams param float b 44862bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams } 44962bc1db27ba17f7eed0a6dfb639da7326753b268Jason Sams 450a5597fcd411badad50c1345b3eca26453da45bbbJason SamsFileOpen { 451a5597fcd411badad50c1345b3eca26453da45bbbJason Sams ret RsFile 452a5597fcd411badad50c1345b3eca26453da45bbbJason Sams param const char *name 453a5597fcd411badad50c1345b3eca26453da45bbbJason Sams param size_t len 454a5597fcd411badad50c1345b3eca26453da45bbbJason Sams } 455a5597fcd411badad50c1345b3eca26453da45bbbJason Sams 456a5597fcd411badad50c1345b3eca26453da45bbbJason Sams 457e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshCreate { 458e5ffb879ae535a899a486285a23bea05e912480fJason Sams ret RsSimpleMesh 459e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsAllocation prim 460e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsAllocation index 461e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsAllocation *vtx 462e5ffb879ae535a899a486285a23bea05e912480fJason Sams param uint32_t vtxCount 463e5ffb879ae535a899a486285a23bea05e912480fJason Sams param uint32_t primType 464e5ffb879ae535a899a486285a23bea05e912480fJason Sams } 465e5ffb879ae535a899a486285a23bea05e912480fJason Sams 466e5ffb879ae535a899a486285a23bea05e912480fJason Sams 467e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindIndex { 468e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsSimpleMesh mesh 469e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsAllocation idx 470e5ffb879ae535a899a486285a23bea05e912480fJason Sams } 471e5ffb879ae535a899a486285a23bea05e912480fJason Sams 472e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindPrimitive { 473e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsSimpleMesh mesh 474e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsAllocation prim 475e5ffb879ae535a899a486285a23bea05e912480fJason Sams } 476e5ffb879ae535a899a486285a23bea05e912480fJason Sams 477e5ffb879ae535a899a486285a23bea05e912480fJason SamsSimpleMeshBindVertex { 478e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsSimpleMesh mesh 479e5ffb879ae535a899a486285a23bea05e912480fJason Sams param RsAllocation vtx 480e5ffb879ae535a899a486285a23bea05e912480fJason Sams param uint32_t slot 481e5ffb879ae535a899a486285a23bea05e912480fJason Sams } 482e5ffb879ae535a899a486285a23bea05e912480fJason Sams 483