@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.
- package/package.json +11 -18
- package/src/AtlasManager/service/AtlasManagerCreateNodeService.d.ts +12 -0
- package/src/AtlasManager/service/AtlasManagerCreateNodeService.js +27 -0
- package/src/AtlasManager/service/AtlasManagerRemoveNodeService.d.ts +11 -0
- package/src/AtlasManager/service/AtlasManagerRemoveNodeService.js +17 -0
- package/src/AtlasManager/usecase/AtlasManagerResetUseCase.d.ts +9 -0
- package/src/AtlasManager/usecase/AtlasManagerResetUseCase.js +19 -0
- package/src/AtlasManager.d.ts +132 -0
- package/src/AtlasManager.js +228 -0
- package/src/BezierConverter/service/BezierConverterSplit2CubicService.d.ts +19 -0
- package/src/BezierConverter/service/BezierConverterSplit2CubicService.js +41 -0
- package/src/BezierConverter/service/BezierConverterSplit2QuadService.d.ts +18 -0
- package/src/BezierConverter/service/BezierConverterSplit2QuadService.js +31 -0
- package/src/BezierConverter/usecase/BezierConverterCubicToQuadUseCase.d.ts +17 -0
- package/src/BezierConverter/usecase/BezierConverterCubicToQuadUseCase.js +29 -0
- package/src/BezierConverter.d.ts +8 -0
- package/src/BezierConverter.js +8 -0
- package/src/Bitmap.d.ts +8 -0
- package/src/Bitmap.js +8 -0
- package/src/Blend/service/BlendAddService.d.ts +9 -0
- package/src/Blend/service/BlendAddService.js +16 -0
- package/src/Blend/service/BlendAlphaService.d.ts +9 -0
- package/src/Blend/service/BlendAlphaService.js +16 -0
- package/src/Blend/service/BlendEraseService.d.ts +9 -0
- package/src/Blend/service/BlendEraseService.js +16 -0
- package/src/Blend/service/BlendOneZeroService.d.ts +9 -0
- package/src/Blend/service/BlendOneZeroService.js +16 -0
- package/src/Blend/service/BlendResetService.d.ts +9 -0
- package/src/Blend/service/BlendResetService.js +16 -0
- package/src/Blend/service/BlendScreenService.d.ts +9 -0
- package/src/Blend/service/BlendScreenService.js +16 -0
- package/src/Blend/service/BlendSourceAtopService.d.ts +9 -0
- package/src/Blend/service/BlendSourceAtopService.js +16 -0
- package/src/Blend/service/BlendSourceInService.d.ts +9 -0
- package/src/Blend/service/BlendSourceInService.js +16 -0
- package/src/Blend/usecase/BlendBootUseCase.d.ts +9 -0
- package/src/Blend/usecase/BlendBootUseCase.js +14 -0
- package/src/Blend/usecase/BlendDrawFilterToMainUseCase.d.ts +14 -0
- package/src/Blend/usecase/BlendDrawFilterToMainUseCase.js +79 -0
- package/src/Blend/usecase/BlendOperationUseCase.d.ts +11 -0
- package/src/Blend/usecase/BlendOperationUseCase.js +37 -0
- package/src/Blend/usecase/BlnedClearArraysInstancedUseCase.d.ts +9 -0
- package/src/Blend/usecase/BlnedClearArraysInstancedUseCase.js +13 -0
- package/src/Blend/usecase/BlnedDrawArraysInstancedUseCase.d.ts +9 -0
- package/src/Blend/usecase/BlnedDrawArraysInstancedUseCase.js +24 -0
- package/src/Blend/usecase/BlnedDrawDisplayObjectUseCase.d.ts +16 -0
- package/src/Blend/usecase/BlnedDrawDisplayObjectUseCase.js +159 -0
- package/src/Blend.d.ts +39 -0
- package/src/Blend.js +64 -0
- package/src/ColorBufferObject/service/ColorBufferObjectCreateService.d.ts +10 -0
- package/src/ColorBufferObject/service/ColorBufferObjectCreateService.js +27 -0
- package/src/ColorBufferObject/service/ColorBufferObjectMeguruBinarySearchService.d.ts +10 -0
- package/src/ColorBufferObject/service/ColorBufferObjectMeguruBinarySearchService.js +24 -0
- package/src/ColorBufferObject/usecase/ColorBufferObjectAcquireObjectUseCase.d.ts +11 -0
- package/src/ColorBufferObject/usecase/ColorBufferObjectAcquireObjectUseCase.js +28 -0
- package/src/ColorBufferObject/usecase/ColorBufferObjectGetColorBufferObjectUseCase.d.ts +12 -0
- package/src/ColorBufferObject/usecase/ColorBufferObjectGetColorBufferObjectUseCase.js +32 -0
- package/src/ColorBufferObject/usecase/ColorBufferObjectReleaseColorBufferObjectUseCase.d.ts +11 -0
- package/src/ColorBufferObject/usecase/ColorBufferObjectReleaseColorBufferObjectUseCase.js +19 -0
- package/src/ColorBufferObject.d.ts +9 -0
- package/src/ColorBufferObject.js +8 -0
- package/src/Context/service/ContextBeginNodeRenderingService.d.ts +13 -0
- package/src/Context/service/ContextBeginNodeRenderingService.js +22 -0
- package/src/Context/service/ContextCreateImageBitmapService.d.ts +11 -0
- package/src/Context/service/ContextCreateImageBitmapService.js +58 -0
- package/src/Context/service/ContextEndNodeRenderingService.d.ts +9 -0
- package/src/Context/service/ContextEndNodeRenderingService.js +12 -0
- package/src/Context/service/ContextFillBackgroundColorService.d.ts +13 -0
- package/src/Context/service/ContextFillBackgroundColorService.js +18 -0
- package/src/Context/service/ContextResetService.d.ts +11 -0
- package/src/Context/service/ContextResetService.js +14 -0
- package/src/Context/service/ContextResetStyleService.d.ts +11 -0
- package/src/Context/service/ContextResetStyleService.js +13 -0
- package/src/Context/service/ContextRestoreService.d.ts +11 -0
- package/src/Context/service/ContextRestoreService.js +23 -0
- package/src/Context/service/ContextSaveService.d.ts +11 -0
- package/src/Context/service/ContextSaveService.js +13 -0
- package/src/Context/service/ContextSetTransformService.d.ts +16 -0
- package/src/Context/service/ContextSetTransformService.js +23 -0
- package/src/Context/service/ContextTransformService.d.ts +17 -0
- package/src/Context/service/ContextTransformService.js +29 -0
- package/src/Context/service/ContextUpdateAllTransferBoundsService.d.ts +11 -0
- package/src/Context/service/ContextUpdateAllTransferBoundsService.js +21 -0
- package/src/Context/service/ContextUpdateBackgroundColorService.d.ts +15 -0
- package/src/Context/service/ContextUpdateBackgroundColorService.js +20 -0
- package/src/Context/service/ContextUpdateTransferBoundsService.d.ts +11 -0
- package/src/Context/service/ContextUpdateTransferBoundsService.js +21 -0
- package/src/Context/service/ContextUseGridService.d.ts +10 -0
- package/src/Context/service/ContextUseGridService.js +14 -0
- package/src/Context/usecase/ContextApplyFilterUseCase.d.ts +21 -0
- package/src/Context/usecase/ContextApplyFilterUseCase.js +200 -0
- package/src/Context/usecase/ContextBindUseCase.d.ts +13 -0
- package/src/Context/usecase/ContextBindUseCase.js +42 -0
- package/src/Context/usecase/ContextBitmapFillUseCase.d.ts +15 -0
- package/src/Context/usecase/ContextBitmapFillUseCase.js +31 -0
- package/src/Context/usecase/ContextBitmapStrokeUseCase.d.ts +15 -0
- package/src/Context/usecase/ContextBitmapStrokeUseCase.js +31 -0
- package/src/Context/usecase/ContextClearRectUseCase.d.ts +13 -0
- package/src/Context/usecase/ContextClearRectUseCase.js +20 -0
- package/src/Context/usecase/ContextClipUseCase.d.ts +9 -0
- package/src/Context/usecase/ContextClipUseCase.js +66 -0
- package/src/Context/usecase/ContextDrawElementUseCase.d.ts +12 -0
- package/src/Context/usecase/ContextDrawElementUseCase.js +26 -0
- package/src/Context/usecase/ContextDrawFillUseCase.d.ts +9 -0
- package/src/Context/usecase/ContextDrawFillUseCase.js +69 -0
- package/src/Context/usecase/ContextDrawPixelsUseCase.d.ts +12 -0
- package/src/Context/usecase/ContextDrawPixelsUseCase.js +26 -0
- package/src/Context/usecase/ContextFillUseCase.d.ts +10 -0
- package/src/Context/usecase/ContextFillUseCase.js +23 -0
- package/src/Context/usecase/ContextGradientFillUseCase.d.ts +15 -0
- package/src/Context/usecase/ContextGradientFillUseCase.js +34 -0
- package/src/Context/usecase/ContextGradientStrokeUseCase.d.ts +15 -0
- package/src/Context/usecase/ContextGradientStrokeUseCase.js +34 -0
- package/src/Context/usecase/ContextLinearGradientFillUseCase.d.ts +14 -0
- package/src/Context/usecase/ContextLinearGradientFillUseCase.js +56 -0
- package/src/Context/usecase/ContextNormalFillUseCase.d.ts +14 -0
- package/src/Context/usecase/ContextNormalFillUseCase.js +42 -0
- package/src/Context/usecase/ContextPatternBitmapFillUseCase.d.ts +14 -0
- package/src/Context/usecase/ContextPatternBitmapFillUseCase.js +55 -0
- package/src/Context/usecase/ContextRadialGradientFillUseCase.d.ts +14 -0
- package/src/Context/usecase/ContextRadialGradientFillUseCase.js +59 -0
- package/src/Context/usecase/ContextResizeUseCase.d.ts +14 -0
- package/src/Context/usecase/ContextResizeUseCase.js +43 -0
- package/src/Context/usecase/ContextStrokeUseCase.d.ts +9 -0
- package/src/Context/usecase/ContextStrokeUseCase.js +22 -0
- package/src/Context.d.ts +697 -0
- package/src/Context.js +993 -0
- package/src/Filter/BevelFilter/usecase/FilterApplyBevelFilterUseCase.d.ts +22 -0
- package/src/Filter/BevelFilter/usecase/FilterApplyBevelFilterUseCase.js +105 -0
- package/src/Filter/BitmapFilter/usecase/FilterApplyBitmapFilterUseCase.d.ts +37 -0
- package/src/Filter/BitmapFilter/usecase/FilterApplyBitmapFilterUseCase.js +108 -0
- package/src/Filter/BlurFilter/usecase/FilterApplyBlurFilterUseCase.d.ts +16 -0
- package/src/Filter/BlurFilter/usecase/FilterApplyBlurFilterUseCase.js +134 -0
- package/src/Filter/BlurFilter/usecase/FilterApplyDirectionalBlurFilterUseCase.d.ts +13 -0
- package/src/Filter/BlurFilter/usecase/FilterApplyDirectionalBlurFilterUseCase.js +24 -0
- package/src/Filter/ColorMatrixFilter/usecase/FilterApplyColorMatrixFilterUseCase.d.ts +12 -0
- package/src/Filter/ColorMatrixFilter/usecase/FilterApplyColorMatrixFilterUseCase.js +38 -0
- package/src/Filter/ConvolutionFilter/usecase/FilterApplyConvolutionFilterUseCase.d.ts +20 -0
- package/src/Filter/ConvolutionFilter/usecase/FilterApplyConvolutionFilterUseCase.js +49 -0
- package/src/Filter/DisplacementMapFilter/usecase/FilterApplyDisplacementMapFilterUseCase.d.ts +24 -0
- package/src/Filter/DisplacementMapFilter/usecase/FilterApplyDisplacementMapFilterUseCase.js +59 -0
- package/src/Filter/DropShadowFilter/usecase/FilterApplyDropShadowFilterUseCase.d.ts +23 -0
- package/src/Filter/DropShadowFilter/usecase/FilterApplyDropShadowFilterUseCase.js +84 -0
- package/src/Filter/GlowFilter/usecase/FilterApplyGlowFilterUseCase.d.ts +20 -0
- package/src/Filter/GlowFilter/usecase/FilterApplyGlowFilterUseCase.js +51 -0
- package/src/Filter/GradientBevelFilter/usecase/FilterApplyGradientBevelFilterUseCase.d.ts +23 -0
- package/src/Filter/GradientBevelFilter/usecase/FilterApplyGradientBevelFilterUseCase.js +105 -0
- package/src/Filter/GradientGlowFilter/usecase/FilterApplyGradientGlowFilterUseCase.d.ts +23 -0
- package/src/Filter/GradientGlowFilter/usecase/FilterApplyGradientGlowFilterUseCase.js +81 -0
- package/src/Filter.d.ts +45 -0
- package/src/Filter.js +53 -0
- package/src/FrameBufferManager/service/FrameBufferManagerBindAttachmentObjectService.d.ts +11 -0
- package/src/FrameBufferManager/service/FrameBufferManagerBindAttachmentObjectService.js +29 -0
- package/src/FrameBufferManager/service/FrameBufferManagerCreateAttachmentObjectService.d.ts +10 -0
- package/src/FrameBufferManager/service/FrameBufferManagerCreateAttachmentObjectService.js +26 -0
- package/src/FrameBufferManager/service/FrameBufferManagerTransferAtlasTextureService.d.ts +9 -0
- package/src/FrameBufferManager/service/FrameBufferManagerTransferAtlasTextureService.js +44 -0
- package/src/FrameBufferManager/service/FrameBufferManagerTransferMainCanvasService.d.ts +9 -0
- package/src/FrameBufferManager/service/FrameBufferManagerTransferMainCanvasService.js +24 -0
- package/src/FrameBufferManager/service/FrameBufferManagerUnBindAttachmentObjectService.d.ts +9 -0
- package/src/FrameBufferManager/service/FrameBufferManagerUnBindAttachmentObjectService.js +17 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerGetAttachmentObjectUseCase.d.ts +13 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerGetAttachmentObjectUseCase.js +41 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromBoundsUseCase.d.ts +14 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromBoundsUseCase.js +41 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromNodeUseCase.d.ts +12 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromNodeUseCase.js +38 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerReleaseAttachmentObjectUseCase.d.ts +12 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerReleaseAttachmentObjectUseCase.js +30 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerTransferTextureFromRectUseCase.d.ts +11 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerTransferTextureFromRectUseCase.js +25 -0
- package/src/FrameBufferManager.d.ts +147 -0
- package/src/FrameBufferManager.js +229 -0
- package/src/Gradient.d.ts +8 -0
- package/src/Gradient.js +8 -0
- package/src/Grid.d.ts +14 -0
- package/src/Grid.js +16 -0
- package/src/Mask/service/MaskBeginMaskService.d.ts +9 -0
- package/src/Mask/service/MaskBeginMaskService.js +27 -0
- package/src/Mask/service/MaskEndMaskService.d.ts +9 -0
- package/src/Mask/service/MaskEndMaskService.js +26 -0
- package/src/Mask/service/MaskSetMaskBoundsService.d.ts +13 -0
- package/src/Mask/service/MaskSetMaskBoundsService.js +26 -0
- package/src/Mask/service/MaskUnionMaskService.d.ts +9 -0
- package/src/Mask/service/MaskUnionMaskService.js +32 -0
- package/src/Mask/usecase/MaskBindUseCase.d.ts +10 -0
- package/src/Mask/usecase/MaskBindUseCase.js +25 -0
- package/src/Mask/usecase/MaskLeaveMaskUseCase.d.ts +9 -0
- package/src/Mask/usecase/MaskLeaveMaskUseCase.js +53 -0
- package/src/Mask.d.ts +29 -0
- package/src/Mask.js +42 -0
- package/src/Mesh/service/MeshCalculateNormalVectorService.d.ts +13 -0
- package/src/Mesh/service/MeshCalculateNormalVectorService.js +18 -0
- package/src/Mesh/service/MeshCalculateNormalizeBezierService.d.ts +11 -0
- package/src/Mesh/service/MeshCalculateNormalizeBezierService.js +15 -0
- package/src/Mesh/service/MeshFillGenerateService.d.ts +23 -0
- package/src/Mesh/service/MeshFillGenerateService.js +197 -0
- package/src/Mesh/service/MeshFindOverlappingPathsService.d.ts +13 -0
- package/src/Mesh/service/MeshFindOverlappingPathsService.js +28 -0
- package/src/Mesh/service/MeshGenerateCalculateRoundCapService.d.ts +13 -0
- package/src/Mesh/service/MeshGenerateCalculateRoundCapService.js +51 -0
- package/src/Mesh/service/MeshGenerateCalculateSquareCapService.d.ts +13 -0
- package/src/Mesh/service/MeshGenerateCalculateSquareCapService.js +64 -0
- package/src/Mesh/service/MeshGetQuadraticBezierPointService.d.ts +14 -0
- package/src/Mesh/service/MeshGetQuadraticBezierPointService.js +18 -0
- package/src/Mesh/service/MeshGetQuadraticBezierTangentService.d.ts +14 -0
- package/src/Mesh/service/MeshGetQuadraticBezierTangentService.js +18 -0
- package/src/Mesh/service/MeshIsPointInsideRectangleService.d.ts +12 -0
- package/src/Mesh/service/MeshIsPointInsideRectangleService.js +35 -0
- package/src/Mesh/service/MeshLerpService.d.ts +13 -0
- package/src/Mesh/service/MeshLerpService.js +17 -0
- package/src/Mesh/usecase/MeshApproximateOffsetQuadraticUseCase.d.ts +14 -0
- package/src/Mesh/usecase/MeshApproximateOffsetQuadraticUseCase.js +35 -0
- package/src/Mesh/usecase/MeshCalculateCurveRectangleUseCase.d.ts +15 -0
- package/src/Mesh/usecase/MeshCalculateCurveRectangleUseCase.js +51 -0
- package/src/Mesh/usecase/MeshCalculateLineRectangleUseCase.d.ts +14 -0
- package/src/Mesh/usecase/MeshCalculateLineRectangleUseCase.js +42 -0
- package/src/Mesh/usecase/MeshFillGenerateUseCase.d.ts +12 -0
- package/src/Mesh/usecase/MeshFillGenerateUseCase.js +42 -0
- package/src/Mesh/usecase/MeshGenerateCalculateBevelJoinUseCase.d.ts +15 -0
- package/src/Mesh/usecase/MeshGenerateCalculateBevelJoinUseCase.js +40 -0
- package/src/Mesh/usecase/MeshGenerateCalculateMiterJoinUseCase.d.ts +17 -0
- package/src/Mesh/usecase/MeshGenerateCalculateMiterJoinUseCase.js +70 -0
- package/src/Mesh/usecase/MeshGenerateCalculateRoundJoinUseCase.d.ts +15 -0
- package/src/Mesh/usecase/MeshGenerateCalculateRoundJoinUseCase.js +51 -0
- package/src/Mesh/usecase/MeshGenerateStrokeOutlineUseCase.d.ts +12 -0
- package/src/Mesh/usecase/MeshGenerateStrokeOutlineUseCase.js +108 -0
- package/src/Mesh/usecase/MeshSplitBezierMultipleTimesUseCase.d.ts +14 -0
- package/src/Mesh/usecase/MeshSplitBezierMultipleTimesUseCase.js +32 -0
- package/src/Mesh/usecase/MeshSplitQuadraticBezierUseCase.d.ts +14 -0
- package/src/Mesh/usecase/MeshSplitQuadraticBezierUseCase.js +28 -0
- package/src/Mesh/usecase/MeshStrokeGenerateUseCase.d.ts +12 -0
- package/src/Mesh/usecase/MeshStrokeGenerateUseCase.js +21 -0
- package/src/Mesh.d.ts +64 -0
- package/src/Mesh.js +103 -0
- package/src/PathCommand/service/PathCommandBeginPathService.d.ts +9 -0
- package/src/PathCommand/service/PathCommandBeginPathService.js +16 -0
- package/src/PathCommand/service/PathCommandCreateRectVerticesService.d.ts +14 -0
- package/src/PathCommand/service/PathCommandCreateRectVerticesService.js +16 -0
- package/src/PathCommand/service/PathCommandEqualsToLastPointService.d.ts +11 -0
- package/src/PathCommand/service/PathCommandEqualsToLastPointService.js +17 -0
- package/src/PathCommand/service/PathCommandPushCurrentPathToVerticesService.d.ts +10 -0
- package/src/PathCommand/service/PathCommandPushCurrentPathToVerticesService.js +19 -0
- package/src/PathCommand/service/PathCommandPushPointToCurrentPathService.d.ts +12 -0
- package/src/PathCommand/service/PathCommandPushPointToCurrentPathService.js +15 -0
- package/src/PathCommand/usecase/PathCommandArcUseCase.d.ts +12 -0
- package/src/PathCommand/usecase/PathCommandArcUseCase.js +20 -0
- package/src/PathCommand/usecase/PathCommandBezierCurveToUseCase.d.ts +15 -0
- package/src/PathCommand/usecase/PathCommandBezierCurveToUseCase.js +34 -0
- package/src/PathCommand/usecase/PathCommandClosePathUseCase.d.ts +9 -0
- package/src/PathCommand/usecase/PathCommandClosePathUseCase.js +22 -0
- package/src/PathCommand/usecase/PathCommandLineToUseCase.d.ts +11 -0
- package/src/PathCommand/usecase/PathCommandLineToUseCase.js +26 -0
- package/src/PathCommand/usecase/PathCommandMoveToUseCase.d.ts +13 -0
- package/src/PathCommand/usecase/PathCommandMoveToUseCase.js +31 -0
- package/src/PathCommand/usecase/PathCommandQuadraticCurveToUseCase.d.ts +13 -0
- package/src/PathCommand/usecase/PathCommandQuadraticCurveToUseCase.js +26 -0
- package/src/PathCommand.d.ts +27 -0
- package/src/PathCommand.js +31 -0
- package/src/Shader/Fragment/Filter/FragmentShaderSourceBlurFilter.d.ts +7 -0
- package/{dist/shader/fragment/filter → src/Shader/Fragment/Filter}/FragmentShaderSourceBlurFilter.js +9 -16
- package/src/Shader/Fragment/Filter/FragmentShaderSourceColorMatrixFilter.d.ts +6 -0
- package/{dist/shader/fragment/filter → src/Shader/Fragment/Filter}/FragmentShaderSourceColorMatrixFilter.js +7 -14
- package/src/Shader/Fragment/Filter/FragmentShaderSourceConvolutionFilter.d.ts +11 -0
- package/src/Shader/Fragment/Filter/FragmentShaderSourceConvolutionFilter.js +72 -0
- package/src/Shader/Fragment/Filter/FragmentShaderSourceDisplacementMapFilter.d.ts +10 -0
- package/src/Shader/Fragment/Filter/FragmentShaderSourceDisplacementMapFilter.js +99 -0
- package/src/Shader/Fragment/Filter/FragmentShaderSourceFilter.d.ts +15 -0
- package/src/Shader/Fragment/Filter/FragmentShaderSourceFilter.js +273 -0
- package/src/Shader/Fragment/FragmentShaderLibrary.d.ts +19 -0
- package/src/Shader/Fragment/FragmentShaderLibrary.js +34 -0
- package/src/Shader/Fragment/FragmentShaderSource.d.ts +45 -0
- package/src/Shader/Fragment/FragmentShaderSource.js +114 -0
- package/src/Shader/Fragment/FragmentShaderSourceBlend.d.ts +8 -0
- package/src/Shader/Fragment/FragmentShaderSourceBlend.js +285 -0
- package/src/Shader/Fragment/FragmentShaderSourceGradient.d.ts +11 -0
- package/src/Shader/Fragment/FragmentShaderSourceGradient.js +102 -0
- package/src/Shader/Fragment/FragmentShaderSourceGradientLUT.d.ts +12 -0
- package/src/Shader/Fragment/FragmentShaderSourceGradientLUT.js +53 -0
- package/src/Shader/Fragment/FragmentShaderSourceTexture.d.ts +13 -0
- package/src/Shader/Fragment/FragmentShaderSourceTexture.js +59 -0
- package/src/Shader/GradientLUTGenerator/service/GradientLUTSetFilterUniformService.d.ts +16 -0
- package/src/Shader/GradientLUTGenerator/service/GradientLUTSetFilterUniformService.js +30 -0
- package/src/Shader/GradientLUTGenerator/service/GradientLUTSetUniformService.d.ts +15 -0
- package/src/Shader/GradientLUTGenerator/service/GradientLUTSetUniformService.js +29 -0
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateFilterTextureUseCase.d.ts +13 -0
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateFilterTextureUseCase.js +37 -0
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateShapeTextureUseCase.d.ts +12 -0
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateShapeTextureUseCase.js +44 -0
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGeneratorFillTextureUseCase.d.ts +13 -0
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGeneratorFillTextureUseCase.js +20 -0
- package/src/Shader/GradientLUTGenerator.d.ts +36 -0
- package/src/Shader/GradientLUTGenerator.js +60 -0
- package/src/Shader/ShaderInstancedManager/usecase/ShaderInstancedManagerDrawArraysInstancedUseCase.d.ts +11 -0
- package/src/Shader/ShaderInstancedManager/usecase/ShaderInstancedManagerDrawArraysInstancedUseCase.js +20 -0
- package/src/Shader/ShaderInstancedManager.d.ts +32 -0
- package/src/Shader/ShaderInstancedManager.js +43 -0
- package/src/Shader/ShaderManager/service/ShaderManagerBindUniformService.d.ts +11 -0
- package/src/Shader/ShaderManager/service/ShaderManagerBindUniformService.js +23 -0
- package/src/Shader/ShaderManager/service/ShaderManagerCreateProgramService.d.ts +12 -0
- package/src/Shader/ShaderManager/service/ShaderManagerCreateProgramService.js +39 -0
- package/src/Shader/ShaderManager/service/ShaderManagerInitializeUniformService.d.ts +12 -0
- package/src/Shader/ShaderManager/service/ShaderManagerInitializeUniformService.js +62 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFillUniformService.d.ts +14 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFillUniformService.js +85 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFilterUniformService.d.ts +35 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFilterUniformService.js +94 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBlendUniformService.d.ts +11 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBlendUniformService.js +14 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBlendWithColorTransformUniformService.d.ts +19 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBlendWithColorTransformUniformService.js +33 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBlurFilterUniformService.d.ts +16 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBlurFilterUniformService.js +30 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetColorMatrixFilterUniformService.d.ts +12 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetColorMatrixFilterUniformService.js +35 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetConvolutionFilterUniformService.d.ts +21 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetConvolutionFilterUniformService.js +42 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetDisplacementMapFilterUniformService.d.ts +24 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetDisplacementMapFilterUniformService.js +44 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetFillUniformService.d.ts +12 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetFillUniformService.js +55 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetGradientFillUniformService.d.ts +17 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetGradientFillUniformService.js +97 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetMaskUniformService.d.ts +11 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetMaskUniformService.js +54 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureUniformService.d.ts +13 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureUniformService.js +29 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureWithColorTransformUniformService.d.ts +13 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureWithColorTransformUniformService.js +38 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetTextureUniformService.d.ts +13 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetTextureUniformService.js +25 -0
- package/src/Shader/ShaderManager/service/ShaderManagerUseProgramService.d.ts +11 -0
- package/src/Shader/ShaderManager/service/ShaderManagerUseProgramService.js +25 -0
- package/src/Shader/ShaderManager/usecase/ShaderManagerDrawTextureUseCase.d.ts +11 -0
- package/src/Shader/ShaderManager/usecase/ShaderManagerDrawTextureUseCase.js +21 -0
- package/src/Shader/ShaderManager/usecase/ShaderManagerFillUseCase.d.ts +13 -0
- package/src/Shader/ShaderManager/usecase/ShaderManagerFillUseCase.js +24 -0
- package/src/Shader/ShaderManager.d.ts +78 -0
- package/src/Shader/ShaderManager.js +109 -0
- package/src/Shader/Variants/Bitmap/service/VariantsBitmapShaderService.d.ts +12 -0
- package/src/Shader/Variants/Bitmap/service/VariantsBitmapShaderService.js +26 -0
- package/src/Shader/Variants/BitmapVariants.d.ts +9 -0
- package/src/Shader/Variants/BitmapVariants.js +8 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendDrawShaderService.d.ts +13 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendDrawShaderService.js +23 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendInstanceShaderService.d.ts +10 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendInstanceShaderService.js +21 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendMatrixTextureShaderService.d.ts +11 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendMatrixTextureShaderService.js +22 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendTextureShaderService.d.ts +10 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendTextureShaderService.js +21 -0
- package/src/Shader/Variants/BlendVariants.d.ts +10 -0
- package/src/Shader/Variants/BlendVariants.js +8 -0
- package/src/Shader/Variants/Filter/service/VariantsBitmapFilterShaderService.d.ts +18 -0
- package/src/Shader/Variants/Filter/service/VariantsBitmapFilterShaderService.js +48 -0
- package/src/Shader/Variants/Filter/service/VariantsBlurFilterShaderService.d.ts +11 -0
- package/src/Shader/Variants/Filter/service/VariantsBlurFilterShaderService.js +22 -0
- package/src/Shader/Variants/Filter/service/VariantsColorMatrixFilterShaderService.d.ts +10 -0
- package/src/Shader/Variants/Filter/service/VariantsColorMatrixFilterShaderService.js +21 -0
- package/src/Shader/Variants/Filter/service/VariantsConvolutionFilterShaderService.d.ts +14 -0
- package/src/Shader/Variants/Filter/service/VariantsConvolutionFilterShaderService.js +30 -0
- package/src/Shader/Variants/Filter/service/VariantsDisplacementMapFilterShaderService.d.ts +13 -0
- package/src/Shader/Variants/Filter/service/VariantsDisplacementMapFilterShaderService.js +25 -0
- package/src/Shader/Variants/FilterVariants.d.ts +9 -0
- package/src/Shader/Variants/FilterVariants.js +8 -0
- package/src/Shader/Variants/Gradient/service/VariantsGradientCreateCollectionKeyService.d.ts +13 -0
- package/src/Shader/Variants/Gradient/service/VariantsGradientCreateCollectionKeyService.js +19 -0
- package/src/Shader/Variants/Gradient/usecase/VariantsGradientShapeShaderUseCase.d.ts +14 -0
- package/src/Shader/Variants/Gradient/usecase/VariantsGradientShapeShaderUseCase.js +28 -0
- package/src/Shader/Variants/GradientLUT/service/VariantsGradientLUTShaderService.d.ts +12 -0
- package/src/Shader/Variants/GradientLUT/service/VariantsGradientLUTShaderService.js +26 -0
- package/src/Shader/Variants/GradientLUTVariants.d.ts +9 -0
- package/src/Shader/Variants/GradientLUTVariants.js +8 -0
- package/src/Shader/Variants/GradientVariants.d.ts +9 -0
- package/src/Shader/Variants/GradientVariants.js +8 -0
- package/src/Shader/Variants/Shape/service/VariantsShapeMaskShaderService.d.ts +11 -0
- package/src/Shader/Variants/Shape/service/VariantsShapeMaskShaderService.js +22 -0
- package/src/Shader/Variants/Shape/service/VariantsShapeRectShaderService.d.ts +10 -0
- package/src/Shader/Variants/Shape/service/VariantsShapeRectShaderService.js +21 -0
- package/src/Shader/Variants/Shape/service/VariantsShapeSolidColorShaderService.d.ts +11 -0
- package/src/Shader/Variants/Shape/service/VariantsShapeSolidColorShaderService.js +22 -0
- package/src/Shader/Variants/ShapeVariants.d.ts +9 -0
- package/src/Shader/Variants/ShapeVariants.js +8 -0
- package/src/Shader/Vertex/VertexShaderLibrary.d.ts +19 -0
- package/{dist/shader/vertex → src/Shader/Vertex}/VertexShaderLibrary.js +31 -41
- package/src/Shader/Vertex/VertexShaderSource.d.ts +30 -0
- package/src/Shader/Vertex/VertexShaderSource.js +141 -0
- package/src/Shader/Vertex/VertexShaderSourceFill.d.ts +76 -0
- package/src/Shader/Vertex/VertexShaderSourceFill.js +166 -0
- package/src/StencilBufferObject/service/StencilBufferObjectCreateService.d.ts +10 -0
- package/src/StencilBufferObject/service/StencilBufferObjectCreateService.js +24 -0
- package/src/StencilBufferObject/service/StencilBufferObjectReleaseColorBufferObjectService.d.ts +11 -0
- package/src/StencilBufferObject/service/StencilBufferObjectReleaseColorBufferObjectService.js +23 -0
- package/src/StencilBufferObject/usecase/StencilBufferObjectAcquireObjectUseCase.d.ts +13 -0
- package/src/StencilBufferObject/usecase/StencilBufferObjectAcquireObjectUseCase.js +28 -0
- package/src/StencilBufferObject/usecase/StencilBufferObjectGetStencilBufferObjectUseCase.d.ts +12 -0
- package/src/StencilBufferObject/usecase/StencilBufferObjectGetStencilBufferObjectUseCase.js +27 -0
- package/src/StencilBufferObject.d.ts +9 -0
- package/src/StencilBufferObject.js +8 -0
- package/src/TextureManager/service/TextureManagerBindService.d.ts +14 -0
- package/src/TextureManager/service/TextureManagerBindService.js +33 -0
- package/src/TextureManager/service/TextureManagerCreateTextureObjectService.d.ts +12 -0
- package/src/TextureManager/service/TextureManagerCreateTextureObjectService.js +26 -0
- package/src/TextureManager/service/TextureManagerInitializeBindService.d.ts +12 -0
- package/src/TextureManager/service/TextureManagerInitializeBindService.js +25 -0
- package/src/TextureManager/usecase/TextureManagerBind012UseCase.d.ts +14 -0
- package/src/TextureManager/usecase/TextureManagerBind012UseCase.js +19 -0
- package/src/TextureManager/usecase/TextureManagerBind01UseCase.d.ts +13 -0
- package/src/TextureManager/usecase/TextureManagerBind01UseCase.js +18 -0
- package/src/TextureManager/usecase/TextureManagerBind02UseCase.d.ts +13 -0
- package/src/TextureManager/usecase/TextureManagerBind02UseCase.js +18 -0
- package/src/TextureManager/usecase/TextureManagerBind0UseCase.d.ts +12 -0
- package/src/TextureManager/usecase/TextureManagerBind0UseCase.js +17 -0
- package/src/TextureManager/usecase/TextureManagerCreateAtlasTextureUseCase.d.ts +10 -0
- package/src/TextureManager/usecase/TextureManagerCreateAtlasTextureUseCase.js +25 -0
- package/src/TextureManager/usecase/TextureManagerCreateFromCanvasUseCase.d.ts +14 -0
- package/src/TextureManager/usecase/TextureManagerCreateFromCanvasUseCase.js +19 -0
- package/src/TextureManager/usecase/TextureManagerCreateFromPixelsUseCase.d.ts +14 -0
- package/src/TextureManager/usecase/TextureManagerCreateFromPixelsUseCase.js +19 -0
- package/src/TextureManager/usecase/TextureManagerGetMainTextureFromBoundsUseCase.d.ts +14 -0
- package/src/TextureManager/usecase/TextureManagerGetMainTextureFromBoundsUseCase.js +50 -0
- package/src/TextureManager/usecase/TextureManagerGetTextureUseCase.d.ts +14 -0
- package/src/TextureManager/usecase/TextureManagerGetTextureUseCase.js +19 -0
- package/src/TextureManager/usecase/TextureManagerReleaseTextureObjectUseCase.d.ts +11 -0
- package/src/TextureManager/usecase/TextureManagerReleaseTextureObjectUseCase.js +13 -0
- package/src/TextureManager.d.ts +25 -0
- package/src/TextureManager.js +26 -0
- package/src/VertexArrayObject/service/VertexArrayObjectBindService.d.ts +11 -0
- package/src/VertexArrayObject/service/VertexArrayObjectBindService.js +26 -0
- package/src/VertexArrayObject/service/VertexArrayObjectCreateFillObjectService.d.ts +10 -0
- package/src/VertexArrayObject/service/VertexArrayObjectCreateFillObjectService.js +18 -0
- package/src/VertexArrayObject/service/VertexArrayObjectReleaseVertexArrayObjectService.d.ts +11 -0
- package/src/VertexArrayObject/service/VertexArrayObjectReleaseVertexArrayObjectService.js +16 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectBindAttributeUseCase.d.ts +9 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectBindAttributeUseCase.js +27 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectBindFillMeshUseCase.d.ts +10 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectBindFillMeshUseCase.js +25 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectBootUseCase.d.ts +10 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectBootUseCase.js +18 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectCreateGradientVertexArrayObjectUseCase.d.ts +12 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectCreateGradientVertexArrayObjectUseCase.js +27 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectCreateInstancedVertexArrayObjectUseCase.d.ts +10 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectCreateInstancedVertexArrayObjectUseCase.js +51 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectCreateRectVertexArrayObjectUseCase.d.ts +10 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectCreateRectVertexArrayObjectUseCase.js +24 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectGetFillObjectUseCase.d.ts +10 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectGetFillObjectUseCase.js +33 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectGetGradientObjectUseCase.d.ts +12 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectGetGradientObjectUseCase.js +34 -0
- package/src/VertexArrayObject.d.ts +80 -0
- package/src/VertexArrayObject.js +103 -0
- package/src/WebGLUtil.d.ts +286 -0
- package/src/WebGLUtil.js +446 -0
- package/src/index.d.ts +1 -0
- package/src/index.js +1 -0
- package/src/interface/IAttachmentObject.d.ts +14 -0
- package/src/interface/IBlendMode.d.ts +1 -0
- package/{dist/interface/BoundsImpl.d.ts → src/interface/IBounds.d.ts} +1 -1
- package/{dist/interface/ClipObjectImpl.d.ts → src/interface/IClipObject.d.ts} +1 -1
- package/src/interface/IColorBufferObject.d.ts +9 -0
- package/src/interface/IFillMesh.d.ts +4 -0
- package/src/interface/IFillType.d.ts +1 -0
- package/src/interface/IGradientType.d.ts +1 -0
- package/{dist/interface/GridImpl.d.ts → src/interface/IGrid.d.ts} +1 -1
- package/src/interface/IInterpolationMethod.d.ts +1 -0
- package/src/interface/IJointStyle.d.ts +1 -0
- package/src/interface/IPath.d.ts +1 -0
- package/{dist/interface/PointImpl.d.ts → src/interface/IPoint.d.ts} +1 -1
- package/src/interface/IProgramObject.d.ts +4 -0
- package/src/interface/ISpreadMethod.d.ts +1 -0
- package/src/interface/IStencilBufferObject.d.ts +8 -0
- package/src/interface/IStrokeVertexArrayObject.d.ts +6 -0
- package/src/interface/ITextureObject.d.ts +8 -0
- package/src/interface/ITextureObject.js +1 -0
- package/{dist/interface/UniformDataImpl.d.ts → src/interface/IUniformData.d.ts} +1 -1
- package/src/interface/IUniformData.js +1 -0
- package/src/interface/IVertexArrayObject.d.ts +6 -0
- package/src/interface/IVertexArrayObject.js +1 -0
- package/dist/BezierConverter.d.ts +0 -59
- package/dist/BezierConverter.js +0 -106
- package/dist/CanvasGradientToWebGL.d.ts +0 -96
- package/dist/CanvasGradientToWebGL.js +0 -181
- package/dist/CanvasPatternToWebGL.d.ts +0 -31
- package/dist/CanvasPatternToWebGL.js +0 -50
- package/dist/CanvasToWebGLContext.d.ts +0 -650
- package/dist/CanvasToWebGLContext.js +0 -1600
- package/dist/CanvasToWebGLContextBlend.d.ts +0 -175
- package/dist/CanvasToWebGLContextBlend.js +0 -483
- package/dist/CanvasToWebGLContextGrid.d.ts +0 -74
- package/dist/CanvasToWebGLContextGrid.js +0 -283
- package/dist/CanvasToWebGLContextMask.d.ts +0 -107
- package/dist/CanvasToWebGLContextMask.js +0 -411
- package/dist/CanvasToWebGLContextPath.d.ts +0 -111
- package/dist/CanvasToWebGLContextPath.js +0 -210
- package/dist/CanvasToWebGLContextStyle.d.ts +0 -78
- package/dist/CanvasToWebGLContextStyle.js +0 -137
- package/dist/ColorBufferPool.d.ts +0 -58
- package/dist/ColorBufferPool.js +0 -134
- package/dist/Const.d.ts +0 -12
- package/dist/Const.js +0 -14
- package/dist/FrameBufferManager.d.ts +0 -174
- package/dist/FrameBufferManager.js +0 -467
- package/dist/StencilBufferPool.d.ts +0 -56
- package/dist/StencilBufferPool.js +0 -142
- package/dist/TextureManager.d.ts +0 -180
- package/dist/TextureManager.js +0 -531
- package/dist/VertexArrayObjectManager.d.ts +0 -115
- package/dist/VertexArrayObjectManager.js +0 -328
- package/dist/WebGLFillMeshGenerator.d.ts +0 -31
- package/dist/WebGLFillMeshGenerator.js +0 -101
- package/dist/WebGLStrokeMeshGenerator.d.ts +0 -183
- package/dist/WebGLStrokeMeshGenerator.js +0 -504
- package/dist/index.d.ts +0 -6
- package/dist/index.js +0 -6
- package/dist/interface/AttachmentImpl.d.ts +0 -11
- package/dist/interface/BlendModeImpl.d.ts +0 -1
- package/dist/interface/CachePositionImpl.d.ts +0 -11
- package/dist/interface/CapsStyleImpl.d.ts +0 -1
- package/dist/interface/FillMeshImpl.d.ts +0 -5
- package/dist/interface/GradientTypeImpl.d.ts +0 -1
- package/dist/interface/IndexRangeImpl.d.ts +0 -4
- package/dist/interface/InterpolationMethodImpl.d.ts +0 -1
- package/dist/interface/JointStyleImpl.d.ts +0 -1
- package/dist/interface/SpreadMethodImpl.d.ts +0 -1
- package/dist/interface/StrokeMethImpl.d.ts +0 -4
- package/dist/interface/VerticesImpl.d.ts +0 -1
- package/dist/shader/CanvasToWebGLShader.d.ts +0 -99
- package/dist/shader/CanvasToWebGLShader.js +0 -213
- package/dist/shader/CanvasToWebGLShaderList.d.ts +0 -70
- package/dist/shader/CanvasToWebGLShaderList.js +0 -109
- package/dist/shader/GradientLUTGenerator.d.ts +0 -36
- package/dist/shader/GradientLUTGenerator.js +0 -130
- package/dist/shader/WebGLShaderInstance.d.ts +0 -30
- package/dist/shader/WebGLShaderInstance.js +0 -48
- package/dist/shader/WebGLShaderUniform.d.ts +0 -52
- package/dist/shader/WebGLShaderUniform.js +0 -159
- package/dist/shader/fragment/FragmentShaderLibrary.d.ts +0 -24
- package/dist/shader/fragment/FragmentShaderLibrary.js +0 -44
- package/dist/shader/fragment/FragmentShaderSource.d.ts +0 -29
- package/dist/shader/fragment/FragmentShaderSource.js +0 -99
- package/dist/shader/fragment/FragmentShaderSourceBlend.d.ts +0 -75
- package/dist/shader/fragment/FragmentShaderSourceBlend.js +0 -384
- package/dist/shader/fragment/FragmentShaderSourceGradient.d.ts +0 -44
- package/dist/shader/fragment/FragmentShaderSourceGradient.js +0 -114
- package/dist/shader/fragment/FragmentShaderSourceGradientLUT.d.ts +0 -14
- package/dist/shader/fragment/FragmentShaderSourceGradientLUT.js +0 -58
- package/dist/shader/fragment/FragmentShaderSourceTexture.d.ts +0 -18
- package/dist/shader/fragment/FragmentShaderSourceTexture.js +0 -68
- package/dist/shader/fragment/filter/FragmentShaderSourceBlurFilter.d.ts +0 -12
- package/dist/shader/fragment/filter/FragmentShaderSourceColorMatrixFilter.d.ts +0 -11
- package/dist/shader/fragment/filter/FragmentShaderSourceConvolutionFilter.d.ts +0 -16
- package/dist/shader/fragment/filter/FragmentShaderSourceConvolutionFilter.js +0 -80
- package/dist/shader/fragment/filter/FragmentShaderSourceDisplacementMapFilter.d.ts +0 -15
- package/dist/shader/fragment/filter/FragmentShaderSourceDisplacementMapFilter.js +0 -106
- package/dist/shader/fragment/filter/FragmentShaderSourceFilter.d.ts +0 -112
- package/dist/shader/fragment/filter/FragmentShaderSourceFilter.js +0 -275
- package/dist/shader/variants/BlendShaderVariantCollection.d.ts +0 -159
- package/dist/shader/variants/BlendShaderVariantCollection.js +0 -376
- package/dist/shader/variants/FilterShaderVariantCollection.d.ts +0 -150
- package/dist/shader/variants/FilterShaderVariantCollection.js +0 -395
- package/dist/shader/variants/GradientLUTShaderVariantCollection.d.ts +0 -49
- package/dist/shader/variants/GradientLUTShaderVariantCollection.js +0 -107
- package/dist/shader/variants/GradientShapeShaderVariantCollection.d.ts +0 -61
- package/dist/shader/variants/GradientShapeShaderVariantCollection.js +0 -196
- package/dist/shader/variants/ShapeShaderVariantCollection.d.ts +0 -117
- package/dist/shader/variants/ShapeShaderVariantCollection.js +0 -427
- package/dist/shader/vertex/VertexShaderLibrary.d.ts +0 -18
- package/dist/shader/vertex/VertexShaderSource.d.ts +0 -35
- package/dist/shader/vertex/VertexShaderSource.js +0 -164
- package/dist/shader/vertex/VertexShaderSourceFill.d.ts +0 -45
- package/dist/shader/vertex/VertexShaderSourceFill.js +0 -116
- package/dist/shader/vertex/VertexShaderSourceStroke.d.ts +0 -27
- package/dist/shader/vertex/VertexShaderSourceStroke.js +0 -149
- /package/{dist/interface/AttachmentImpl.js → src/interface/IAttachmentObject.js} +0 -0
- /package/{dist/interface/BlendModeImpl.js → src/interface/IBlendMode.js} +0 -0
- /package/{dist/interface/BoundsImpl.js → src/interface/IBounds.js} +0 -0
- /package/{dist/interface/CachePositionImpl.js → src/interface/IClipObject.js} +0 -0
- /package/{dist/interface/CapsStyleImpl.js → src/interface/IColorBufferObject.js} +0 -0
- /package/{dist/interface/ClipObjectImpl.js → src/interface/IFillMesh.js} +0 -0
- /package/{dist/interface/FillMeshImpl.js → src/interface/IFillType.js} +0 -0
- /package/{dist/interface/GradientTypeImpl.js → src/interface/IGradientType.js} +0 -0
- /package/{dist/interface/GridImpl.js → src/interface/IGrid.js} +0 -0
- /package/{dist/interface/IndexRangeImpl.js → src/interface/IInterpolationMethod.js} +0 -0
- /package/{dist/interface/InterpolationMethodImpl.js → src/interface/IJointStyle.js} +0 -0
- /package/{dist/interface/JointStyleImpl.js → src/interface/IPath.js} +0 -0
- /package/{dist/interface/PointImpl.js → src/interface/IPoint.js} +0 -0
- /package/{dist/interface/SpreadMethodImpl.js → src/interface/IProgramObject.js} +0 -0
- /package/{dist/interface/StrokeMethImpl.js → src/interface/ISpreadMethod.js} +0 -0
- /package/{dist/interface/UniformDataImpl.js → src/interface/IStencilBufferObject.js} +0 -0
- /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,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,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,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;
|