@next2d/webgl 1.18.12 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (590) hide show
  1. package/package.json +11 -18
  2. package/src/AtlasManager/service/AtlasManagerCreateNodeService.d.ts +12 -0
  3. package/src/AtlasManager/service/AtlasManagerCreateNodeService.js +27 -0
  4. package/src/AtlasManager/service/AtlasManagerRemoveNodeService.d.ts +11 -0
  5. package/src/AtlasManager/service/AtlasManagerRemoveNodeService.js +17 -0
  6. package/src/AtlasManager/usecase/AtlasManagerResetUseCase.d.ts +9 -0
  7. package/src/AtlasManager/usecase/AtlasManagerResetUseCase.js +19 -0
  8. package/src/AtlasManager.d.ts +132 -0
  9. package/src/AtlasManager.js +228 -0
  10. package/src/BezierConverter/service/BezierConverterSplit2CubicService.d.ts +19 -0
  11. package/src/BezierConverter/service/BezierConverterSplit2CubicService.js +41 -0
  12. package/src/BezierConverter/service/BezierConverterSplit2QuadService.d.ts +18 -0
  13. package/src/BezierConverter/service/BezierConverterSplit2QuadService.js +31 -0
  14. package/src/BezierConverter/usecase/BezierConverterCubicToQuadUseCase.d.ts +17 -0
  15. package/src/BezierConverter/usecase/BezierConverterCubicToQuadUseCase.js +29 -0
  16. package/src/BezierConverter.d.ts +8 -0
  17. package/src/BezierConverter.js +8 -0
  18. package/src/Bitmap.d.ts +8 -0
  19. package/src/Bitmap.js +8 -0
  20. package/src/Blend/service/BlendAddService.d.ts +9 -0
  21. package/src/Blend/service/BlendAddService.js +16 -0
  22. package/src/Blend/service/BlendAlphaService.d.ts +9 -0
  23. package/src/Blend/service/BlendAlphaService.js +16 -0
  24. package/src/Blend/service/BlendEraseService.d.ts +9 -0
  25. package/src/Blend/service/BlendEraseService.js +16 -0
  26. package/src/Blend/service/BlendOneZeroService.d.ts +9 -0
  27. package/src/Blend/service/BlendOneZeroService.js +16 -0
  28. package/src/Blend/service/BlendResetService.d.ts +9 -0
  29. package/src/Blend/service/BlendResetService.js +16 -0
  30. package/src/Blend/service/BlendScreenService.d.ts +9 -0
  31. package/src/Blend/service/BlendScreenService.js +16 -0
  32. package/src/Blend/service/BlendSourceAtopService.d.ts +9 -0
  33. package/src/Blend/service/BlendSourceAtopService.js +16 -0
  34. package/src/Blend/service/BlendSourceInService.d.ts +9 -0
  35. package/src/Blend/service/BlendSourceInService.js +16 -0
  36. package/src/Blend/usecase/BlendBootUseCase.d.ts +9 -0
  37. package/src/Blend/usecase/BlendBootUseCase.js +14 -0
  38. package/src/Blend/usecase/BlendDrawFilterToMainUseCase.d.ts +14 -0
  39. package/src/Blend/usecase/BlendDrawFilterToMainUseCase.js +79 -0
  40. package/src/Blend/usecase/BlendOperationUseCase.d.ts +11 -0
  41. package/src/Blend/usecase/BlendOperationUseCase.js +37 -0
  42. package/src/Blend/usecase/BlnedClearArraysInstancedUseCase.d.ts +9 -0
  43. package/src/Blend/usecase/BlnedClearArraysInstancedUseCase.js +13 -0
  44. package/src/Blend/usecase/BlnedDrawArraysInstancedUseCase.d.ts +9 -0
  45. package/src/Blend/usecase/BlnedDrawArraysInstancedUseCase.js +24 -0
  46. package/src/Blend/usecase/BlnedDrawDisplayObjectUseCase.d.ts +16 -0
  47. package/src/Blend/usecase/BlnedDrawDisplayObjectUseCase.js +159 -0
  48. package/src/Blend.d.ts +39 -0
  49. package/src/Blend.js +64 -0
  50. package/src/ColorBufferObject/service/ColorBufferObjectCreateService.d.ts +10 -0
  51. package/src/ColorBufferObject/service/ColorBufferObjectCreateService.js +27 -0
  52. package/src/ColorBufferObject/service/ColorBufferObjectMeguruBinarySearchService.d.ts +10 -0
  53. package/src/ColorBufferObject/service/ColorBufferObjectMeguruBinarySearchService.js +24 -0
  54. package/src/ColorBufferObject/usecase/ColorBufferObjectAcquireObjectUseCase.d.ts +11 -0
  55. package/src/ColorBufferObject/usecase/ColorBufferObjectAcquireObjectUseCase.js +28 -0
  56. package/src/ColorBufferObject/usecase/ColorBufferObjectGetColorBufferObjectUseCase.d.ts +12 -0
  57. package/src/ColorBufferObject/usecase/ColorBufferObjectGetColorBufferObjectUseCase.js +32 -0
  58. package/src/ColorBufferObject/usecase/ColorBufferObjectReleaseColorBufferObjectUseCase.d.ts +11 -0
  59. package/src/ColorBufferObject/usecase/ColorBufferObjectReleaseColorBufferObjectUseCase.js +19 -0
  60. package/src/ColorBufferObject.d.ts +9 -0
  61. package/src/ColorBufferObject.js +8 -0
  62. package/src/Context/service/ContextBeginNodeRenderingService.d.ts +13 -0
  63. package/src/Context/service/ContextBeginNodeRenderingService.js +22 -0
  64. package/src/Context/service/ContextCreateImageBitmapService.d.ts +11 -0
  65. package/src/Context/service/ContextCreateImageBitmapService.js +58 -0
  66. package/src/Context/service/ContextEndNodeRenderingService.d.ts +9 -0
  67. package/src/Context/service/ContextEndNodeRenderingService.js +12 -0
  68. package/src/Context/service/ContextFillBackgroundColorService.d.ts +13 -0
  69. package/src/Context/service/ContextFillBackgroundColorService.js +18 -0
  70. package/src/Context/service/ContextResetService.d.ts +11 -0
  71. package/src/Context/service/ContextResetService.js +14 -0
  72. package/src/Context/service/ContextResetStyleService.d.ts +11 -0
  73. package/src/Context/service/ContextResetStyleService.js +13 -0
  74. package/src/Context/service/ContextRestoreService.d.ts +11 -0
  75. package/src/Context/service/ContextRestoreService.js +23 -0
  76. package/src/Context/service/ContextSaveService.d.ts +11 -0
  77. package/src/Context/service/ContextSaveService.js +13 -0
  78. package/src/Context/service/ContextSetTransformService.d.ts +16 -0
  79. package/src/Context/service/ContextSetTransformService.js +23 -0
  80. package/src/Context/service/ContextTransformService.d.ts +17 -0
  81. package/src/Context/service/ContextTransformService.js +29 -0
  82. package/src/Context/service/ContextUpdateAllTransferBoundsService.d.ts +11 -0
  83. package/src/Context/service/ContextUpdateAllTransferBoundsService.js +21 -0
  84. package/src/Context/service/ContextUpdateBackgroundColorService.d.ts +15 -0
  85. package/src/Context/service/ContextUpdateBackgroundColorService.js +20 -0
  86. package/src/Context/service/ContextUpdateTransferBoundsService.d.ts +11 -0
  87. package/src/Context/service/ContextUpdateTransferBoundsService.js +21 -0
  88. package/src/Context/service/ContextUseGridService.d.ts +10 -0
  89. package/src/Context/service/ContextUseGridService.js +14 -0
  90. package/src/Context/usecase/ContextApplyFilterUseCase.d.ts +21 -0
  91. package/src/Context/usecase/ContextApplyFilterUseCase.js +200 -0
  92. package/src/Context/usecase/ContextBindUseCase.d.ts +13 -0
  93. package/src/Context/usecase/ContextBindUseCase.js +42 -0
  94. package/src/Context/usecase/ContextBitmapFillUseCase.d.ts +15 -0
  95. package/src/Context/usecase/ContextBitmapFillUseCase.js +31 -0
  96. package/src/Context/usecase/ContextBitmapStrokeUseCase.d.ts +15 -0
  97. package/src/Context/usecase/ContextBitmapStrokeUseCase.js +31 -0
  98. package/src/Context/usecase/ContextClearRectUseCase.d.ts +13 -0
  99. package/src/Context/usecase/ContextClearRectUseCase.js +20 -0
  100. package/src/Context/usecase/ContextClipUseCase.d.ts +9 -0
  101. package/src/Context/usecase/ContextClipUseCase.js +66 -0
  102. package/src/Context/usecase/ContextDrawElementUseCase.d.ts +12 -0
  103. package/src/Context/usecase/ContextDrawElementUseCase.js +26 -0
  104. package/src/Context/usecase/ContextDrawFillUseCase.d.ts +9 -0
  105. package/src/Context/usecase/ContextDrawFillUseCase.js +69 -0
  106. package/src/Context/usecase/ContextDrawPixelsUseCase.d.ts +12 -0
  107. package/src/Context/usecase/ContextDrawPixelsUseCase.js +26 -0
  108. package/src/Context/usecase/ContextFillUseCase.d.ts +10 -0
  109. package/src/Context/usecase/ContextFillUseCase.js +23 -0
  110. package/src/Context/usecase/ContextGradientFillUseCase.d.ts +15 -0
  111. package/src/Context/usecase/ContextGradientFillUseCase.js +34 -0
  112. package/src/Context/usecase/ContextGradientStrokeUseCase.d.ts +15 -0
  113. package/src/Context/usecase/ContextGradientStrokeUseCase.js +34 -0
  114. package/src/Context/usecase/ContextLinearGradientFillUseCase.d.ts +14 -0
  115. package/src/Context/usecase/ContextLinearGradientFillUseCase.js +56 -0
  116. package/src/Context/usecase/ContextNormalFillUseCase.d.ts +14 -0
  117. package/src/Context/usecase/ContextNormalFillUseCase.js +42 -0
  118. package/src/Context/usecase/ContextPatternBitmapFillUseCase.d.ts +14 -0
  119. package/src/Context/usecase/ContextPatternBitmapFillUseCase.js +55 -0
  120. package/src/Context/usecase/ContextRadialGradientFillUseCase.d.ts +14 -0
  121. package/src/Context/usecase/ContextRadialGradientFillUseCase.js +59 -0
  122. package/src/Context/usecase/ContextResizeUseCase.d.ts +14 -0
  123. package/src/Context/usecase/ContextResizeUseCase.js +43 -0
  124. package/src/Context/usecase/ContextStrokeUseCase.d.ts +9 -0
  125. package/src/Context/usecase/ContextStrokeUseCase.js +22 -0
  126. package/src/Context.d.ts +697 -0
  127. package/src/Context.js +993 -0
  128. package/src/Filter/BevelFilter/usecase/FilterApplyBevelFilterUseCase.d.ts +22 -0
  129. package/src/Filter/BevelFilter/usecase/FilterApplyBevelFilterUseCase.js +105 -0
  130. package/src/Filter/BitmapFilter/usecase/FilterApplyBitmapFilterUseCase.d.ts +37 -0
  131. package/src/Filter/BitmapFilter/usecase/FilterApplyBitmapFilterUseCase.js +108 -0
  132. package/src/Filter/BlurFilter/usecase/FilterApplyBlurFilterUseCase.d.ts +16 -0
  133. package/src/Filter/BlurFilter/usecase/FilterApplyBlurFilterUseCase.js +134 -0
  134. package/src/Filter/BlurFilter/usecase/FilterApplyDirectionalBlurFilterUseCase.d.ts +13 -0
  135. package/src/Filter/BlurFilter/usecase/FilterApplyDirectionalBlurFilterUseCase.js +24 -0
  136. package/src/Filter/ColorMatrixFilter/usecase/FilterApplyColorMatrixFilterUseCase.d.ts +12 -0
  137. package/src/Filter/ColorMatrixFilter/usecase/FilterApplyColorMatrixFilterUseCase.js +38 -0
  138. package/src/Filter/ConvolutionFilter/usecase/FilterApplyConvolutionFilterUseCase.d.ts +20 -0
  139. package/src/Filter/ConvolutionFilter/usecase/FilterApplyConvolutionFilterUseCase.js +49 -0
  140. package/src/Filter/DisplacementMapFilter/usecase/FilterApplyDisplacementMapFilterUseCase.d.ts +24 -0
  141. package/src/Filter/DisplacementMapFilter/usecase/FilterApplyDisplacementMapFilterUseCase.js +59 -0
  142. package/src/Filter/DropShadowFilter/usecase/FilterApplyDropShadowFilterUseCase.d.ts +23 -0
  143. package/src/Filter/DropShadowFilter/usecase/FilterApplyDropShadowFilterUseCase.js +84 -0
  144. package/src/Filter/GlowFilter/usecase/FilterApplyGlowFilterUseCase.d.ts +20 -0
  145. package/src/Filter/GlowFilter/usecase/FilterApplyGlowFilterUseCase.js +51 -0
  146. package/src/Filter/GradientBevelFilter/usecase/FilterApplyGradientBevelFilterUseCase.d.ts +23 -0
  147. package/src/Filter/GradientBevelFilter/usecase/FilterApplyGradientBevelFilterUseCase.js +105 -0
  148. package/src/Filter/GradientGlowFilter/usecase/FilterApplyGradientGlowFilterUseCase.d.ts +23 -0
  149. package/src/Filter/GradientGlowFilter/usecase/FilterApplyGradientGlowFilterUseCase.js +81 -0
  150. package/src/Filter.d.ts +45 -0
  151. package/src/Filter.js +53 -0
  152. package/src/FrameBufferManager/service/FrameBufferManagerBindAttachmentObjectService.d.ts +11 -0
  153. package/src/FrameBufferManager/service/FrameBufferManagerBindAttachmentObjectService.js +29 -0
  154. package/src/FrameBufferManager/service/FrameBufferManagerCreateAttachmentObjectService.d.ts +10 -0
  155. package/src/FrameBufferManager/service/FrameBufferManagerCreateAttachmentObjectService.js +26 -0
  156. package/src/FrameBufferManager/service/FrameBufferManagerTransferAtlasTextureService.d.ts +9 -0
  157. package/src/FrameBufferManager/service/FrameBufferManagerTransferAtlasTextureService.js +44 -0
  158. package/src/FrameBufferManager/service/FrameBufferManagerTransferMainCanvasService.d.ts +9 -0
  159. package/src/FrameBufferManager/service/FrameBufferManagerTransferMainCanvasService.js +24 -0
  160. package/src/FrameBufferManager/service/FrameBufferManagerUnBindAttachmentObjectService.d.ts +9 -0
  161. package/src/FrameBufferManager/service/FrameBufferManagerUnBindAttachmentObjectService.js +17 -0
  162. package/src/FrameBufferManager/usecase/FrameBufferManagerGetAttachmentObjectUseCase.d.ts +13 -0
  163. package/src/FrameBufferManager/usecase/FrameBufferManagerGetAttachmentObjectUseCase.js +41 -0
  164. package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromBoundsUseCase.d.ts +14 -0
  165. package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromBoundsUseCase.js +41 -0
  166. package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromNodeUseCase.d.ts +12 -0
  167. package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromNodeUseCase.js +38 -0
  168. package/src/FrameBufferManager/usecase/FrameBufferManagerReleaseAttachmentObjectUseCase.d.ts +12 -0
  169. package/src/FrameBufferManager/usecase/FrameBufferManagerReleaseAttachmentObjectUseCase.js +30 -0
  170. package/src/FrameBufferManager/usecase/FrameBufferManagerTransferTextureFromRectUseCase.d.ts +11 -0
  171. package/src/FrameBufferManager/usecase/FrameBufferManagerTransferTextureFromRectUseCase.js +25 -0
  172. package/src/FrameBufferManager.d.ts +147 -0
  173. package/src/FrameBufferManager.js +229 -0
  174. package/src/Gradient.d.ts +8 -0
  175. package/src/Gradient.js +8 -0
  176. package/src/Grid.d.ts +14 -0
  177. package/src/Grid.js +16 -0
  178. package/src/Mask/service/MaskBeginMaskService.d.ts +9 -0
  179. package/src/Mask/service/MaskBeginMaskService.js +27 -0
  180. package/src/Mask/service/MaskEndMaskService.d.ts +9 -0
  181. package/src/Mask/service/MaskEndMaskService.js +26 -0
  182. package/src/Mask/service/MaskSetMaskBoundsService.d.ts +13 -0
  183. package/src/Mask/service/MaskSetMaskBoundsService.js +26 -0
  184. package/src/Mask/service/MaskUnionMaskService.d.ts +9 -0
  185. package/src/Mask/service/MaskUnionMaskService.js +32 -0
  186. package/src/Mask/usecase/MaskBindUseCase.d.ts +10 -0
  187. package/src/Mask/usecase/MaskBindUseCase.js +25 -0
  188. package/src/Mask/usecase/MaskLeaveMaskUseCase.d.ts +9 -0
  189. package/src/Mask/usecase/MaskLeaveMaskUseCase.js +53 -0
  190. package/src/Mask.d.ts +29 -0
  191. package/src/Mask.js +42 -0
  192. package/src/Mesh/service/MeshCalculateNormalVectorService.d.ts +13 -0
  193. package/src/Mesh/service/MeshCalculateNormalVectorService.js +18 -0
  194. package/src/Mesh/service/MeshCalculateNormalizeBezierService.d.ts +11 -0
  195. package/src/Mesh/service/MeshCalculateNormalizeBezierService.js +15 -0
  196. package/src/Mesh/service/MeshFillGenerateService.d.ts +23 -0
  197. package/src/Mesh/service/MeshFillGenerateService.js +197 -0
  198. package/src/Mesh/service/MeshFindOverlappingPathsService.d.ts +13 -0
  199. package/src/Mesh/service/MeshFindOverlappingPathsService.js +28 -0
  200. package/src/Mesh/service/MeshGenerateCalculateRoundCapService.d.ts +13 -0
  201. package/src/Mesh/service/MeshGenerateCalculateRoundCapService.js +51 -0
  202. package/src/Mesh/service/MeshGenerateCalculateSquareCapService.d.ts +13 -0
  203. package/src/Mesh/service/MeshGenerateCalculateSquareCapService.js +64 -0
  204. package/src/Mesh/service/MeshGetQuadraticBezierPointService.d.ts +14 -0
  205. package/src/Mesh/service/MeshGetQuadraticBezierPointService.js +18 -0
  206. package/src/Mesh/service/MeshGetQuadraticBezierTangentService.d.ts +14 -0
  207. package/src/Mesh/service/MeshGetQuadraticBezierTangentService.js +18 -0
  208. package/src/Mesh/service/MeshIsPointInsideRectangleService.d.ts +12 -0
  209. package/src/Mesh/service/MeshIsPointInsideRectangleService.js +35 -0
  210. package/src/Mesh/service/MeshLerpService.d.ts +13 -0
  211. package/src/Mesh/service/MeshLerpService.js +17 -0
  212. package/src/Mesh/usecase/MeshApproximateOffsetQuadraticUseCase.d.ts +14 -0
  213. package/src/Mesh/usecase/MeshApproximateOffsetQuadraticUseCase.js +35 -0
  214. package/src/Mesh/usecase/MeshCalculateCurveRectangleUseCase.d.ts +15 -0
  215. package/src/Mesh/usecase/MeshCalculateCurveRectangleUseCase.js +51 -0
  216. package/src/Mesh/usecase/MeshCalculateLineRectangleUseCase.d.ts +14 -0
  217. package/src/Mesh/usecase/MeshCalculateLineRectangleUseCase.js +42 -0
  218. package/src/Mesh/usecase/MeshFillGenerateUseCase.d.ts +12 -0
  219. package/src/Mesh/usecase/MeshFillGenerateUseCase.js +42 -0
  220. package/src/Mesh/usecase/MeshGenerateCalculateBevelJoinUseCase.d.ts +15 -0
  221. package/src/Mesh/usecase/MeshGenerateCalculateBevelJoinUseCase.js +40 -0
  222. package/src/Mesh/usecase/MeshGenerateCalculateMiterJoinUseCase.d.ts +17 -0
  223. package/src/Mesh/usecase/MeshGenerateCalculateMiterJoinUseCase.js +70 -0
  224. package/src/Mesh/usecase/MeshGenerateCalculateRoundJoinUseCase.d.ts +15 -0
  225. package/src/Mesh/usecase/MeshGenerateCalculateRoundJoinUseCase.js +51 -0
  226. package/src/Mesh/usecase/MeshGenerateStrokeOutlineUseCase.d.ts +12 -0
  227. package/src/Mesh/usecase/MeshGenerateStrokeOutlineUseCase.js +108 -0
  228. package/src/Mesh/usecase/MeshSplitBezierMultipleTimesUseCase.d.ts +14 -0
  229. package/src/Mesh/usecase/MeshSplitBezierMultipleTimesUseCase.js +32 -0
  230. package/src/Mesh/usecase/MeshSplitQuadraticBezierUseCase.d.ts +14 -0
  231. package/src/Mesh/usecase/MeshSplitQuadraticBezierUseCase.js +28 -0
  232. package/src/Mesh/usecase/MeshStrokeGenerateUseCase.d.ts +12 -0
  233. package/src/Mesh/usecase/MeshStrokeGenerateUseCase.js +21 -0
  234. package/src/Mesh.d.ts +64 -0
  235. package/src/Mesh.js +103 -0
  236. package/src/PathCommand/service/PathCommandBeginPathService.d.ts +9 -0
  237. package/src/PathCommand/service/PathCommandBeginPathService.js +16 -0
  238. package/src/PathCommand/service/PathCommandCreateRectVerticesService.d.ts +14 -0
  239. package/src/PathCommand/service/PathCommandCreateRectVerticesService.js +16 -0
  240. package/src/PathCommand/service/PathCommandEqualsToLastPointService.d.ts +11 -0
  241. package/src/PathCommand/service/PathCommandEqualsToLastPointService.js +17 -0
  242. package/src/PathCommand/service/PathCommandPushCurrentPathToVerticesService.d.ts +10 -0
  243. package/src/PathCommand/service/PathCommandPushCurrentPathToVerticesService.js +19 -0
  244. package/src/PathCommand/service/PathCommandPushPointToCurrentPathService.d.ts +12 -0
  245. package/src/PathCommand/service/PathCommandPushPointToCurrentPathService.js +15 -0
  246. package/src/PathCommand/usecase/PathCommandArcUseCase.d.ts +12 -0
  247. package/src/PathCommand/usecase/PathCommandArcUseCase.js +20 -0
  248. package/src/PathCommand/usecase/PathCommandBezierCurveToUseCase.d.ts +15 -0
  249. package/src/PathCommand/usecase/PathCommandBezierCurveToUseCase.js +34 -0
  250. package/src/PathCommand/usecase/PathCommandClosePathUseCase.d.ts +9 -0
  251. package/src/PathCommand/usecase/PathCommandClosePathUseCase.js +22 -0
  252. package/src/PathCommand/usecase/PathCommandLineToUseCase.d.ts +11 -0
  253. package/src/PathCommand/usecase/PathCommandLineToUseCase.js +26 -0
  254. package/src/PathCommand/usecase/PathCommandMoveToUseCase.d.ts +13 -0
  255. package/src/PathCommand/usecase/PathCommandMoveToUseCase.js +31 -0
  256. package/src/PathCommand/usecase/PathCommandQuadraticCurveToUseCase.d.ts +13 -0
  257. package/src/PathCommand/usecase/PathCommandQuadraticCurveToUseCase.js +26 -0
  258. package/src/PathCommand.d.ts +27 -0
  259. package/src/PathCommand.js +31 -0
  260. package/src/Shader/Fragment/Filter/FragmentShaderSourceBlurFilter.d.ts +7 -0
  261. package/{dist/shader/fragment/filter → src/Shader/Fragment/Filter}/FragmentShaderSourceBlurFilter.js +9 -16
  262. package/src/Shader/Fragment/Filter/FragmentShaderSourceColorMatrixFilter.d.ts +6 -0
  263. package/{dist/shader/fragment/filter → src/Shader/Fragment/Filter}/FragmentShaderSourceColorMatrixFilter.js +7 -14
  264. package/src/Shader/Fragment/Filter/FragmentShaderSourceConvolutionFilter.d.ts +11 -0
  265. package/src/Shader/Fragment/Filter/FragmentShaderSourceConvolutionFilter.js +72 -0
  266. package/src/Shader/Fragment/Filter/FragmentShaderSourceDisplacementMapFilter.d.ts +10 -0
  267. package/src/Shader/Fragment/Filter/FragmentShaderSourceDisplacementMapFilter.js +99 -0
  268. package/src/Shader/Fragment/Filter/FragmentShaderSourceFilter.d.ts +15 -0
  269. package/src/Shader/Fragment/Filter/FragmentShaderSourceFilter.js +273 -0
  270. package/src/Shader/Fragment/FragmentShaderLibrary.d.ts +19 -0
  271. package/src/Shader/Fragment/FragmentShaderLibrary.js +34 -0
  272. package/src/Shader/Fragment/FragmentShaderSource.d.ts +45 -0
  273. package/src/Shader/Fragment/FragmentShaderSource.js +114 -0
  274. package/src/Shader/Fragment/FragmentShaderSourceBlend.d.ts +8 -0
  275. package/src/Shader/Fragment/FragmentShaderSourceBlend.js +285 -0
  276. package/src/Shader/Fragment/FragmentShaderSourceGradient.d.ts +11 -0
  277. package/src/Shader/Fragment/FragmentShaderSourceGradient.js +102 -0
  278. package/src/Shader/Fragment/FragmentShaderSourceGradientLUT.d.ts +12 -0
  279. package/src/Shader/Fragment/FragmentShaderSourceGradientLUT.js +53 -0
  280. package/src/Shader/Fragment/FragmentShaderSourceTexture.d.ts +13 -0
  281. package/src/Shader/Fragment/FragmentShaderSourceTexture.js +59 -0
  282. package/src/Shader/GradientLUTGenerator/service/GradientLUTSetFilterUniformService.d.ts +16 -0
  283. package/src/Shader/GradientLUTGenerator/service/GradientLUTSetFilterUniformService.js +30 -0
  284. package/src/Shader/GradientLUTGenerator/service/GradientLUTSetUniformService.d.ts +15 -0
  285. package/src/Shader/GradientLUTGenerator/service/GradientLUTSetUniformService.js +29 -0
  286. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateFilterTextureUseCase.d.ts +13 -0
  287. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateFilterTextureUseCase.js +37 -0
  288. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateShapeTextureUseCase.d.ts +12 -0
  289. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateShapeTextureUseCase.js +44 -0
  290. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGeneratorFillTextureUseCase.d.ts +13 -0
  291. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGeneratorFillTextureUseCase.js +20 -0
  292. package/src/Shader/GradientLUTGenerator.d.ts +36 -0
  293. package/src/Shader/GradientLUTGenerator.js +60 -0
  294. package/src/Shader/ShaderInstancedManager/usecase/ShaderInstancedManagerDrawArraysInstancedUseCase.d.ts +11 -0
  295. package/src/Shader/ShaderInstancedManager/usecase/ShaderInstancedManagerDrawArraysInstancedUseCase.js +20 -0
  296. package/src/Shader/ShaderInstancedManager.d.ts +32 -0
  297. package/src/Shader/ShaderInstancedManager.js +43 -0
  298. package/src/Shader/ShaderManager/service/ShaderManagerBindUniformService.d.ts +11 -0
  299. package/src/Shader/ShaderManager/service/ShaderManagerBindUniformService.js +23 -0
  300. package/src/Shader/ShaderManager/service/ShaderManagerCreateProgramService.d.ts +12 -0
  301. package/src/Shader/ShaderManager/service/ShaderManagerCreateProgramService.js +39 -0
  302. package/src/Shader/ShaderManager/service/ShaderManagerInitializeUniformService.d.ts +12 -0
  303. package/src/Shader/ShaderManager/service/ShaderManagerInitializeUniformService.js +62 -0
  304. package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFillUniformService.d.ts +14 -0
  305. package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFillUniformService.js +85 -0
  306. package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFilterUniformService.d.ts +35 -0
  307. package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFilterUniformService.js +94 -0
  308. package/src/Shader/ShaderManager/service/ShaderManagerSetBlendUniformService.d.ts +11 -0
  309. package/src/Shader/ShaderManager/service/ShaderManagerSetBlendUniformService.js +14 -0
  310. package/src/Shader/ShaderManager/service/ShaderManagerSetBlendWithColorTransformUniformService.d.ts +19 -0
  311. package/src/Shader/ShaderManager/service/ShaderManagerSetBlendWithColorTransformUniformService.js +33 -0
  312. package/src/Shader/ShaderManager/service/ShaderManagerSetBlurFilterUniformService.d.ts +16 -0
  313. package/src/Shader/ShaderManager/service/ShaderManagerSetBlurFilterUniformService.js +30 -0
  314. package/src/Shader/ShaderManager/service/ShaderManagerSetColorMatrixFilterUniformService.d.ts +12 -0
  315. package/src/Shader/ShaderManager/service/ShaderManagerSetColorMatrixFilterUniformService.js +35 -0
  316. package/src/Shader/ShaderManager/service/ShaderManagerSetConvolutionFilterUniformService.d.ts +21 -0
  317. package/src/Shader/ShaderManager/service/ShaderManagerSetConvolutionFilterUniformService.js +42 -0
  318. package/src/Shader/ShaderManager/service/ShaderManagerSetDisplacementMapFilterUniformService.d.ts +24 -0
  319. package/src/Shader/ShaderManager/service/ShaderManagerSetDisplacementMapFilterUniformService.js +44 -0
  320. package/src/Shader/ShaderManager/service/ShaderManagerSetFillUniformService.d.ts +12 -0
  321. package/src/Shader/ShaderManager/service/ShaderManagerSetFillUniformService.js +55 -0
  322. package/src/Shader/ShaderManager/service/ShaderManagerSetGradientFillUniformService.d.ts +17 -0
  323. package/src/Shader/ShaderManager/service/ShaderManagerSetGradientFillUniformService.js +97 -0
  324. package/src/Shader/ShaderManager/service/ShaderManagerSetMaskUniformService.d.ts +11 -0
  325. package/src/Shader/ShaderManager/service/ShaderManagerSetMaskUniformService.js +54 -0
  326. package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureUniformService.d.ts +13 -0
  327. package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureUniformService.js +29 -0
  328. package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureWithColorTransformUniformService.d.ts +13 -0
  329. package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureWithColorTransformUniformService.js +38 -0
  330. package/src/Shader/ShaderManager/service/ShaderManagerSetTextureUniformService.d.ts +13 -0
  331. package/src/Shader/ShaderManager/service/ShaderManagerSetTextureUniformService.js +25 -0
  332. package/src/Shader/ShaderManager/service/ShaderManagerUseProgramService.d.ts +11 -0
  333. package/src/Shader/ShaderManager/service/ShaderManagerUseProgramService.js +25 -0
  334. package/src/Shader/ShaderManager/usecase/ShaderManagerDrawTextureUseCase.d.ts +11 -0
  335. package/src/Shader/ShaderManager/usecase/ShaderManagerDrawTextureUseCase.js +21 -0
  336. package/src/Shader/ShaderManager/usecase/ShaderManagerFillUseCase.d.ts +13 -0
  337. package/src/Shader/ShaderManager/usecase/ShaderManagerFillUseCase.js +24 -0
  338. package/src/Shader/ShaderManager.d.ts +78 -0
  339. package/src/Shader/ShaderManager.js +109 -0
  340. package/src/Shader/Variants/Bitmap/service/VariantsBitmapShaderService.d.ts +12 -0
  341. package/src/Shader/Variants/Bitmap/service/VariantsBitmapShaderService.js +26 -0
  342. package/src/Shader/Variants/BitmapVariants.d.ts +9 -0
  343. package/src/Shader/Variants/BitmapVariants.js +8 -0
  344. package/src/Shader/Variants/Blend/service/VariantsBlendDrawShaderService.d.ts +13 -0
  345. package/src/Shader/Variants/Blend/service/VariantsBlendDrawShaderService.js +23 -0
  346. package/src/Shader/Variants/Blend/service/VariantsBlendInstanceShaderService.d.ts +10 -0
  347. package/src/Shader/Variants/Blend/service/VariantsBlendInstanceShaderService.js +21 -0
  348. package/src/Shader/Variants/Blend/service/VariantsBlendMatrixTextureShaderService.d.ts +11 -0
  349. package/src/Shader/Variants/Blend/service/VariantsBlendMatrixTextureShaderService.js +22 -0
  350. package/src/Shader/Variants/Blend/service/VariantsBlendTextureShaderService.d.ts +10 -0
  351. package/src/Shader/Variants/Blend/service/VariantsBlendTextureShaderService.js +21 -0
  352. package/src/Shader/Variants/BlendVariants.d.ts +10 -0
  353. package/src/Shader/Variants/BlendVariants.js +8 -0
  354. package/src/Shader/Variants/Filter/service/VariantsBitmapFilterShaderService.d.ts +18 -0
  355. package/src/Shader/Variants/Filter/service/VariantsBitmapFilterShaderService.js +48 -0
  356. package/src/Shader/Variants/Filter/service/VariantsBlurFilterShaderService.d.ts +11 -0
  357. package/src/Shader/Variants/Filter/service/VariantsBlurFilterShaderService.js +22 -0
  358. package/src/Shader/Variants/Filter/service/VariantsColorMatrixFilterShaderService.d.ts +10 -0
  359. package/src/Shader/Variants/Filter/service/VariantsColorMatrixFilterShaderService.js +21 -0
  360. package/src/Shader/Variants/Filter/service/VariantsConvolutionFilterShaderService.d.ts +14 -0
  361. package/src/Shader/Variants/Filter/service/VariantsConvolutionFilterShaderService.js +30 -0
  362. package/src/Shader/Variants/Filter/service/VariantsDisplacementMapFilterShaderService.d.ts +13 -0
  363. package/src/Shader/Variants/Filter/service/VariantsDisplacementMapFilterShaderService.js +25 -0
  364. package/src/Shader/Variants/FilterVariants.d.ts +9 -0
  365. package/src/Shader/Variants/FilterVariants.js +8 -0
  366. package/src/Shader/Variants/Gradient/service/VariantsGradientCreateCollectionKeyService.d.ts +13 -0
  367. package/src/Shader/Variants/Gradient/service/VariantsGradientCreateCollectionKeyService.js +19 -0
  368. package/src/Shader/Variants/Gradient/usecase/VariantsGradientShapeShaderUseCase.d.ts +14 -0
  369. package/src/Shader/Variants/Gradient/usecase/VariantsGradientShapeShaderUseCase.js +28 -0
  370. package/src/Shader/Variants/GradientLUT/service/VariantsGradientLUTShaderService.d.ts +12 -0
  371. package/src/Shader/Variants/GradientLUT/service/VariantsGradientLUTShaderService.js +26 -0
  372. package/src/Shader/Variants/GradientLUTVariants.d.ts +9 -0
  373. package/src/Shader/Variants/GradientLUTVariants.js +8 -0
  374. package/src/Shader/Variants/GradientVariants.d.ts +9 -0
  375. package/src/Shader/Variants/GradientVariants.js +8 -0
  376. package/src/Shader/Variants/Shape/service/VariantsShapeMaskShaderService.d.ts +11 -0
  377. package/src/Shader/Variants/Shape/service/VariantsShapeMaskShaderService.js +22 -0
  378. package/src/Shader/Variants/Shape/service/VariantsShapeRectShaderService.d.ts +10 -0
  379. package/src/Shader/Variants/Shape/service/VariantsShapeRectShaderService.js +21 -0
  380. package/src/Shader/Variants/Shape/service/VariantsShapeSolidColorShaderService.d.ts +11 -0
  381. package/src/Shader/Variants/Shape/service/VariantsShapeSolidColorShaderService.js +22 -0
  382. package/src/Shader/Variants/ShapeVariants.d.ts +9 -0
  383. package/src/Shader/Variants/ShapeVariants.js +8 -0
  384. package/src/Shader/Vertex/VertexShaderLibrary.d.ts +19 -0
  385. package/{dist/shader/vertex → src/Shader/Vertex}/VertexShaderLibrary.js +31 -41
  386. package/src/Shader/Vertex/VertexShaderSource.d.ts +30 -0
  387. package/src/Shader/Vertex/VertexShaderSource.js +141 -0
  388. package/src/Shader/Vertex/VertexShaderSourceFill.d.ts +76 -0
  389. package/src/Shader/Vertex/VertexShaderSourceFill.js +166 -0
  390. package/src/StencilBufferObject/service/StencilBufferObjectCreateService.d.ts +10 -0
  391. package/src/StencilBufferObject/service/StencilBufferObjectCreateService.js +24 -0
  392. package/src/StencilBufferObject/service/StencilBufferObjectReleaseColorBufferObjectService.d.ts +11 -0
  393. package/src/StencilBufferObject/service/StencilBufferObjectReleaseColorBufferObjectService.js +23 -0
  394. package/src/StencilBufferObject/usecase/StencilBufferObjectAcquireObjectUseCase.d.ts +13 -0
  395. package/src/StencilBufferObject/usecase/StencilBufferObjectAcquireObjectUseCase.js +28 -0
  396. package/src/StencilBufferObject/usecase/StencilBufferObjectGetStencilBufferObjectUseCase.d.ts +12 -0
  397. package/src/StencilBufferObject/usecase/StencilBufferObjectGetStencilBufferObjectUseCase.js +27 -0
  398. package/src/StencilBufferObject.d.ts +9 -0
  399. package/src/StencilBufferObject.js +8 -0
  400. package/src/TextureManager/service/TextureManagerBindService.d.ts +14 -0
  401. package/src/TextureManager/service/TextureManagerBindService.js +33 -0
  402. package/src/TextureManager/service/TextureManagerCreateTextureObjectService.d.ts +12 -0
  403. package/src/TextureManager/service/TextureManagerCreateTextureObjectService.js +26 -0
  404. package/src/TextureManager/service/TextureManagerInitializeBindService.d.ts +12 -0
  405. package/src/TextureManager/service/TextureManagerInitializeBindService.js +25 -0
  406. package/src/TextureManager/usecase/TextureManagerBind012UseCase.d.ts +14 -0
  407. package/src/TextureManager/usecase/TextureManagerBind012UseCase.js +19 -0
  408. package/src/TextureManager/usecase/TextureManagerBind01UseCase.d.ts +13 -0
  409. package/src/TextureManager/usecase/TextureManagerBind01UseCase.js +18 -0
  410. package/src/TextureManager/usecase/TextureManagerBind02UseCase.d.ts +13 -0
  411. package/src/TextureManager/usecase/TextureManagerBind02UseCase.js +18 -0
  412. package/src/TextureManager/usecase/TextureManagerBind0UseCase.d.ts +12 -0
  413. package/src/TextureManager/usecase/TextureManagerBind0UseCase.js +17 -0
  414. package/src/TextureManager/usecase/TextureManagerCreateAtlasTextureUseCase.d.ts +10 -0
  415. package/src/TextureManager/usecase/TextureManagerCreateAtlasTextureUseCase.js +25 -0
  416. package/src/TextureManager/usecase/TextureManagerCreateFromCanvasUseCase.d.ts +14 -0
  417. package/src/TextureManager/usecase/TextureManagerCreateFromCanvasUseCase.js +19 -0
  418. package/src/TextureManager/usecase/TextureManagerCreateFromPixelsUseCase.d.ts +14 -0
  419. package/src/TextureManager/usecase/TextureManagerCreateFromPixelsUseCase.js +19 -0
  420. package/src/TextureManager/usecase/TextureManagerGetMainTextureFromBoundsUseCase.d.ts +14 -0
  421. package/src/TextureManager/usecase/TextureManagerGetMainTextureFromBoundsUseCase.js +50 -0
  422. package/src/TextureManager/usecase/TextureManagerGetTextureUseCase.d.ts +14 -0
  423. package/src/TextureManager/usecase/TextureManagerGetTextureUseCase.js +19 -0
  424. package/src/TextureManager/usecase/TextureManagerReleaseTextureObjectUseCase.d.ts +11 -0
  425. package/src/TextureManager/usecase/TextureManagerReleaseTextureObjectUseCase.js +13 -0
  426. package/src/TextureManager.d.ts +25 -0
  427. package/src/TextureManager.js +26 -0
  428. package/src/VertexArrayObject/service/VertexArrayObjectBindService.d.ts +11 -0
  429. package/src/VertexArrayObject/service/VertexArrayObjectBindService.js +26 -0
  430. package/src/VertexArrayObject/service/VertexArrayObjectCreateFillObjectService.d.ts +10 -0
  431. package/src/VertexArrayObject/service/VertexArrayObjectCreateFillObjectService.js +18 -0
  432. package/src/VertexArrayObject/service/VertexArrayObjectReleaseVertexArrayObjectService.d.ts +11 -0
  433. package/src/VertexArrayObject/service/VertexArrayObjectReleaseVertexArrayObjectService.js +16 -0
  434. package/src/VertexArrayObject/usecase/VertexArrayObjectBindAttributeUseCase.d.ts +9 -0
  435. package/src/VertexArrayObject/usecase/VertexArrayObjectBindAttributeUseCase.js +27 -0
  436. package/src/VertexArrayObject/usecase/VertexArrayObjectBindFillMeshUseCase.d.ts +10 -0
  437. package/src/VertexArrayObject/usecase/VertexArrayObjectBindFillMeshUseCase.js +25 -0
  438. package/src/VertexArrayObject/usecase/VertexArrayObjectBootUseCase.d.ts +10 -0
  439. package/src/VertexArrayObject/usecase/VertexArrayObjectBootUseCase.js +18 -0
  440. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateGradientVertexArrayObjectUseCase.d.ts +12 -0
  441. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateGradientVertexArrayObjectUseCase.js +27 -0
  442. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateInstancedVertexArrayObjectUseCase.d.ts +10 -0
  443. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateInstancedVertexArrayObjectUseCase.js +51 -0
  444. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateRectVertexArrayObjectUseCase.d.ts +10 -0
  445. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateRectVertexArrayObjectUseCase.js +24 -0
  446. package/src/VertexArrayObject/usecase/VertexArrayObjectGetFillObjectUseCase.d.ts +10 -0
  447. package/src/VertexArrayObject/usecase/VertexArrayObjectGetFillObjectUseCase.js +33 -0
  448. package/src/VertexArrayObject/usecase/VertexArrayObjectGetGradientObjectUseCase.d.ts +12 -0
  449. package/src/VertexArrayObject/usecase/VertexArrayObjectGetGradientObjectUseCase.js +34 -0
  450. package/src/VertexArrayObject.d.ts +80 -0
  451. package/src/VertexArrayObject.js +103 -0
  452. package/src/WebGLUtil.d.ts +286 -0
  453. package/src/WebGLUtil.js +446 -0
  454. package/src/index.d.ts +1 -0
  455. package/src/index.js +1 -0
  456. package/src/interface/IAttachmentObject.d.ts +14 -0
  457. package/src/interface/IBlendMode.d.ts +1 -0
  458. package/{dist/interface/BoundsImpl.d.ts → src/interface/IBounds.d.ts} +1 -1
  459. package/{dist/interface/ClipObjectImpl.d.ts → src/interface/IClipObject.d.ts} +1 -1
  460. package/src/interface/IColorBufferObject.d.ts +9 -0
  461. package/src/interface/IFillMesh.d.ts +4 -0
  462. package/src/interface/IFillType.d.ts +1 -0
  463. package/src/interface/IGradientType.d.ts +1 -0
  464. package/{dist/interface/GridImpl.d.ts → src/interface/IGrid.d.ts} +1 -1
  465. package/src/interface/IInterpolationMethod.d.ts +1 -0
  466. package/src/interface/IJointStyle.d.ts +1 -0
  467. package/src/interface/IPath.d.ts +1 -0
  468. package/{dist/interface/PointImpl.d.ts → src/interface/IPoint.d.ts} +1 -1
  469. package/src/interface/IProgramObject.d.ts +4 -0
  470. package/src/interface/ISpreadMethod.d.ts +1 -0
  471. package/src/interface/IStencilBufferObject.d.ts +8 -0
  472. package/src/interface/IStrokeVertexArrayObject.d.ts +6 -0
  473. package/src/interface/ITextureObject.d.ts +8 -0
  474. package/src/interface/ITextureObject.js +1 -0
  475. package/{dist/interface/UniformDataImpl.d.ts → src/interface/IUniformData.d.ts} +1 -1
  476. package/src/interface/IUniformData.js +1 -0
  477. package/src/interface/IVertexArrayObject.d.ts +6 -0
  478. package/src/interface/IVertexArrayObject.js +1 -0
  479. package/dist/BezierConverter.d.ts +0 -59
  480. package/dist/BezierConverter.js +0 -106
  481. package/dist/CanvasGradientToWebGL.d.ts +0 -96
  482. package/dist/CanvasGradientToWebGL.js +0 -181
  483. package/dist/CanvasPatternToWebGL.d.ts +0 -31
  484. package/dist/CanvasPatternToWebGL.js +0 -50
  485. package/dist/CanvasToWebGLContext.d.ts +0 -650
  486. package/dist/CanvasToWebGLContext.js +0 -1600
  487. package/dist/CanvasToWebGLContextBlend.d.ts +0 -175
  488. package/dist/CanvasToWebGLContextBlend.js +0 -483
  489. package/dist/CanvasToWebGLContextGrid.d.ts +0 -74
  490. package/dist/CanvasToWebGLContextGrid.js +0 -283
  491. package/dist/CanvasToWebGLContextMask.d.ts +0 -107
  492. package/dist/CanvasToWebGLContextMask.js +0 -411
  493. package/dist/CanvasToWebGLContextPath.d.ts +0 -111
  494. package/dist/CanvasToWebGLContextPath.js +0 -210
  495. package/dist/CanvasToWebGLContextStyle.d.ts +0 -78
  496. package/dist/CanvasToWebGLContextStyle.js +0 -137
  497. package/dist/ColorBufferPool.d.ts +0 -58
  498. package/dist/ColorBufferPool.js +0 -134
  499. package/dist/Const.d.ts +0 -12
  500. package/dist/Const.js +0 -14
  501. package/dist/FrameBufferManager.d.ts +0 -174
  502. package/dist/FrameBufferManager.js +0 -467
  503. package/dist/StencilBufferPool.d.ts +0 -56
  504. package/dist/StencilBufferPool.js +0 -142
  505. package/dist/TextureManager.d.ts +0 -180
  506. package/dist/TextureManager.js +0 -531
  507. package/dist/VertexArrayObjectManager.d.ts +0 -115
  508. package/dist/VertexArrayObjectManager.js +0 -328
  509. package/dist/WebGLFillMeshGenerator.d.ts +0 -31
  510. package/dist/WebGLFillMeshGenerator.js +0 -101
  511. package/dist/WebGLStrokeMeshGenerator.d.ts +0 -183
  512. package/dist/WebGLStrokeMeshGenerator.js +0 -504
  513. package/dist/index.d.ts +0 -6
  514. package/dist/index.js +0 -6
  515. package/dist/interface/AttachmentImpl.d.ts +0 -11
  516. package/dist/interface/BlendModeImpl.d.ts +0 -1
  517. package/dist/interface/CachePositionImpl.d.ts +0 -11
  518. package/dist/interface/CapsStyleImpl.d.ts +0 -1
  519. package/dist/interface/FillMeshImpl.d.ts +0 -5
  520. package/dist/interface/GradientTypeImpl.d.ts +0 -1
  521. package/dist/interface/IndexRangeImpl.d.ts +0 -4
  522. package/dist/interface/InterpolationMethodImpl.d.ts +0 -1
  523. package/dist/interface/JointStyleImpl.d.ts +0 -1
  524. package/dist/interface/SpreadMethodImpl.d.ts +0 -1
  525. package/dist/interface/StrokeMethImpl.d.ts +0 -4
  526. package/dist/interface/VerticesImpl.d.ts +0 -1
  527. package/dist/shader/CanvasToWebGLShader.d.ts +0 -99
  528. package/dist/shader/CanvasToWebGLShader.js +0 -213
  529. package/dist/shader/CanvasToWebGLShaderList.d.ts +0 -70
  530. package/dist/shader/CanvasToWebGLShaderList.js +0 -109
  531. package/dist/shader/GradientLUTGenerator.d.ts +0 -36
  532. package/dist/shader/GradientLUTGenerator.js +0 -130
  533. package/dist/shader/WebGLShaderInstance.d.ts +0 -30
  534. package/dist/shader/WebGLShaderInstance.js +0 -48
  535. package/dist/shader/WebGLShaderUniform.d.ts +0 -52
  536. package/dist/shader/WebGLShaderUniform.js +0 -159
  537. package/dist/shader/fragment/FragmentShaderLibrary.d.ts +0 -24
  538. package/dist/shader/fragment/FragmentShaderLibrary.js +0 -44
  539. package/dist/shader/fragment/FragmentShaderSource.d.ts +0 -29
  540. package/dist/shader/fragment/FragmentShaderSource.js +0 -99
  541. package/dist/shader/fragment/FragmentShaderSourceBlend.d.ts +0 -75
  542. package/dist/shader/fragment/FragmentShaderSourceBlend.js +0 -384
  543. package/dist/shader/fragment/FragmentShaderSourceGradient.d.ts +0 -44
  544. package/dist/shader/fragment/FragmentShaderSourceGradient.js +0 -114
  545. package/dist/shader/fragment/FragmentShaderSourceGradientLUT.d.ts +0 -14
  546. package/dist/shader/fragment/FragmentShaderSourceGradientLUT.js +0 -58
  547. package/dist/shader/fragment/FragmentShaderSourceTexture.d.ts +0 -18
  548. package/dist/shader/fragment/FragmentShaderSourceTexture.js +0 -68
  549. package/dist/shader/fragment/filter/FragmentShaderSourceBlurFilter.d.ts +0 -12
  550. package/dist/shader/fragment/filter/FragmentShaderSourceColorMatrixFilter.d.ts +0 -11
  551. package/dist/shader/fragment/filter/FragmentShaderSourceConvolutionFilter.d.ts +0 -16
  552. package/dist/shader/fragment/filter/FragmentShaderSourceConvolutionFilter.js +0 -80
  553. package/dist/shader/fragment/filter/FragmentShaderSourceDisplacementMapFilter.d.ts +0 -15
  554. package/dist/shader/fragment/filter/FragmentShaderSourceDisplacementMapFilter.js +0 -106
  555. package/dist/shader/fragment/filter/FragmentShaderSourceFilter.d.ts +0 -112
  556. package/dist/shader/fragment/filter/FragmentShaderSourceFilter.js +0 -275
  557. package/dist/shader/variants/BlendShaderVariantCollection.d.ts +0 -159
  558. package/dist/shader/variants/BlendShaderVariantCollection.js +0 -376
  559. package/dist/shader/variants/FilterShaderVariantCollection.d.ts +0 -150
  560. package/dist/shader/variants/FilterShaderVariantCollection.js +0 -395
  561. package/dist/shader/variants/GradientLUTShaderVariantCollection.d.ts +0 -49
  562. package/dist/shader/variants/GradientLUTShaderVariantCollection.js +0 -107
  563. package/dist/shader/variants/GradientShapeShaderVariantCollection.d.ts +0 -61
  564. package/dist/shader/variants/GradientShapeShaderVariantCollection.js +0 -196
  565. package/dist/shader/variants/ShapeShaderVariantCollection.d.ts +0 -117
  566. package/dist/shader/variants/ShapeShaderVariantCollection.js +0 -427
  567. package/dist/shader/vertex/VertexShaderLibrary.d.ts +0 -18
  568. package/dist/shader/vertex/VertexShaderSource.d.ts +0 -35
  569. package/dist/shader/vertex/VertexShaderSource.js +0 -164
  570. package/dist/shader/vertex/VertexShaderSourceFill.d.ts +0 -45
  571. package/dist/shader/vertex/VertexShaderSourceFill.js +0 -116
  572. package/dist/shader/vertex/VertexShaderSourceStroke.d.ts +0 -27
  573. package/dist/shader/vertex/VertexShaderSourceStroke.js +0 -149
  574. /package/{dist/interface/AttachmentImpl.js → src/interface/IAttachmentObject.js} +0 -0
  575. /package/{dist/interface/BlendModeImpl.js → src/interface/IBlendMode.js} +0 -0
  576. /package/{dist/interface/BoundsImpl.js → src/interface/IBounds.js} +0 -0
  577. /package/{dist/interface/CachePositionImpl.js → src/interface/IClipObject.js} +0 -0
  578. /package/{dist/interface/CapsStyleImpl.js → src/interface/IColorBufferObject.js} +0 -0
  579. /package/{dist/interface/ClipObjectImpl.js → src/interface/IFillMesh.js} +0 -0
  580. /package/{dist/interface/FillMeshImpl.js → src/interface/IFillType.js} +0 -0
  581. /package/{dist/interface/GradientTypeImpl.js → src/interface/IGradientType.js} +0 -0
  582. /package/{dist/interface/GridImpl.js → src/interface/IGrid.js} +0 -0
  583. /package/{dist/interface/IndexRangeImpl.js → src/interface/IInterpolationMethod.js} +0 -0
  584. /package/{dist/interface/InterpolationMethodImpl.js → src/interface/IJointStyle.js} +0 -0
  585. /package/{dist/interface/JointStyleImpl.js → src/interface/IPath.js} +0 -0
  586. /package/{dist/interface/PointImpl.js → src/interface/IPoint.js} +0 -0
  587. /package/{dist/interface/SpreadMethodImpl.js → src/interface/IProgramObject.js} +0 -0
  588. /package/{dist/interface/StrokeMethImpl.js → src/interface/ISpreadMethod.js} +0 -0
  589. /package/{dist/interface/UniformDataImpl.js → src/interface/IStencilBufferObject.js} +0 -0
  590. /package/{dist/interface/VerticesImpl.js → src/interface/IStrokeVertexArrayObject.js} +0 -0
@@ -0,0 +1,159 @@
1
+ import { execute as variantsBlendInstanceShaderService } from "../../Shader/Variants/Blend/service/VariantsBlendInstanceShaderService";
2
+ import { execute as variantsBlendDrawShaderService } from "../../Shader/Variants/Blend/service/VariantsBlendDrawShaderService";
3
+ import { $getFloat32Array6, $RENDER_MAX_SIZE } from "../../WebGLUtil";
4
+ import { $setActiveAtlasIndex } from "../../AtlasManager";
5
+ import { execute as frameBufferManagerGetTextureFromNodeUseCase } from "../../FrameBufferManager/usecase/FrameBufferManagerGetTextureFromNodeUseCase";
6
+ import { execute as textureManagerReleaseTextureObjectUseCase } from "../../TextureManager/usecase/TextureManagerReleaseTextureObjectUseCase";
7
+ import { execute as textureManagerBind0UseCase } from "../../TextureManager/usecase/TextureManagerBind0UseCase";
8
+ import { execute as textureManagerBind01UseCase } from "../../TextureManager/usecase/TextureManagerBind01UseCase";
9
+ import { execute as frameBufferManagerGetTextureFromBoundsUseCase } from "../../FrameBufferManager/usecase/FrameBufferManagerGetTextureFromBoundsUseCase";
10
+ import { execute as frameBufferManagerReleaseAttachmentObjectUseCase } from "../../FrameBufferManager/usecase/FrameBufferManagerReleaseAttachmentObjectUseCase";
11
+ import { execute as frameBufferManagerGetAttachmentObjectUseCase } from "../../FrameBufferManager/usecase/FrameBufferManagerGetAttachmentObjectUseCase";
12
+ import { execute as shaderManagerDrawTextureUseCase } from "../../Shader/ShaderManager/usecase/ShaderManagerDrawTextureUseCase";
13
+ import { execute as frameBufferManagerTransferTextureFromRectUseCase } from "../../FrameBufferManager/usecase/FrameBufferManagerTransferTextureFromRectUseCase";
14
+ import { execute as shaderManagerSetBlendWithColorTransformUniformService } from "../../Shader/ShaderManager/service/ShaderManagerSetBlendWithColorTransformUniformService";
15
+ import { execute as variantsBlendMatrixTextureShaderService } from "../../Shader/Variants/Blend/service/VariantsBlendMatrixTextureShaderService";
16
+ import { execute as shaderManagerSetMatrixTextureUniformService } from "../../Shader/ShaderManager/service/ShaderManagerSetMatrixTextureUniformService";
17
+ import { $context, $getViewportHeight, $getViewportWidth } from "../../WebGLUtil";
18
+ import { $getCurrentBlendMode, $setCurrentBlendMode } from "../../Blend";
19
+ import { $getCurrentAtlasIndex, $setCurrentAtlasIndex } from "../../AtlasManager";
20
+ import { renderQueue } from "@next2d/render-queue";
21
+ /**
22
+ * @description DisplayObject単体の描画を実行
23
+ * Execute drawing of a single DisplayObject
24
+ *
25
+ * @param {Node} node
26
+ * @param {number} x_min
27
+ * @param {number} y_min
28
+ * @param {number} x_max
29
+ * @param {number} y_max
30
+ * @param {Float32Array} color_transform
31
+ * @return {void}
32
+ * @method
33
+ * @protected
34
+ */
35
+ export const execute = (node, x_min, y_min, x_max, y_max, color_transform) => {
36
+ const ct0 = color_transform[0];
37
+ const ct1 = color_transform[1];
38
+ const ct2 = color_transform[2];
39
+ const ct3 = $context.globalAlpha;
40
+ const ct4 = color_transform[4] / 255;
41
+ const ct5 = color_transform[5] / 255;
42
+ const ct6 = color_transform[6] / 255;
43
+ const ct7 = 0;
44
+ const matrix = $context.$matrix;
45
+ switch ($context.globalCompositeOperation) {
46
+ case "normal":
47
+ case "layer":
48
+ case "add":
49
+ case "screen":
50
+ case "alpha":
51
+ case "erase":
52
+ case "copy":
53
+ {
54
+ if ($getCurrentBlendMode() !== $context.globalCompositeOperation
55
+ || $getCurrentAtlasIndex() !== node.index) {
56
+ // 異なるフレームバッファになるので、切り替え前にメインバッファに描画を実行
57
+ $setActiveAtlasIndex($getCurrentAtlasIndex());
58
+ const currentOperation = $context.globalCompositeOperation;
59
+ $context.globalCompositeOperation = $getCurrentBlendMode();
60
+ $context.drawArraysInstanced();
61
+ // ブレンドモードをセット
62
+ $context.globalCompositeOperation = currentOperation;
63
+ $setCurrentBlendMode($context.globalCompositeOperation);
64
+ // indexをセット
65
+ $setCurrentAtlasIndex(node.index);
66
+ $setActiveAtlasIndex(node.index);
67
+ }
68
+ // 描画するまで配列に変数を保持
69
+ const shaderInstancedManager = variantsBlendInstanceShaderService();
70
+ renderQueue.push(
71
+ // texture rectangle (vec4)
72
+ node.x / $RENDER_MAX_SIZE, node.y / $RENDER_MAX_SIZE, node.w / $RENDER_MAX_SIZE, node.h / $RENDER_MAX_SIZE,
73
+ // texture width, height and viewport width, height (vec4)
74
+ node.w, node.h, $getViewportWidth(), $getViewportHeight(),
75
+ // matrix tx, ty (vec2)
76
+ matrix[6], matrix[7],
77
+ // matrix scale0, rotate0, scale1, rotate1 (vec4)
78
+ matrix[0], matrix[1], matrix[3], matrix[4],
79
+ // mulColor (vec4)
80
+ ct0, ct1, ct2, ct3,
81
+ // addColor (vec4)
82
+ ct4, ct5, ct6, ct7);
83
+ shaderInstancedManager.count++;
84
+ }
85
+ break;
86
+ default:
87
+ {
88
+ const currentAttachmentObject = $context.currentAttachmentObject;
89
+ // これまでの描画を実行
90
+ $context.drawArraysInstanced();
91
+ const width = Math.ceil(Math.abs(x_max - x_min));
92
+ const height = Math.ceil(Math.abs(y_max - y_min));
93
+ let offsetX = 0;
94
+ let offsetY = 0;
95
+ let srcTextureObject = frameBufferManagerGetTextureFromNodeUseCase(node);
96
+ if (matrix[0] !== 1 || matrix[1] !== 0
97
+ || matrix[3] !== 0 || matrix[4] !== 1) {
98
+ const attachmentObject = frameBufferManagerGetAttachmentObjectUseCase(width, height, false);
99
+ const a = $getFloat32Array6(matrix[0], matrix[1], matrix[3], matrix[4], width / 2, height / 2);
100
+ const b = $getFloat32Array6(1, 0, 0, 1, -node.w / 2, -node.h / 2);
101
+ const tMatrix = $getFloat32Array6(a[0] * b[0] + a[2] * b[1], a[1] * b[0] + a[3] * b[1], a[0] * b[2] + a[2] * b[3], a[1] * b[2] + a[3] * b[3], a[0] * b[4] + a[2] * b[5] + a[4], a[1] * b[4] + a[3] * b[5] + a[5]);
102
+ $context.save();
103
+ $context.bind(attachmentObject);
104
+ $context.setTransform(tMatrix[0], tMatrix[1], tMatrix[2], tMatrix[3], tMatrix[4], tMatrix[5]);
105
+ offsetX = tMatrix[4];
106
+ offsetY = tMatrix[5];
107
+ // 元の描画をフィルター用のテクスチャに描画
108
+ const shaderManager = variantsBlendMatrixTextureShaderService();
109
+ shaderManagerSetMatrixTextureUniformService(shaderManager, srcTextureObject.width, srcTextureObject.height);
110
+ textureManagerBind0UseCase(srcTextureObject, true);
111
+ shaderManagerDrawTextureUseCase(shaderManager);
112
+ // 元のテクスチャを解放
113
+ textureManagerReleaseTextureObjectUseCase(srcTextureObject);
114
+ // フィルター用のテクスチャをセットしてコピー用のAttachmentObjectをリリース
115
+ srcTextureObject = attachmentObject.texture;
116
+ frameBufferManagerReleaseAttachmentObjectUseCase(attachmentObject, false);
117
+ if (currentAttachmentObject) {
118
+ $context.bind(currentAttachmentObject);
119
+ }
120
+ $context.restore();
121
+ }
122
+ // offset値があれば、座標を移動
123
+ if (offsetX || offsetY) {
124
+ matrix[6] -= offsetX;
125
+ matrix[7] -= offsetY;
126
+ }
127
+ const dstTextureObject = frameBufferManagerGetTextureFromBoundsUseCase(matrix[6], matrix[7], width, height);
128
+ const attachmentObject = frameBufferManagerGetAttachmentObjectUseCase(width, height, false);
129
+ $context.bind(attachmentObject);
130
+ // ブレンドするテクスチャをバインド
131
+ textureManagerBind01UseCase(dstTextureObject, srcTextureObject);
132
+ // blend用のシェーダーを取得
133
+ const shaderManager = variantsBlendDrawShaderService($context.globalCompositeOperation, true);
134
+ shaderManagerSetBlendWithColorTransformUniformService(shaderManager, ct0, ct1, ct2, ct3, ct4, ct5, ct6, ct7);
135
+ shaderManagerDrawTextureUseCase(shaderManager);
136
+ if (currentAttachmentObject) {
137
+ $context.bind(currentAttachmentObject);
138
+ }
139
+ // ブレンドしたtextureを元の座標に描画
140
+ frameBufferManagerTransferTextureFromRectUseCase(attachmentObject.texture);
141
+ // matrixを元に戻す
142
+ if (offsetX || offsetY) {
143
+ matrix[6] += offsetX;
144
+ matrix[7] += offsetY;
145
+ }
146
+ // テクスチャを解放
147
+ textureManagerReleaseTextureObjectUseCase(srcTextureObject);
148
+ textureManagerReleaseTextureObjectUseCase(dstTextureObject);
149
+ // フレームバッファを解放
150
+ frameBufferManagerReleaseAttachmentObjectUseCase(attachmentObject);
151
+ // ブレンドモードをセット
152
+ $setCurrentBlendMode($context.globalCompositeOperation);
153
+ // indexをセット
154
+ $setCurrentAtlasIndex(node.index);
155
+ $setActiveAtlasIndex(node.index);
156
+ }
157
+ break;
158
+ }
159
+ };
package/src/Blend.d.ts ADDED
@@ -0,0 +1,39 @@
1
+ import type { IBlendMode } from "./interface/IBlendMode";
2
+ /**
3
+ * @description ブレンドモード情報を更新
4
+ * Update blend mode information
5
+ *
6
+ * @param {string} blend_mode
7
+ * @return {void}
8
+ * @method
9
+ * @protected
10
+ */
11
+ export declare const $setCurrentBlendMode: (blend_mode: IBlendMode) => void;
12
+ /**
13
+ * @description 現在設定されているブレンドモードを返却
14
+ * Returns the currently set blend mode
15
+ *
16
+ * @return {IBlendMode}
17
+ * @method
18
+ * @protected
19
+ */
20
+ export declare const $getCurrentBlendMode: () => IBlendMode;
21
+ /**
22
+ * @description ブレンドモードの設定コードを更新
23
+ * Update the blend mode setting code
24
+ *
25
+ * @param {number} func_code
26
+ * @return {void}
27
+ * @method
28
+ * @protected
29
+ */
30
+ export declare const $setFuncCode: (func_code: number) => void;
31
+ /**
32
+ * @description ブレンドモードの設定コードを返却
33
+ * Returns the blend mode setting code
34
+ *
35
+ * @return {number}
36
+ * @method
37
+ * @protected
38
+ */
39
+ export declare const $getFuncCode: () => number;
package/src/Blend.js ADDED
@@ -0,0 +1,64 @@
1
+ /**
2
+ * @description 現在設定されているブレンドモード
3
+ * The currently set blend mode
4
+ *
5
+ * @type {IBlendMode}
6
+ * @default "normal"
7
+ * @private
8
+ */
9
+ let $currentBlendMode = "normal";
10
+ /**
11
+ * @description ブレンドモード情報を更新
12
+ * Update blend mode information
13
+ *
14
+ * @param {string} blend_mode
15
+ * @return {void}
16
+ * @method
17
+ * @protected
18
+ */
19
+ export const $setCurrentBlendMode = (blend_mode) => {
20
+ $currentBlendMode = blend_mode;
21
+ };
22
+ /**
23
+ * @description 現在設定されているブレンドモードを返却
24
+ * Returns the currently set blend mode
25
+ *
26
+ * @return {IBlendMode}
27
+ * @method
28
+ * @protected
29
+ */
30
+ export const $getCurrentBlendMode = () => {
31
+ return $currentBlendMode;
32
+ };
33
+ /**
34
+ * @description ブレンドモードの設定コード
35
+ * Blend mode setting code
36
+ *
37
+ * @type {number}
38
+ * @default 600
39
+ * @private
40
+ */
41
+ let $funcCode = 600;
42
+ /**
43
+ * @description ブレンドモードの設定コードを更新
44
+ * Update the blend mode setting code
45
+ *
46
+ * @param {number} func_code
47
+ * @return {void}
48
+ * @method
49
+ * @protected
50
+ */
51
+ export const $setFuncCode = (func_code) => {
52
+ $funcCode = func_code;
53
+ };
54
+ /**
55
+ * @description ブレンドモードの設定コードを返却
56
+ * Returns the blend mode setting code
57
+ *
58
+ * @return {number}
59
+ * @method
60
+ * @protected
61
+ */
62
+ export const $getFuncCode = () => {
63
+ return $funcCode;
64
+ };
@@ -0,0 +1,10 @@
1
+ import type { IColorBufferObject } from "../../interface/IColorBufferObject";
2
+ /**
3
+ * @description 新規のColorBufferObjectを生成する
4
+ * Create a new ColorBufferObject
5
+ *
6
+ * @return {object}
7
+ * @method
8
+ * @protected
9
+ */
10
+ export declare const execute: () => IColorBufferObject;
@@ -0,0 +1,27 @@
1
+ import { $gl } from "../../WebGLUtil";
2
+ /**
3
+ * @description 新規のColorBufferObjectを生成する
4
+ * Create a new ColorBufferObject
5
+ *
6
+ * @return {object}
7
+ * @method
8
+ * @protected
9
+ */
10
+ export const execute = () => {
11
+ const stencilBufferObject = {
12
+ "id": 0,
13
+ "resource": $gl.createRenderbuffer(),
14
+ "width": 0,
15
+ "height": 0,
16
+ "area": 0,
17
+ "dirty": false
18
+ };
19
+ return {
20
+ "resource": $gl.createRenderbuffer(),
21
+ "stencil": stencilBufferObject,
22
+ "width": 0,
23
+ "height": 0,
24
+ "area": 0,
25
+ "dirty": false
26
+ };
27
+ };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @description めぐる式二分探索法でobject_poolを検索する
3
+ * Search object_pool with Meguru binary search method
4
+ *
5
+ * @param {number} area
6
+ * @return {number}
7
+ * @method
8
+ * @protected
9
+ */
10
+ export declare const execute: (area: number) => number;
@@ -0,0 +1,24 @@
1
+ import { $objectPool } from "../../ColorBufferObject";
2
+ /**
3
+ * @description めぐる式二分探索法でobject_poolを検索する
4
+ * Search object_pool with Meguru binary search method
5
+ *
6
+ * @param {number} area
7
+ * @return {number}
8
+ * @method
9
+ * @protected
10
+ */
11
+ export const execute = (area) => {
12
+ let ng = -1;
13
+ let ok = $objectPool.length;
14
+ while (Math.abs(ok - ng) > 1) {
15
+ const mid = Math.floor((ok + ng) / 2);
16
+ if (area <= $objectPool[mid].area) {
17
+ ok = mid;
18
+ }
19
+ else {
20
+ ng = mid;
21
+ }
22
+ }
23
+ return ok;
24
+ };
@@ -0,0 +1,11 @@
1
+ import type { IColorBufferObject } from "../../interface/IColorBufferObject";
2
+ /**
3
+ * @description 指定サイズのobjectがpoolにあれば再利用、なければ新規作成する
4
+ * If an object of the specified size is in the pool, reuse it, otherwise create a new one
5
+ *
6
+ * @param {number} area
7
+ * @return {object}
8
+ * @method
9
+ * @protected
10
+ */
11
+ export declare const execute: (area: number) => IColorBufferObject;
@@ -0,0 +1,28 @@
1
+ import { execute as colorBufferObjectCreateService } from "../service/ColorBufferObjectCreateService";
2
+ import { execute as colorBufferObjectMeguruBinarySearchService } from "../service/ColorBufferObjectMeguruBinarySearchService";
3
+ import { $objectPool } from "../../ColorBufferObject";
4
+ /**
5
+ * @description 指定サイズのobjectがpoolにあれば再利用、なければ新規作成する
6
+ * If an object of the specified size is in the pool, reuse it, otherwise create a new one
7
+ *
8
+ * @param {number} area
9
+ * @return {object}
10
+ * @method
11
+ * @protected
12
+ */
13
+ export const execute = (area) => {
14
+ if (!$objectPool.length) {
15
+ return colorBufferObjectCreateService();
16
+ }
17
+ const index = colorBufferObjectMeguruBinarySearchService(area);
18
+ if (index < $objectPool.length) {
19
+ const colorBuffer = $objectPool[index];
20
+ $objectPool.splice(index, 1);
21
+ return colorBuffer;
22
+ }
23
+ const colorBuffer = $objectPool.shift();
24
+ if (!colorBuffer) {
25
+ throw new Error("the color buffer is void.");
26
+ }
27
+ return colorBuffer;
28
+ };
@@ -0,0 +1,12 @@
1
+ import type { IColorBufferObject } from "../../interface/IColorBufferObject";
2
+ /**
3
+ * @description 指定サイズのColorBufferObjectを取得する
4
+ * Get a ColorBufferObject of the specified size
5
+ *
6
+ * @param {number} width
7
+ * @param {number} height
8
+ * @return {object}
9
+ * @method
10
+ * @protected
11
+ */
12
+ export declare const execute: (width: number, height: number) => IColorBufferObject;
@@ -0,0 +1,32 @@
1
+ import { execute as colorBufferObjectAcquireObjectUseCase } from "./ColorBufferObjectAcquireObjectUseCase";
2
+ import { $gl, $samples, $upperPowerOfTwo } from "../../WebGLUtil";
3
+ /**
4
+ * @description 指定サイズのColorBufferObjectを取得する
5
+ * Get a ColorBufferObject of the specified size
6
+ *
7
+ * @param {number} width
8
+ * @param {number} height
9
+ * @return {object}
10
+ * @method
11
+ * @protected
12
+ */
13
+ export const execute = (width, height) => {
14
+ // 128以下で描画崩れが発生する場合がある?ため、256を最小サイズにする
15
+ width = Math.max(256, $upperPowerOfTwo(width));
16
+ height = Math.max(256, $upperPowerOfTwo(height));
17
+ const colorBufferObject = colorBufferObjectAcquireObjectUseCase(width * height);
18
+ if (colorBufferObject.width < width
19
+ || colorBufferObject.height < height) {
20
+ width = Math.max(width, colorBufferObject.width);
21
+ height = Math.max(height, colorBufferObject.height);
22
+ colorBufferObject.width = width;
23
+ colorBufferObject.height = height;
24
+ colorBufferObject.area = width * height;
25
+ $gl.bindRenderbuffer($gl.RENDERBUFFER, colorBufferObject.resource);
26
+ $gl.renderbufferStorageMultisample($gl.RENDERBUFFER, $samples, $gl.RGBA8, width, height);
27
+ $gl.bindRenderbuffer($gl.RENDERBUFFER, colorBufferObject.stencil.resource);
28
+ $gl.renderbufferStorageMultisample($gl.RENDERBUFFER, $samples, $gl.STENCIL_INDEX8, width, height);
29
+ }
30
+ colorBufferObject.dirty = true;
31
+ return colorBufferObject;
32
+ };
@@ -0,0 +1,11 @@
1
+ import type { IColorBufferObject } from "../../interface/IColorBufferObject";
2
+ /**
3
+ * @description 利用済みのColorBufferObjectを再利用するためにプールに保管する
4
+ * Store the used ColorBufferObject in the pool for reuse
5
+ *
6
+ * @param {object} color_buffer_object
7
+ * @return {void}
8
+ * @method
9
+ * @protected
10
+ */
11
+ export declare const execute: (color_buffer_object: IColorBufferObject) => void;
@@ -0,0 +1,19 @@
1
+ import { execute as colorBufferObjectMeguruBinarySearchService } from "../service/ColorBufferObjectMeguruBinarySearchService";
2
+ import { $objectPool } from "../../ColorBufferObject";
3
+ /**
4
+ * @description 利用済みのColorBufferObjectを再利用するためにプールに保管する
5
+ * Store the used ColorBufferObject in the pool for reuse
6
+ *
7
+ * @param {object} color_buffer_object
8
+ * @return {void}
9
+ * @method
10
+ * @protected
11
+ */
12
+ export const execute = (color_buffer_object) => {
13
+ if ($objectPool.indexOf(color_buffer_object) > -1) {
14
+ return;
15
+ }
16
+ const index = colorBufferObjectMeguruBinarySearchService(color_buffer_object.area);
17
+ color_buffer_object.dirty = true;
18
+ $objectPool.splice(index, 0, color_buffer_object);
19
+ };
@@ -0,0 +1,9 @@
1
+ import type { IColorBufferObject } from "./interface/IColorBufferObject";
2
+ /**
3
+ * @description ColorBufferObjectの再利用のための配列のオブジェクトプール、
4
+ * Object pool of array for reusing ColorBufferObject
5
+ *
6
+ * @type {IColorBufferObject[]}
7
+ * @private
8
+ */
9
+ export declare const $objectPool: IColorBufferObject[];
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @description ColorBufferObjectの再利用のための配列のオブジェクトプール、
3
+ * Object pool of array for reusing ColorBufferObject
4
+ *
5
+ * @type {IColorBufferObject[]}
6
+ * @private
7
+ */
8
+ export const $objectPool = [];
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @description 描画範囲を設定
3
+ * Set the drawing range.
4
+ *
5
+ * @param {number} x
6
+ * @param {number} y
7
+ * @param {number} w
8
+ * @param {number} h
9
+ * @return {void}
10
+ * @method
11
+ * @protected
12
+ */
13
+ export declare const execute: (x: number, y: number, w: number, h: number) => void;
@@ -0,0 +1,22 @@
1
+ import { $gl } from "../../WebGLUtil";
2
+ /**
3
+ * @description 描画範囲を設定
4
+ * Set the drawing range.
5
+ *
6
+ * @param {number} x
7
+ * @param {number} y
8
+ * @param {number} w
9
+ * @param {number} h
10
+ * @return {void}
11
+ * @method
12
+ * @protected
13
+ */
14
+ export const execute = (x, y, w, h) => {
15
+ // 初期化範囲を設定
16
+ $gl.enable($gl.SCISSOR_TEST);
17
+ $gl.scissor(x, y, w + 1, h + 1);
18
+ // 初期化
19
+ $gl.clear($gl.COLOR_BUFFER_BIT | $gl.STENCIL_BUFFER_BIT);
20
+ // 描画領域をあらためて設定
21
+ $gl.scissor(x, y, w, h);
22
+ };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @description OffscreenCanvas に描画して返却
3
+ * Draw to OffscreenCanvas and return
4
+ *
5
+ * @param {number} width
6
+ * @param {number} height
7
+ * @return {Promise<ImageBitmap>}
8
+ * @method
9
+ * @protected
10
+ */
11
+ export declare const execute: (width: number, height: number) => Promise<ImageBitmap>;
@@ -0,0 +1,58 @@
1
+ import { execute as textureManagerBind0UseCase } from "../../TextureManager/usecase/TextureManagerBind0UseCase";
2
+ import { execute as textureManagerGetMainTextureFromBoundsUseCase } from "../../TextureManager/usecase/TextureManagerGetMainTextureFromBoundsUseCase";
3
+ import { $readFrameBuffer, $getPixelFrameBuffer } from "../../FrameBufferManager";
4
+ import { $context, $gl, $upperPowerOfTwo } from "../../WebGLUtil";
5
+ /**
6
+ * @type {number}
7
+ * @private
8
+ */
9
+ let $byteLength = 0;
10
+ /**
11
+ * @description OffscreenCanvas に描画して返却
12
+ * Draw to OffscreenCanvas and return
13
+ *
14
+ * @param {number} width
15
+ * @param {number} height
16
+ * @return {Promise<ImageBitmap>}
17
+ * @method
18
+ * @protected
19
+ */
20
+ export const execute = async (width, height) => {
21
+ // fixed logic
22
+ const mainTextureObject = textureManagerGetMainTextureFromBoundsUseCase(0, 0, width, height);
23
+ textureManagerBind0UseCase(mainTextureObject);
24
+ $gl.bindFramebuffer($gl.FRAMEBUFFER, $getPixelFrameBuffer());
25
+ $gl.framebufferTexture2D($gl.FRAMEBUFFER, $gl.COLOR_ATTACHMENT0, $gl.TEXTURE_2D, mainTextureObject.resource, 0);
26
+ const pixels = new Uint8Array(width * height * 4);
27
+ const $mainAttachmentObject = $context.$mainAttachmentObject;
28
+ if (pixels.byteLength > $byteLength) {
29
+ $byteLength = $upperPowerOfTwo(pixels.byteLength);
30
+ $gl.bufferData($gl.PIXEL_PACK_BUFFER, $byteLength, $gl.STREAM_READ);
31
+ }
32
+ $gl.readPixels(0, $mainAttachmentObject.height - height, width, height, $gl.RGBA, $gl.UNSIGNED_BYTE, 0);
33
+ const sync = $gl.fenceSync($gl.SYNC_GPU_COMMANDS_COMPLETE, 0);
34
+ // 非同期 readPixels 用 PBO の設定
35
+ await new Promise((resolve) => {
36
+ const wait = () => {
37
+ const status = $gl.clientWaitSync(sync, $gl.SYNC_FLUSH_COMMANDS_BIT, 0);
38
+ if (status === $gl.TIMEOUT_EXPIRED) {
39
+ requestAnimationFrame(wait);
40
+ return;
41
+ }
42
+ $gl.deleteSync(sync);
43
+ $gl.getBufferSubData($gl.PIXEL_PACK_BUFFER, 0, pixels);
44
+ return resolve();
45
+ };
46
+ wait();
47
+ });
48
+ $gl.bindFramebuffer($gl.FRAMEBUFFER, $readFrameBuffer);
49
+ // 描画用の OffscreenCanvas に pixelsを描画
50
+ const offscreenCanvas = new OffscreenCanvas(width, height);
51
+ const context = offscreenCanvas.getContext("2d");
52
+ const imageData = new ImageData(new Uint8ClampedArray(pixels), width, height);
53
+ context.putImageData(imageData, 0, 0);
54
+ // 反転してImageBitmapを返却
55
+ return await createImageBitmap(offscreenCanvas, {
56
+ "imageOrientation": "flipY"
57
+ });
58
+ };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @description アトラスへの描画終了
3
+ * End drawing to the atlas
4
+ *
5
+ * @return {void}
6
+ * @method
7
+ * @protected
8
+ */
9
+ export declare const execute: () => void;
@@ -0,0 +1,12 @@
1
+ import { $gl } from "../../WebGLUtil";
2
+ /**
3
+ * @description アトラスへの描画終了
4
+ * End drawing to the atlas
5
+ *
6
+ * @return {void}
7
+ * @method
8
+ * @protected
9
+ */
10
+ export const execute = () => {
11
+ $gl.disable($gl.SCISSOR_TEST);
12
+ };
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @description 背景色を更新
3
+ * Update background color
4
+ *
5
+ * @param {number} red
6
+ * @param {number} green
7
+ * @param {number} blue
8
+ * @param {number} alpha
9
+ * @return {void}
10
+ * @method
11
+ * @protected
12
+ */
13
+ export declare const execute: (red: number, green: number, blue: number, alpha: number) => void;
@@ -0,0 +1,18 @@
1
+ import { $gl } from "../../WebGLUtil";
2
+ /**
3
+ * @description 背景色を更新
4
+ * Update background color
5
+ *
6
+ * @param {number} red
7
+ * @param {number} green
8
+ * @param {number} blue
9
+ * @param {number} alpha
10
+ * @return {void}
11
+ * @method
12
+ * @protected
13
+ */
14
+ export const execute = (red, green, blue, alpha) => {
15
+ $gl.clearColor(red, green, blue, alpha);
16
+ $gl.clear($gl.COLOR_BUFFER_BIT | $gl.STENCIL_BUFFER_BIT);
17
+ $gl.clearColor(0, 0, 0, 0);
18
+ };
@@ -0,0 +1,11 @@
1
+ import type { Context } from "../../Context";
2
+ /**
3
+ * @description コンテキストの値を初期化する
4
+ * Initialize the values of the context
5
+ *
6
+ * @param {Context} context
7
+ * @return {void}
8
+ * @method
9
+ * @protected
10
+ */
11
+ export declare const execute: (context: Context) => void;