ShaderBinding.js 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. function ShaderBinding() {
  2. if(arguments[0] != "__skip_ptr__") {
  3. this.__ptr = Polycode.ShaderBinding()
  4. }
  5. Object.defineProperties(this, {
  6. 'accessMutex': { enumerable: true, configurable: true, get: ShaderBinding.prototype.__get_accessMutex, set: ShaderBinding.prototype.__set_accessMutex}
  7. })
  8. }
  9. ShaderBinding.prototype.__get_accessMutex = function() {
  10. var retVal = new CoreMutex()
  11. retVal.__ptr = Polycode.ShaderBinding__get_accessMutex(this.__ptr)
  12. return retVal
  13. }
  14. ShaderBinding.prototype.__set_accessMutex = function(val) {
  15. Polycode.ShaderBinding__set_accessMutex(this.__ptr, val.__ptr)
  16. }
  17. Duktape.fin(ShaderBinding.prototype, function (x) {
  18. if (x === ShaderBinding.prototype) {
  19. return;
  20. }
  21. Polycode.ShaderBinding__delete(x.__ptr)
  22. })
  23. ShaderBinding.prototype.copyTo = function(targetBinding) {
  24. Polycode.ShaderBinding_copyTo(this.__ptr, targetBinding.__ptr)
  25. }
  26. ShaderBinding.prototype.addParam = function(type,name) {
  27. var retVal = new LocalShaderParam()
  28. retVal.__ptr = Polycode.ShaderBinding_addParam(this.__ptr, type, name)
  29. return retVal
  30. }
  31. ShaderBinding.prototype.addParamPointer = function(type,name,ptr) {
  32. var retVal = new LocalShaderParam()
  33. retVal.__ptr = Polycode.ShaderBinding_addParamPointer(this.__ptr, type, name, ptr.__ptr)
  34. return retVal
  35. }
  36. ShaderBinding.prototype.addParamFromData = function(name,data) {
  37. var retVal = new LocalShaderParam()
  38. retVal.__ptr = Polycode.ShaderBinding_addParamFromData(this.__ptr, name, data)
  39. return retVal
  40. }
  41. ShaderBinding.prototype.getNumLocalParams = function() {
  42. return Polycode.ShaderBinding_getNumLocalParams(this.__ptr)
  43. }
  44. ShaderBinding.prototype.getLocalParam = function(index) {
  45. var retVal = new LocalShaderParam()
  46. retVal.__ptr = Polycode.ShaderBinding_getLocalParam(this.__ptr, index)
  47. return retVal
  48. }
  49. ShaderBinding.prototype.getLocalParamByName = function(name) {
  50. var retVal = new LocalShaderParam()
  51. retVal.__ptr = Polycode.ShaderBinding_getLocalParamByName(this.__ptr, name)
  52. return retVal
  53. }
  54. ShaderBinding.prototype.removeParam = function(name) {
  55. Polycode.ShaderBinding_removeParam(this.__ptr, name)
  56. }
  57. ShaderBinding.prototype.loadTextureForParam = function(paramName,fileName) {
  58. var retVal = new Texture()
  59. retVal.__ptr = Polycode.ShaderBinding_loadTextureForParam(this.__ptr, paramName, fileName)
  60. return retVal
  61. }
  62. ShaderBinding.prototype.setTextureForParam = function(paramName,texture) {
  63. Polycode.ShaderBinding_setTextureForParam(this.__ptr, paramName, texture)
  64. }
  65. ShaderBinding.prototype.setCubemapForParam = function(paramName,cubemap) {
  66. Polycode.ShaderBinding_setCubemapForParam(this.__ptr, paramName, cubemap)
  67. }
  68. ShaderBinding.prototype.getNumAttributeBindings = function() {
  69. return Polycode.ShaderBinding_getNumAttributeBindings(this.__ptr)
  70. }
  71. ShaderBinding.prototype.getAttributeBinding = function(index) {
  72. var retVal = new AttributeBinding()
  73. retVal.__ptr = Polycode.ShaderBinding_getAttributeBinding(this.__ptr, index)
  74. return retVal
  75. }
  76. ShaderBinding.prototype.addAttributeBinding = function(name,dataArray) {
  77. var retVal = new AttributeBinding()
  78. retVal.__ptr = Polycode.ShaderBinding_addAttributeBinding(this.__ptr, name, dataArray.__ptr)
  79. return retVal
  80. }
  81. ShaderBinding.prototype.getAttributeBindingByName = function(name) {
  82. var retVal = new AttributeBinding()
  83. retVal.__ptr = Polycode.ShaderBinding_getAttributeBindingByName(this.__ptr, name)
  84. return retVal
  85. }
  86. ShaderBinding.prototype.addRenderTargetBinding = function(binding) {
  87. Polycode.ShaderBinding_addRenderTargetBinding(this.__ptr, binding.__ptr)
  88. }
  89. ShaderBinding.prototype.removeRenderTargetBinding = function(binding) {
  90. Polycode.ShaderBinding_removeRenderTargetBinding(this.__ptr, binding.__ptr)
  91. }
  92. ShaderBinding.prototype.getNumRenderTargetBindings = function() {
  93. return Polycode.ShaderBinding_getNumRenderTargetBindings(this.__ptr)
  94. }
  95. ShaderBinding.prototype.getRenderTargetBinding = function(index) {
  96. var retVal = new RenderTargetBinding()
  97. retVal.__ptr = Polycode.ShaderBinding_getRenderTargetBinding(this.__ptr, index)
  98. return retVal
  99. }
  100. ShaderBinding.prototype.getNumInTargetBindings = function() {
  101. return Polycode.ShaderBinding_getNumInTargetBindings(this.__ptr)
  102. }
  103. ShaderBinding.prototype.getInTargetBinding = function(index) {
  104. var retVal = new RenderTargetBinding()
  105. retVal.__ptr = Polycode.ShaderBinding_getInTargetBinding(this.__ptr, index)
  106. return retVal
  107. }
  108. ShaderBinding.prototype.getNumColorTargetBindings = function() {
  109. return Polycode.ShaderBinding_getNumColorTargetBindings(this.__ptr)
  110. }
  111. ShaderBinding.prototype.getColorTargetBinding = function(index) {
  112. var retVal = new RenderTargetBinding()
  113. retVal.__ptr = Polycode.ShaderBinding_getColorTargetBinding(this.__ptr, index)
  114. return retVal
  115. }
  116. ShaderBinding.prototype.getNumDepthTargetBindings = function() {
  117. return Polycode.ShaderBinding_getNumDepthTargetBindings(this.__ptr)
  118. }
  119. ShaderBinding.prototype.getDepthTargetBinding = function(index) {
  120. var retVal = new RenderTargetBinding()
  121. retVal.__ptr = Polycode.ShaderBinding_getDepthTargetBinding(this.__ptr, index)
  122. return retVal
  123. }
  124. ShaderBinding.prototype.getNumOutTargetBindings = function() {
  125. return Polycode.ShaderBinding_getNumOutTargetBindings(this.__ptr)
  126. }
  127. ShaderBinding.prototype.getOutTargetBinding = function(index) {
  128. var retVal = new RenderTargetBinding()
  129. retVal.__ptr = Polycode.ShaderBinding_getOutTargetBinding(this.__ptr, index)
  130. return retVal
  131. }