GPUDrawBuffer.lua 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. class "GPUDrawBuffer"
  2. function GPUDrawBuffer:__getvar(name)
  3. if name == "projectionMatrix" then
  4. local retVal = Polycode.GPUDrawBuffer_get_projectionMatrix(self.__ptr)
  5. if retVal == nil then return nil end
  6. local __c = _G["Matrix4"]("__skip_ptr__")
  7. __c.__ptr = retVal
  8. return __c
  9. elseif name == "viewMatrix" then
  10. local retVal = Polycode.GPUDrawBuffer_get_viewMatrix(self.__ptr)
  11. if retVal == nil then return nil end
  12. local __c = _G["Matrix4"]("__skip_ptr__")
  13. __c.__ptr = retVal
  14. return __c
  15. elseif name == "cameraMatrix" then
  16. local retVal = Polycode.GPUDrawBuffer_get_cameraMatrix(self.__ptr)
  17. if retVal == nil then return nil end
  18. local __c = _G["Matrix4"]("__skip_ptr__")
  19. __c.__ptr = retVal
  20. return __c
  21. elseif name == "clearColor" then
  22. local retVal = Polycode.GPUDrawBuffer_get_clearColor(self.__ptr)
  23. if retVal == nil then return nil end
  24. local __c = _G["Color"]("__skip_ptr__")
  25. __c.__ptr = retVal
  26. return __c
  27. elseif name == "clearDepthBuffer" then
  28. return Polycode.GPUDrawBuffer_get_clearDepthBuffer(self.__ptr)
  29. elseif name == "clearColorBuffer" then
  30. return Polycode.GPUDrawBuffer_get_clearColorBuffer(self.__ptr)
  31. elseif name == "backingResolutionScale" then
  32. local retVal = Polycode.GPUDrawBuffer_get_backingResolutionScale(self.__ptr)
  33. if retVal == nil then return nil end
  34. local __c = _G["Vector2"]("__skip_ptr__")
  35. __c.__ptr = retVal
  36. return __c
  37. elseif name == "viewport" then
  38. local retVal = Polycode.GPUDrawBuffer_get_viewport(self.__ptr)
  39. if retVal == nil then return nil end
  40. local __c = _G["Rectangle"]("__skip_ptr__")
  41. __c.__ptr = retVal
  42. return __c
  43. elseif name == "shadowMapPass" then
  44. return Polycode.GPUDrawBuffer_get_shadowMapPass(self.__ptr)
  45. end
  46. end
  47. function GPUDrawBuffer:__setvar(name,value)
  48. if name == "projectionMatrix" then
  49. Polycode.GPUDrawBuffer_set_projectionMatrix(self.__ptr, value.__ptr)
  50. return true
  51. elseif name == "viewMatrix" then
  52. Polycode.GPUDrawBuffer_set_viewMatrix(self.__ptr, value.__ptr)
  53. return true
  54. elseif name == "cameraMatrix" then
  55. Polycode.GPUDrawBuffer_set_cameraMatrix(self.__ptr, value.__ptr)
  56. return true
  57. elseif name == "clearColor" then
  58. Polycode.GPUDrawBuffer_set_clearColor(self.__ptr, value.__ptr)
  59. return true
  60. elseif name == "clearDepthBuffer" then
  61. Polycode.GPUDrawBuffer_set_clearDepthBuffer(self.__ptr, value)
  62. return true
  63. elseif name == "clearColorBuffer" then
  64. Polycode.GPUDrawBuffer_set_clearColorBuffer(self.__ptr, value)
  65. return true
  66. elseif name == "backingResolutionScale" then
  67. Polycode.GPUDrawBuffer_set_backingResolutionScale(self.__ptr, value.__ptr)
  68. return true
  69. elseif name == "viewport" then
  70. Polycode.GPUDrawBuffer_set_viewport(self.__ptr, value.__ptr)
  71. return true
  72. elseif name == "shadowMapPass" then
  73. Polycode.GPUDrawBuffer_set_shadowMapPass(self.__ptr, value)
  74. return true
  75. end
  76. return false
  77. end
  78. function GPUDrawBuffer:GPUDrawBuffer(...)
  79. local arg = {...}
  80. for k,v in pairs(arg) do
  81. if type(v) == "table" then
  82. if v.__ptr ~= nil then
  83. arg[k] = v.__ptr
  84. end
  85. end
  86. end
  87. if self.__ptr == nil and arg[1] ~= "__skip_ptr__" then
  88. self.__ptr = Polycode.GPUDrawBuffer(unpack(arg))
  89. end
  90. end
  91. function GPUDrawBuffer:__delete()
  92. if self then Polycode.delete_GPUDrawBuffer(self.__ptr) end
  93. end