@next2d/webgl 2.0.0 → 3.0.1

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 (155) hide show
  1. package/README.md +206 -5
  2. package/package.json +3 -3
  3. package/src/AtlasManager/service/AtlasManagerCreateNodeService.js +20 -6
  4. package/src/AtlasManager.d.ts +2 -118
  5. package/src/AtlasManager.js +10 -179
  6. package/src/BezierConverter/usecase/BezierConverterAdaptiveCubicToQuadUseCase.d.ts +18 -0
  7. package/src/BezierConverter/usecase/BezierConverterAdaptiveCubicToQuadUseCase.js +193 -0
  8. package/src/BezierConverter.d.ts +88 -0
  9. package/src/BezierConverter.js +158 -0
  10. package/src/Blend/service/BlendAddService.js +2 -2
  11. package/src/Blend/service/BlendAlphaService.js +2 -2
  12. package/src/Blend/service/BlendEraseService.js +2 -2
  13. package/src/Blend/service/BlendOneZeroService.js +2 -2
  14. package/src/Blend/service/BlendResetService.js +2 -2
  15. package/src/Blend/service/BlendScreenService.js +2 -2
  16. package/src/Blend/service/BlendSourceAtopService.js +2 -2
  17. package/src/Blend/service/BlendSourceInService.js +2 -2
  18. package/src/Blend/usecase/BlnedDrawArraysInstancedUseCase.js +2 -2
  19. package/src/Blend/usecase/BlnedDrawDisplayObjectUseCase.js +10 -20
  20. package/src/Blend.d.ts +2 -36
  21. package/src/Blend.js +2 -58
  22. package/src/Context/service/ContextBeginNodeRenderingService.js +3 -3
  23. package/src/Context/service/ContextCreateImageBitmapService.js +30 -10
  24. package/src/Context/service/ContextEndNodeRenderingService.js +2 -2
  25. package/src/Context/service/ContextUpdateTransferBoundsService.js +2 -2
  26. package/src/Context/usecase/ContextApplyFilterUseCase.js +16 -10
  27. package/src/Context/usecase/ContextBindUseCase.js +3 -3
  28. package/src/Context/usecase/ContextClearRectUseCase.js +3 -3
  29. package/src/Context/usecase/ContextClipUseCase.js +3 -3
  30. package/src/Context/usecase/ContextContainerBeginLayerUseCase.d.ts +18 -0
  31. package/src/Context/usecase/ContextContainerBeginLayerUseCase.js +31 -0
  32. package/src/Context/usecase/ContextContainerDrawCachedFilterUseCase.d.ts +16 -0
  33. package/src/Context/usecase/ContextContainerDrawCachedFilterUseCase.js +36 -0
  34. package/src/Context/usecase/ContextContainerEndLayerUseCase.d.ts +18 -0
  35. package/src/Context/usecase/ContextContainerEndLayerUseCase.js +171 -0
  36. package/src/Context/usecase/ContextDrawFillUseCase.js +9 -5
  37. package/src/Context/usecase/ContextGradientStrokeUseCase.js +1 -1
  38. package/src/Context/usecase/ContextLinearGradientFillUseCase.js +16 -14
  39. package/src/Context/usecase/ContextNormalFillUseCase.js +10 -12
  40. package/src/Context/usecase/ContextPatternBitmapFillUseCase.d.ts +2 -2
  41. package/src/Context/usecase/ContextPatternBitmapFillUseCase.js +13 -14
  42. package/src/Context/usecase/ContextRadialGradientFillUseCase.js +16 -14
  43. package/src/Context.d.ts +5 -626
  44. package/src/Context.js +31 -636
  45. package/src/Filter/BevelFilter/usecase/FilterApplyBevelFilterUseCase.js +2 -2
  46. package/src/Filter/BlurFilter/usecase/FilterApplyBlurFilterUseCase.js +2 -2
  47. package/src/Filter/DisplacementMapFilter/usecase/FilterApplyDisplacementMapFilterUseCase.d.ts +1 -2
  48. package/src/Filter/DisplacementMapFilter/usecase/FilterApplyDisplacementMapFilterUseCase.js +3 -9
  49. package/src/Filter/DropShadowFilter/usecase/FilterApplyDropShadowFilterUseCase.js +2 -2
  50. package/src/Filter/GradientBevelFilter/usecase/FilterApplyGradientBevelFilterUseCase.js +2 -2
  51. package/src/Filter/GradientGlowFilter/usecase/FilterApplyGradientGlowFilterUseCase.js +2 -2
  52. package/src/FrameBufferManager/service/FrameBufferManagerBindAttachmentObjectService.js +8 -2
  53. package/src/FrameBufferManager/service/FrameBufferManagerTransferAtlasTextureService.js +12 -25
  54. package/src/FrameBufferManager/service/FrameBufferManagerUnBindAttachmentObjectService.js +2 -2
  55. package/src/FrameBufferManager/usecase/FrameBufferManagerGetAttachmentObjectUseCase.js +2 -2
  56. package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromNodeUseCase.js +7 -9
  57. package/src/FrameBufferManager.d.ts +8 -137
  58. package/src/FrameBufferManager.js +8 -199
  59. package/src/Mask/service/MaskBeginMaskService.js +2 -2
  60. package/src/Mask/service/MaskEndMaskService.js +2 -2
  61. package/src/Mask/service/MaskSetMaskBoundsService.js +2 -2
  62. package/src/Mask/usecase/MaskBindUseCase.js +4 -4
  63. package/src/Mask/usecase/MaskLeaveMaskUseCase.js +4 -4
  64. package/src/Mesh/service/MeshFindOverlappingPathsService.d.ts +2 -1
  65. package/src/Mesh/service/MeshFindOverlappingPathsService.js +7 -3
  66. package/src/Mesh/service/MeshIsPointInsideRectangleService.js +14 -11
  67. package/src/Mesh/usecase/MeshFillGenerateUseCase.js +7 -5
  68. package/src/Mesh/usecase/MeshGenerateCalculateBevelJoinUseCase.js +15 -3
  69. package/src/Mesh/usecase/MeshGenerateCalculateMiterJoinUseCase.js +17 -3
  70. package/src/Mesh/usecase/MeshGenerateCalculateRoundJoinUseCase.js +14 -2
  71. package/src/Mesh/usecase/MeshGenerateStrokeOutlineUseCase.js +39 -23
  72. package/src/Mesh/usecase/MeshStrokeGenerateUseCase.js +12 -4
  73. package/src/Mesh.d.ts +10 -0
  74. package/src/Mesh.js +23 -0
  75. package/src/PathCommand/service/PathCommandPushCurrentPathToVerticesService.d.ts +1 -2
  76. package/src/PathCommand/service/PathCommandPushCurrentPathToVerticesService.js +3 -4
  77. package/src/PathCommand/usecase/PathCommandBezierCurveToUseCase.d.ts +2 -2
  78. package/src/PathCommand/usecase/PathCommandBezierCurveToUseCase.js +9 -5
  79. package/src/PathCommand.js +18 -3
  80. package/src/Shader/Fragment/Filter/FragmentShaderSourceBlurFilter.d.ts +0 -6
  81. package/src/Shader/Fragment/Filter/FragmentShaderSourceBlurFilter.js +0 -6
  82. package/src/Shader/Fragment/Filter/FragmentShaderSourceColorMatrixFilter.d.ts +0 -5
  83. package/src/Shader/Fragment/Filter/FragmentShaderSourceColorMatrixFilter.js +0 -5
  84. package/src/Shader/Fragment/Filter/FragmentShaderSourceConvolutionFilter.d.ts +0 -10
  85. package/src/Shader/Fragment/Filter/FragmentShaderSourceConvolutionFilter.js +0 -10
  86. package/src/Shader/Fragment/Filter/FragmentShaderSourceDisplacementMapFilter.d.ts +0 -9
  87. package/src/Shader/Fragment/Filter/FragmentShaderSourceDisplacementMapFilter.js +8 -18
  88. package/src/Shader/Fragment/Filter/FragmentShaderSourceFilter.d.ts +0 -14
  89. package/src/Shader/Fragment/Filter/FragmentShaderSourceFilter.js +0 -99
  90. package/src/Shader/Fragment/FragmentShaderLibrary.d.ts +0 -17
  91. package/src/Shader/Fragment/FragmentShaderLibrary.js +9 -23
  92. package/src/Shader/Fragment/FragmentShaderSource.d.ts +0 -40
  93. package/src/Shader/Fragment/FragmentShaderSource.js +9 -47
  94. package/src/Shader/Fragment/FragmentShaderSourceBlend.d.ts +0 -7
  95. package/src/Shader/Fragment/FragmentShaderSourceBlend.js +0 -87
  96. package/src/Shader/Fragment/FragmentShaderSourceGradient.d.ts +0 -10
  97. package/src/Shader/Fragment/FragmentShaderSourceGradient.js +7 -41
  98. package/src/Shader/Fragment/FragmentShaderSourceGradientLUT.d.ts +0 -11
  99. package/src/Shader/Fragment/FragmentShaderSourceGradientLUT.js +0 -11
  100. package/src/Shader/Fragment/FragmentShaderSourceTexture.d.ts +0 -11
  101. package/src/Shader/Fragment/FragmentShaderSourceTexture.js +2 -13
  102. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateShapeTextureUseCase.d.ts +4 -0
  103. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateShapeTextureUseCase.js +14 -7
  104. package/src/Shader/GradientLUTGenerator.d.ts +23 -0
  105. package/src/Shader/GradientLUTGenerator.js +43 -6
  106. package/src/Shader/ShaderInstancedManager.d.ts +0 -26
  107. package/src/Shader/ShaderInstancedManager.js +0 -26
  108. package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFillUniformService.js +3 -3
  109. package/src/Shader/ShaderManager/service/ShaderManagerSetFillUniformService.js +3 -3
  110. package/src/Shader/ShaderManager/service/ShaderManagerSetGradientFillUniformService.js +3 -3
  111. package/src/Shader/ShaderManager/service/ShaderManagerSetMaskUniformService.js +3 -3
  112. package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureUniformService.js +3 -3
  113. package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureWithColorTransformUniformService.js +3 -3
  114. package/src/Shader/ShaderManager/service/ShaderManagerSetTextureUniformService.js +3 -3
  115. package/src/Shader/ShaderManager.d.ts +3 -71
  116. package/src/Shader/ShaderManager.js +22 -80
  117. package/src/Shader/Variants/Filter/service/VariantsBitmapFilterShaderService.js +2 -1
  118. package/src/Shader/Variants/GradientLUT/service/VariantsGradientLUTShaderService.d.ts +2 -2
  119. package/src/Shader/Variants/GradientLUT/service/VariantsGradientLUTShaderService.js +9 -6
  120. package/src/Shader/Variants/GradientLUTVariants.d.ts +21 -0
  121. package/src/Shader/Variants/GradientLUTVariants.js +63 -0
  122. package/src/Shader/Vertex/VertexShaderLibrary.d.ts +0 -17
  123. package/src/Shader/Vertex/VertexShaderLibrary.js +1 -18
  124. package/src/Shader/Vertex/VertexShaderSource.d.ts +0 -25
  125. package/src/Shader/Vertex/VertexShaderSource.js +0 -25
  126. package/src/Shader/Vertex/VertexShaderSourceFill.d.ts +0 -65
  127. package/src/Shader/Vertex/VertexShaderSourceFill.js +0 -65
  128. package/src/Stencil/service/StencilDisableSampleAlphaToCoverageService.d.ts +1 -0
  129. package/src/Stencil/service/StencilDisableSampleAlphaToCoverageService.js +8 -0
  130. package/src/Stencil/service/StencilEnableSampleAlphaToCoverageService.d.ts +1 -0
  131. package/src/Stencil/service/StencilEnableSampleAlphaToCoverageService.js +8 -0
  132. package/src/Stencil/service/StencilResetService.d.ts +9 -0
  133. package/src/Stencil/service/StencilResetService.js +14 -0
  134. package/src/Stencil/service/StencilSetFillModeService.d.ts +1 -0
  135. package/src/Stencil/service/StencilSetFillModeService.js +13 -0
  136. package/src/Stencil/service/StencilSetMaskModeService.d.ts +1 -0
  137. package/src/Stencil/service/StencilSetMaskModeService.js +14 -0
  138. package/src/Stencil.d.ts +9 -0
  139. package/src/Stencil.js +17 -0
  140. package/src/StencilBufferObject/usecase/StencilBufferObjectAcquireObjectUseCase.js +15 -7
  141. package/src/TextureManager/usecase/TextureManagerGetMainTextureFromBoundsUseCase.js +6 -7
  142. package/src/VertexArrayObject/service/VertexArrayObjectCreateFillObjectService.js +2 -3
  143. package/src/VertexArrayObject/usecase/VertexArrayObjectBindAttributeUseCase.js +4 -2
  144. package/src/VertexArrayObject/usecase/VertexArrayObjectBindFillMeshUseCase.js +3 -1
  145. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateInstancedVertexArrayObjectUseCase.js +5 -3
  146. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateRectVertexArrayObjectUseCase.js +2 -2
  147. package/src/VertexArrayObject.d.ts +0 -9
  148. package/src/VertexArrayObject.js +0 -16
  149. package/src/WebGLUtil.d.ts +10 -262
  150. package/src/WebGLUtil.js +45 -316
  151. package/src/interface/ICubicConverterReturnObject.d.ts +4 -0
  152. package/src/interface/ICubicConverterReturnObject.js +1 -0
  153. package/src/interface/IVertexArrayObject.d.ts +1 -1
  154. package/src/Context/service/ContextUpdateAllTransferBoundsService.d.ts +0 -11
  155. package/src/Context/service/ContextUpdateAllTransferBoundsService.js +0 -21
@@ -1,286 +1,34 @@
1
1
  import type { Context } from "./Context";
2
- /**
3
- * @description 描画の最大サイズ
4
- * Maximum size of drawing
5
- *
6
- * @type {number}
7
- * @protected
8
- */
9
2
  export declare let $RENDER_MAX_SIZE: number;
10
- /**
11
- * @description 描画の最大サイズを変更
12
- * Change the maximum size of drawing
13
- *
14
- * @param {number} size
15
- * @return {void}
16
- * @method
17
- * @protected
18
- */
19
3
  export declare const $setRenderMaxSize: (size: number) => void;
20
- /**
21
- * @description 描画のサンプリング数
22
- * Number of samples for drawing
23
- *
24
- * @type {number}
25
- * @default 4
26
- * @protected
27
- */
28
4
  export declare let $samples: number;
29
- /**
30
- * @description 描画のサンプリング数を変更
31
- * Change the number of samples for drawing
32
- *
33
- * @param {number} samples
34
- * @return {void}
35
- * @method
36
- * @protected
37
- */
38
5
  export declare const $setSamples: (samples: number) => void;
39
- /**
40
- * @type {WebGL2RenderingContext}
41
- * @protected
42
- */
43
6
  export declare let $gl: WebGL2RenderingContext;
44
- /**
45
- * @description WebGL2のコンテキストをセット
46
- * Set WebGL2 context
47
- *
48
- * @param {WebGL2RenderingContext} gl
49
- * @return {void}
50
- * @method
51
- * @protected
52
- */
53
7
  export declare const $setWebGL2RenderingContext: (gl: WebGL2RenderingContext) => void;
54
- /**
55
- * @type {Context}
56
- * @public
57
- */
58
8
  export declare let $context: Context;
59
- /**
60
- * @description 起動したコンテキストをセット
61
- * Set the context that started
62
- *
63
- * @param {Context} context
64
- * @return {void}
65
- * @method
66
- * @protected
67
- */
68
9
  export declare const $setContext: (context: Context) => void;
69
- /**
70
- * @description 指定された値を範囲内にクランプします。
71
- * Clamps the specified value within the range.
72
- *
73
- * @param {number} value
74
- * @param {number} min
75
- * @param {number} max
76
- * @param {number} [default_value=null]
77
- * @return {number}
78
- * @method
79
- * @protected
80
- */
10
+ export declare const $enableScissorTest: () => void;
11
+ export declare const $disableScissorTest: () => void;
12
+ export declare const $resetScissorState: () => void;
13
+ export declare const $enableStencilTest: () => void;
14
+ export declare const $disableStencilTest: () => void;
15
+ export declare const $resetStencilTestState: () => void;
81
16
  export declare const $clamp: (value: number, min: number, max: number, default_value?: number | null) => number;
82
- /**
83
- * @description プールした配列があれば再利用、なければ新規作成
84
- * Reuse the pooled array if available, otherwise create a new one.
85
- *
86
- * @param {array} args
87
- * @return {array}
88
- * @method
89
- * @protected
90
- */
91
17
  export declare const $getArray: (...args: any[]) => any[];
92
- /**
93
- * @description 使用済みの配列をプールに保管
94
- * Store the used array in the pool.
95
- *
96
- * @param {array} array
97
- * @return {void}
98
- * @method
99
- * @protected
100
- */
101
18
  export declare const $poolArray: (array?: any[] | null) => void;
102
- /**
103
- * @description 指定された値を2の累乗に切り上げます。
104
- * Rounds the specified value up to a power of two.
105
- *
106
- * @param {number} v
107
- * @return {number}
108
- * @method
109
- * @protected
110
- */
111
19
  export declare const $upperPowerOfTwo: (v: number) => number;
112
- /**
113
- * @description プールしたFloat32Arrayがあれば再利用、なければ新規作成
114
- * Reuse the pooled Float32Array if available, otherwise create a new one.
115
- *
116
- * @param {number} [f0=0]
117
- * @param {number} [f1=0]
118
- * @param {number} [f2=0]
119
- * @param {number} [f3=0]
120
- * @return {Float32Array}
121
- * @method
122
- * @protected
123
- */
124
20
  export declare const $getFloat32Array4: (f0?: number, f1?: number, f2?: number, f3?: number) => Float32Array;
125
- /**
126
- * @description 使用済みのFloat32Arrayをプールに保管
127
- * Store the used Float32Array in the pool.
128
- *
129
- * @param {Float32Array} array
130
- * @return {void}
131
- * @method
132
- * @protected
133
- */
134
21
  export declare const $poolFloat32Array4: (array: Float32Array) => void;
135
- /**
136
- * @description プールしたFloat32Arrayがあれば再利用、なければ新規作成
137
- * Reuse the pooled Float32Array if available, otherwise create a new one.
138
- *
139
- * @param {number} [f0=0]
140
- * @param {number} [f1=0]
141
- * @param {number} [f2=0]
142
- * @param {number} [f3=0]
143
- * @param {number} [f4=0]
144
- * @param {number} [f5=0]
145
- * @param {number} [f6=0]
146
- * @param {number} [f7=0]
147
- * @param {number} [f8=0]
148
- * @return {Float32Array}
149
- * @method
150
- * @protected
151
- */
152
22
  export declare const $getFloat32Array9: (f0?: number, f1?: number, f2?: number, f3?: number, f4?: number, f5?: number, f6?: number, f7?: number, f8?: number) => Float32Array;
153
- /**
154
- * @description 使用済みのFloat32Arrayをプールに保管
155
- * Store the used Float32Array in the pool.
156
- *
157
- * @param {Float32Array} array
158
- * @return {void}
159
- * @method
160
- * @protected
161
- */
162
23
  export declare const $poolFloat32Array9: (array: Float32Array) => void;
163
- /**
164
- * @description プールしたFloat32Arrayがあれば再利用、なければ新規作成
165
- * Reuse the pooled Float32Array if available, otherwise create a new one.
166
- *
167
- * @param {number} [f0=0]
168
- * @param {number} [f1=0]
169
- * @param {number} [f2=0]
170
- * @param {number} [f3=0]
171
- * @param {number} [f4=0]
172
- * @param {number} [f5=0]
173
- * @return {Float32Array}
174
- * @method
175
- * @protected
176
- */
177
24
  export declare const $getFloat32Array6: (f0?: number, f1?: number, f2?: number, f3?: number, f4?: number, f5?: number) => Float32Array;
178
- /**
179
- * @param {Float32Array} array
180
- * @return {void}
181
- * @method
182
- * @protected
183
- */
184
25
  export declare const $poolFloat32Array6: (array: Float32Array) => void;
185
- /**
186
- * @description プールしたInt32Arrayがあれば再利用、なければ新規作成
187
- * Reuse the pooled Int32Array if available, otherwise create a new one.
188
- *
189
- * @param {number} [f0=0]
190
- * @param {number} [f1=0]
191
- * @param {number} [f2=0]
192
- * @param {number} [f3=0]
193
- * @return {Float32Array}
194
- * @method
195
- * @protected
196
- */
197
- export declare const $getInt32Array4: (f0?: number, f1?: number, f2?: number, f3?: number) => Int32Array;
198
- /**
199
- * @description 使用済みのInt32Arrayをプールに保管
200
- * Store the used Int32Array in the pool.
201
- *
202
- * @param {Float32Array} array
203
- * @return {void}
204
- * @method
205
- * @protected
206
- */
207
- export declare const $poolInt32Array4: (array: Int32Array) => void;
208
- /**
209
- * @description 逆行列を取得
210
- * Get the inverse matrix
211
- *
212
- * @param {Float32Array} m
213
- * @returns {Float32Array}
214
- * @method
215
- * @protected
216
- */
217
26
  export declare const $inverseMatrix: (m: Float32Array) => Float32Array;
218
- /**
219
- * @description ビューポートの幅を取得
220
- * Get the width of the viewport
221
- *
222
- * @returns {number}
223
- * @method
224
- * @protected
225
- */
226
- export declare const $getViewportWidth: () => number;
227
- /**
228
- * @description ビューポートの高さを取得
229
- * Get the height of the viewport
230
- *
231
- * @returns {number}
232
- * @method
233
- * @protected
234
- */
235
- export declare const $getViewportHeight: () => number;
236
- /**
237
- * @description ビューポートのサイズをセット
238
- * Set the size of the viewport
239
- *
240
- * @param {number} viewport_width
241
- * @param {number} viewport_height
242
- * @return {void}
243
- * @method
244
- * @protected
245
- */
27
+ export declare let $viewportWidth: number;
28
+ export declare let $viewportHeight: number;
246
29
  export declare const $setViewportSize: (viewport_width: number, viewport_height: number) => void;
247
- /**
248
- * @description ビューポートのサイズを取得
249
- * Get the size of the viewport
250
- *
251
- * @param {Float32Array} matrix
252
- * @return {Float32Array}
253
- * @method
254
- * @protected
255
- */
256
30
  export declare const $linearGradientXY: (matrix: Float32Array) => Float32Array;
257
- /**
258
- * @description デバイスのピクセル比率を設定
259
- * Set the device's pixel ratio
260
- *
261
- * @param {number} device_pixel_ratio
262
- * @return {void}
263
- * @method
264
- * @public
265
- */
31
+ export declare let $devicePixelRatio: number;
266
32
  export declare const $setDevicePixelRatio: (device_pixel_ratio: number) => void;
267
- /**
268
- * @description デバイスのピクセル比率を取得
269
- * Get the device's pixel ratio
270
- *
271
- * @return {number}
272
- * @method
273
- * @public
274
- */
275
- export declare const $getDevicePixelRatio: () => number;
276
- /**
277
- * @description 2つの行列を乗算
278
- * Multiply two matrices
279
- *
280
- * @param {Float32Array} a
281
- * @param {Float32Array} b
282
- * @return {Float32Array}
283
- * @method
284
- * @protected
285
- */
286
33
  export declare const $multiplyMatrices: (a: Float32Array, b: Float32Array) => Float32Array;
34
+ export declare const $getUUID: () => string;