@next2d/webgpu 3.0.5 → 3.1.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 +3 -3
- package/src/AtlasManager.d.ts +75 -6
- package/src/AtlasManager.js +106 -30
- package/src/AttachmentManager/service/AttachmentManagerCreateAttachmentObjectService.d.ts +2 -2
- package/src/AttachmentManager/service/AttachmentManagerCreateAttachmentObjectService.js +3 -3
- package/src/AttachmentManager/service/AttachmentManagerCreateColorBufferService.d.ts +4 -4
- package/src/AttachmentManager/service/AttachmentManagerCreateColorBufferService.js +4 -4
- package/src/AttachmentManager/service/AttachmentManagerCreateStencilBufferService.d.ts +5 -5
- package/src/AttachmentManager/service/AttachmentManagerCreateStencilBufferService.js +6 -6
- package/src/AttachmentManager/service/AttachmentManagerCreateTextureObjectService.d.ts +6 -6
- package/src/AttachmentManager/service/AttachmentManagerCreateTextureObjectService.js +7 -7
- package/src/AttachmentManager/service/AttachmentManagerGetColorBufferService.d.ts +6 -6
- package/src/AttachmentManager/service/AttachmentManagerGetColorBufferService.js +9 -9
- package/src/AttachmentManager/service/AttachmentManagerGetStencilBufferService.d.ts +6 -6
- package/src/AttachmentManager/service/AttachmentManagerGetStencilBufferService.js +10 -10
- package/src/AttachmentManager/service/AttachmentManagerGetTextureService.d.ts +7 -7
- package/src/AttachmentManager/service/AttachmentManagerGetTextureService.js +10 -10
- package/src/AttachmentManager/service/AttachmentManagerReleaseTextureService.d.ts +3 -3
- package/src/AttachmentManager/service/AttachmentManagerReleaseTextureService.js +7 -7
- package/src/AttachmentManager/usecase/AttachmentManagerGetAttachmentObjectUseCase.d.ts +10 -10
- package/src/AttachmentManager/usecase/AttachmentManagerGetAttachmentObjectUseCase.js +16 -16
- package/src/AttachmentManager/usecase/AttachmentManagerReleaseAttachmentUseCase.d.ts +6 -6
- package/src/AttachmentManager/usecase/AttachmentManagerReleaseAttachmentUseCase.js +10 -10
- package/src/AttachmentManager.d.ts +28 -6
- package/src/AttachmentManager.js +28 -23
- package/src/BezierConverter/BezierConverter.d.ts +9 -3
- package/src/BezierConverter/BezierConverter.js +5 -3
- package/src/BezierConverter/usecase/BezierConverterAdaptiveCubicToQuadUseCase.d.ts +2 -13
- package/src/BezierConverter/usecase/BezierConverterAdaptiveCubicToQuadUseCase.js +13 -25
- package/src/Blend/BlendInstancedManager.d.ts +19 -15
- package/src/Blend/BlendInstancedManager.js +35 -22
- package/src/Blend/usecase/BlendApplyComplexBlendUseCase.d.ts +9 -2
- package/src/Blend/usecase/BlendApplyComplexBlendUseCase.js +28 -17
- package/src/Blend.d.ts +20 -2
- package/src/Blend.js +20 -4
- package/src/BufferManager/service/BufferManagerReleaseUniformBufferService.js +2 -2
- package/src/BufferManager/service/BufferManagerReleaseVertexBufferService.js +2 -2
- package/src/BufferManager/service/BufferManagerUpdateIndirectBufferService.d.ts +1 -0
- package/src/BufferManager/service/BufferManagerUpdateIndirectBufferService.js +1 -0
- package/src/BufferManager/usecase/BufferManagerCleanupStorageBuffersUseCase.d.ts +1 -0
- package/src/BufferManager/usecase/BufferManagerCleanupStorageBuffersUseCase.js +1 -0
- package/src/BufferManager.d.ts +108 -43
- package/src/BufferManager.js +113 -153
- package/src/Context/service/ContextComputeBitmapMatrixService.d.ts +7 -0
- package/src/Context/service/ContextComputeBitmapMatrixService.js +7 -0
- package/src/Context/service/ContextComputeGradientMatrixService.d.ts +9 -1
- package/src/Context/service/ContextComputeGradientMatrixService.js +15 -7
- package/src/Context/service/ContextFillSimpleService.d.ts +14 -0
- package/src/Context/service/ContextFillSimpleService.js +14 -0
- package/src/Context/service/ContextFillWithStencilMainService.d.ts +11 -0
- package/src/Context/service/ContextFillWithStencilMainService.js +11 -0
- package/src/Context/service/ContextFillWithStencilService.d.ts +11 -0
- package/src/Context/service/ContextFillWithStencilService.js +11 -0
- package/src/Context/usecase/ContextApplyFilterUseCase.d.ts +17 -0
- package/src/Context/usecase/ContextApplyFilterUseCase.js +201 -62
- package/src/Context/usecase/ContextBitmapFillUseCase.d.ts +23 -0
- package/src/Context/usecase/ContextBitmapFillUseCase.js +47 -0
- package/src/Context/usecase/ContextBitmapStrokeUseCase.d.ts +23 -0
- package/src/Context/usecase/ContextBitmapStrokeUseCase.js +35 -0
- package/src/Context/usecase/ContextClipUseCase.d.ts +15 -0
- package/src/Context/usecase/ContextClipUseCase.js +19 -0
- package/src/Context/usecase/ContextContainerEndLayerUseCase.d.ts +21 -1
- package/src/Context/usecase/ContextContainerEndLayerUseCase.js +195 -104
- package/src/Context/usecase/ContextDrawArraysInstancedUseCase.d.ts +13 -0
- package/src/Context/usecase/ContextDrawArraysInstancedUseCase.js +41 -20
- package/src/Context/usecase/ContextDrawIndirectUseCase.d.ts +16 -1
- package/src/Context/usecase/ContextDrawIndirectUseCase.js +53 -30
- package/src/Context/usecase/ContextGradientFillUseCase.d.ts +23 -0
- package/src/Context/usecase/ContextGradientFillUseCase.js +47 -0
- package/src/Context/usecase/ContextGradientStrokeUseCase.d.ts +23 -0
- package/src/Context/usecase/ContextGradientStrokeUseCase.js +35 -0
- package/src/Context/usecase/ContextProcessComplexBlendQueueUseCase.d.ts +13 -1
- package/src/Context/usecase/ContextProcessComplexBlendQueueUseCase.js +126 -60
- package/src/Context.d.ts +445 -63
- package/src/Context.js +566 -144
- package/src/FillTexturePool.d.ts +39 -0
- package/src/FillTexturePool.js +70 -7
- package/src/Filter/BevelFilter/FilterApplyBevelFilterUseCase.d.ts +21 -2
- package/src/Filter/BevelFilter/FilterApplyBevelFilterUseCase.js +33 -26
- package/src/Filter/BlurFilter/FilterApplyBlurFilterUseCase.d.ts +5 -5
- package/src/Filter/BlurFilter/FilterApplyBlurFilterUseCase.js +81 -64
- package/src/Filter/BlurFilterUseCase.d.ts +15 -11
- package/src/Filter/BlurFilterUseCase.js +22 -17
- package/src/Filter/ColorMatrixFilter/FilterApplyColorMatrixFilterUseCase.d.ts +2 -2
- package/src/Filter/ColorMatrixFilter/FilterApplyColorMatrixFilterUseCase.js +5 -5
- package/src/Filter/ConvolutionFilter/FilterApplyConvolutionFilterUseCase.d.ts +15 -1
- package/src/Filter/ConvolutionFilter/FilterApplyConvolutionFilterUseCase.js +23 -17
- package/src/Filter/DisplacementMapFilter/FilterApplyDisplacementMapFilterUseCase.d.ts +20 -1
- package/src/Filter/DisplacementMapFilter/FilterApplyDisplacementMapFilterUseCase.js +37 -26
- package/src/Filter/DropShadowFilter/FilterApplyDropShadowFilterUseCase.d.ts +7 -7
- package/src/Filter/DropShadowFilter/FilterApplyDropShadowFilterUseCase.js +19 -31
- package/src/Filter/FilterGradientLUTCache.js +2 -0
- package/src/Filter/FilterUtil.d.ts +23 -0
- package/src/Filter/FilterUtil.js +33 -0
- package/src/Filter/GlowFilter/FilterApplyGlowFilterUseCase.d.ts +5 -5
- package/src/Filter/GlowFilter/FilterApplyGlowFilterUseCase.js +12 -21
- package/src/Filter/GradientBevelFilter/FilterApplyGradientBevelFilterUseCase.d.ts +6 -6
- package/src/Filter/GradientBevelFilter/FilterApplyGradientBevelFilterUseCase.js +16 -19
- package/src/Filter/GradientGlowFilter/FilterApplyGradientGlowFilterUseCase.d.ts +5 -5
- package/src/Filter/GradientGlowFilter/FilterApplyGradientGlowFilterUseCase.js +13 -16
- package/src/FrameBufferManager/service/FrameBufferManagerCreateRenderPassDescriptorService.d.ts +13 -1
- package/src/FrameBufferManager/service/FrameBufferManagerCreateRenderPassDescriptorService.js +30 -3
- package/src/FrameBufferManager/service/FrameBufferManagerCreateStencilRenderPassDescriptorService.d.ts +11 -1
- package/src/FrameBufferManager/service/FrameBufferManagerCreateStencilRenderPassDescriptorService.js +36 -6
- package/src/FrameBufferManager/usecase/FrameBufferManagerCreateAttachmentUseCase.d.ts +10 -10
- package/src/FrameBufferManager/usecase/FrameBufferManagerCreateAttachmentUseCase.js +15 -15
- package/src/FrameBufferManager/usecase/FrameBufferManagerReleaseTemporaryAttachmentUseCase.d.ts +4 -4
- package/src/FrameBufferManager/usecase/FrameBufferManagerReleaseTemporaryAttachmentUseCase.js +5 -5
- package/src/FrameBufferManager.d.ts +95 -3
- package/src/FrameBufferManager.js +97 -8
- package/src/Gradient/GradientLUTCache.d.ts +36 -4
- package/src/Gradient/GradientLUTCache.js +61 -5
- package/src/Gradient/GradientLUTGenerator.d.ts +26 -14
- package/src/Gradient/GradientLUTGenerator.js +74 -43
- package/src/Mask/service/MaskUnionMaskService.d.ts +16 -1
- package/src/Mask/service/MaskUnionMaskService.js +45 -31
- package/src/Mask.d.ts +57 -3
- package/src/Mask.js +75 -11
- package/src/Mesh/service/MeshFillGenerateService.d.ts +4 -4
- package/src/Mesh/service/MeshFillGenerateService.js +4 -4
- package/src/Mesh/service/MeshStrokeFillGenerateService.d.ts +4 -4
- package/src/Mesh/service/MeshStrokeFillGenerateService.js +4 -4
- package/src/Mesh/usecase/MeshBitmapStrokeGenerateUseCase.d.ts +3 -3
- package/src/Mesh/usecase/MeshBitmapStrokeGenerateUseCase.js +10 -3
- package/src/Mesh/usecase/MeshFillGenerateUseCase.d.ts +2 -2
- package/src/Mesh/usecase/MeshFillGenerateUseCase.js +9 -2
- package/src/Mesh/usecase/MeshGradientStrokeGenerateUseCase.d.ts +3 -3
- package/src/Mesh/usecase/MeshGradientStrokeGenerateUseCase.js +10 -3
- package/src/Mesh/usecase/MeshStrokeGenerateUseCase.d.ts +8 -14
- package/src/Mesh/usecase/MeshStrokeGenerateUseCase.js +214 -129
- package/src/PathCommand.d.ts +24 -23
- package/src/PathCommand.js +25 -79
- package/src/Shader/PipelineManager.d.ts +223 -6
- package/src/Shader/PipelineManager.js +308 -66
- package/src/Shader/ShaderInstancedManager.d.ts +17 -0
- package/src/Shader/ShaderInstancedManager.js +17 -0
- package/src/Shader/ShaderSource.d.ts +317 -12
- package/src/Shader/ShaderSource.js +328 -39
- package/src/Shader/wgsl/common/SharedWgsl.d.ts +28 -1
- package/src/Shader/wgsl/common/SharedWgsl.js +28 -9
- package/src/Shader/wgsl/fragment/BasicFragment.d.ts +14 -0
- package/src/Shader/wgsl/fragment/BasicFragment.js +14 -0
- package/src/Shader/wgsl/fragment/BitmapFragment.d.ts +7 -0
- package/src/Shader/wgsl/fragment/BitmapFragment.js +7 -0
- package/src/Shader/wgsl/fragment/EffectFragment.d.ts +42 -0
- package/src/Shader/wgsl/fragment/EffectFragment.js +42 -0
- package/src/Shader/wgsl/fragment/FillFragment.d.ts +7 -0
- package/src/Shader/wgsl/fragment/FillFragment.js +7 -0
- package/src/Shader/wgsl/fragment/FilterFragment.d.ts +70 -0
- package/src/Shader/wgsl/fragment/FilterFragment.js +70 -0
- package/src/Shader/wgsl/fragment/GradientFragment.d.ts +21 -0
- package/src/Shader/wgsl/fragment/GradientFragment.js +43 -8
- package/src/Shader/wgsl/fragment/InstancedFragment.d.ts +7 -0
- package/src/Shader/wgsl/fragment/InstancedFragment.js +7 -0
- package/src/Shader/wgsl/fragment/MaskFragment.d.ts +7 -0
- package/src/Shader/wgsl/fragment/MaskFragment.js +7 -0
- package/src/Shader/wgsl/fragment/StencilFragment.d.ts +14 -0
- package/src/Shader/wgsl/fragment/StencilFragment.js +14 -0
- package/src/Shader/wgsl/vertex/BasicVertex.d.ts +7 -0
- package/src/Shader/wgsl/vertex/BasicVertex.js +7 -0
- package/src/Shader/wgsl/vertex/BitmapVertex.d.ts +7 -0
- package/src/Shader/wgsl/vertex/BitmapVertex.js +7 -0
- package/src/Shader/wgsl/vertex/FillVertex.d.ts +7 -0
- package/src/Shader/wgsl/vertex/FillVertex.js +7 -0
- package/src/Shader/wgsl/vertex/FilterVertex.d.ts +77 -1
- package/src/Shader/wgsl/vertex/FilterVertex.js +135 -42
- package/src/Shader/wgsl/vertex/GradientVertex.d.ts +7 -0
- package/src/Shader/wgsl/vertex/GradientVertex.js +7 -0
- package/src/Shader/wgsl/vertex/InstancedVertex.d.ts +7 -0
- package/src/Shader/wgsl/vertex/InstancedVertex.js +7 -0
- package/src/Shader/wgsl/vertex/MaskVertex.d.ts +7 -0
- package/src/Shader/wgsl/vertex/MaskVertex.js +7 -0
- package/src/Shader/wgsl/vertex/StencilVertex.d.ts +14 -0
- package/src/Shader/wgsl/vertex/StencilVertex.js +14 -0
- package/src/TextureManager/service/TextureManagerInitializeSamplersService.d.ts +2 -2
- package/src/TextureManager/service/TextureManagerInitializeSamplersService.js +2 -2
- package/src/TextureManager.d.ts +36 -5
- package/src/TextureManager.js +36 -24
- package/src/TexturePool/service/TexturePoolCleanupService.d.ts +4 -4
- package/src/TexturePool/service/TexturePoolCleanupService.js +6 -6
- package/src/TexturePool/service/TexturePoolReleaseService.d.ts +4 -4
- package/src/TexturePool/service/TexturePoolReleaseService.js +5 -5
- package/src/TexturePool/usecase/TexturePoolAcquireUseCase.d.ts +10 -10
- package/src/TexturePool/usecase/TexturePoolAcquireUseCase.js +19 -18
- package/src/TexturePool.d.ts +36 -35
- package/src/TexturePool.js +44 -65
- package/src/WebGPUUtil.d.ts +79 -34
- package/src/WebGPUUtil.js +79 -36
- package/src/interface/IAttachmentObject.d.ts +36 -0
- package/src/interface/IBlendMode.d.ts +7 -0
- package/src/interface/IBlendState.d.ts +8 -0
- package/src/interface/IBounds.d.ts +23 -0
- package/src/interface/IColorBufferObject.d.ts +28 -0
- package/src/interface/IComplexBlendItem.d.ts +48 -0
- package/src/interface/IFilterConfig.d.ts +28 -2
- package/src/interface/IGradientStop.d.ts +20 -0
- package/src/interface/ILocalFilterConfig.d.ts +32 -2
- package/src/interface/IMeshResult.d.ts +8 -0
- package/src/interface/IPoint.d.ts +12 -0
- package/src/interface/IPooledTexture.d.ts +24 -0
- package/src/interface/IQuadraticSegment.d.ts +8 -0
- package/src/interface/IStencilBufferObject.d.ts +28 -0
- package/src/interface/IStorageBufferConfig.d.ts +8 -1
- package/src/interface/ITextureObject.d.ts +28 -0
- package/src/AttachmentManager/service/AttachmentManagerCreateRenderPassDescriptorService.d.ts +0 -5
- package/src/AttachmentManager/service/AttachmentManagerCreateRenderPassDescriptorService.js +0 -42
- package/src/Blend/service/BlendAddService.d.ts +0 -1
- package/src/Blend/service/BlendAddService.js +0 -8
- package/src/Blend/service/BlendAlphaService.d.ts +0 -1
- package/src/Blend/service/BlendAlphaService.js +0 -8
- package/src/Blend/service/BlendEraseService.d.ts +0 -1
- package/src/Blend/service/BlendEraseService.js +0 -8
- package/src/Blend/service/BlendGetStateService.d.ts +0 -12
- package/src/Blend/service/BlendGetStateService.js +0 -13
- package/src/Blend/service/BlendOneZeroService.d.ts +0 -1
- package/src/Blend/service/BlendOneZeroService.js +0 -8
- package/src/Blend/service/BlendResetService.d.ts +0 -1
- package/src/Blend/service/BlendResetService.js +0 -8
- package/src/Blend/service/BlendScreenService.d.ts +0 -1
- package/src/Blend/service/BlendScreenService.js +0 -8
- package/src/Blend/service/BlendSetModeService.d.ts +0 -2
- package/src/Blend/service/BlendSetModeService.js +0 -4
- package/src/Blend/usecase/BlendOperationUseCase.d.ts +0 -11
- package/src/Blend/usecase/BlendOperationUseCase.js +0 -31
- package/src/BufferManager/usecase/BufferManagerReleaseStorageBufferUseCase.d.ts +0 -9
- package/src/BufferManager/usecase/BufferManagerReleaseStorageBufferUseCase.js +0 -15
- package/src/Compute/ComputePipelineManager.d.ts +0 -61
- package/src/Compute/ComputePipelineManager.js +0 -313
- package/src/Compute/service/ComputeExecuteBlurService.d.ts +0 -21
- package/src/Compute/service/ComputeExecuteBlurService.js +0 -81
- package/src/Filter/BevelFilterShader.d.ts +0 -2
- package/src/Filter/BevelFilterShader.js +0 -107
- package/src/Filter/BitmapFilterShader.d.ts +0 -2
- package/src/Filter/BitmapFilterShader.js +0 -207
- package/src/Filter/BlurFilter/service/BlurFilterComputeShaderService.d.ts +0 -40
- package/src/Filter/BlurFilter/service/BlurFilterComputeShaderService.js +0 -51
- package/src/Filter/BlurFilter/usecase/FilterApplyBlurComputeUseCase.d.ts +0 -25
- package/src/Filter/BlurFilter/usecase/FilterApplyBlurComputeUseCase.js +0 -180
- package/src/Filter/BlurFilterShader.d.ts +0 -5
- package/src/Filter/BlurFilterShader.js +0 -109
- package/src/Filter/ColorMatrixFilterShader.d.ts +0 -4
- package/src/Filter/ColorMatrixFilterShader.js +0 -51
- package/src/Filter/ConvolutionFilterShader.d.ts +0 -2
- package/src/Filter/ConvolutionFilterShader.js +0 -115
- package/src/Filter/DisplacementMapFilterShader.d.ts +0 -2
- package/src/Filter/DisplacementMapFilterShader.js +0 -114
- package/src/Filter/DropShadowFilterShader.d.ts +0 -4
- package/src/Filter/DropShadowFilterShader.js +0 -93
- package/src/Filter/GlowFilterShader.d.ts +0 -4
- package/src/Filter/GlowFilterShader.js +0 -66
- package/src/FrameBufferManager/service/FrameBufferManagerFlushPendingReleasesService.d.ts +0 -11
- package/src/FrameBufferManager/service/FrameBufferManagerFlushPendingReleasesService.js +0 -19
- package/src/Mask/usecase/MaskBindUseCase.d.ts +0 -10
- package/src/Mask/usecase/MaskBindUseCase.js +0 -20
- package/src/Mesh/service/MeshLerpService.d.ts +0 -13
- package/src/Mesh/service/MeshLerpService.js +0 -17
- package/src/Mesh/usecase/MeshSplitQuadraticBezierUseCase.d.ts +0 -14
- package/src/Mesh/usecase/MeshSplitQuadraticBezierUseCase.js +0 -28
- package/src/Mesh/usecase/MeshStrokeFillGenerateUseCase.d.ts +0 -18
- package/src/Mesh/usecase/MeshStrokeFillGenerateUseCase.js +0 -54
- package/src/SamplerCache/service/SamplerCacheCreateCommonSamplersService.d.ts +0 -11
- package/src/SamplerCache/service/SamplerCacheCreateCommonSamplersService.js +0 -35
- package/src/SamplerCache/service/SamplerCacheGenerateKeyService.d.ts +0 -13
- package/src/SamplerCache/service/SamplerCacheGenerateKeyService.js +0 -15
- package/src/SamplerCache/service/SamplerCacheGetOrCreateService.d.ts +0 -15
- package/src/SamplerCache/service/SamplerCacheGetOrCreateService.js +0 -30
- package/src/SamplerCache.d.ts +0 -18
- package/src/SamplerCache.js +0 -61
- package/src/Shader/BlendModeShader.d.ts +0 -51
- package/src/Shader/BlendModeShader.js +0 -71
- package/src/Shader/GradientLUTGenerator/service/GradientLUTCalculateResolutionService.d.ts +0 -12
- package/src/Shader/GradientLUTGenerator/service/GradientLUTCalculateResolutionService.js +0 -28
- package/src/Shader/GradientLUTGenerator/service/GradientLUTGeneratePixelsService.d.ts +0 -13
- package/src/Shader/GradientLUTGenerator/service/GradientLUTGeneratePixelsService.js +0 -61
- package/src/Shader/GradientLUTGenerator/service/GradientLUTInterpolateColorService.d.ts +0 -19
- package/src/Shader/GradientLUTGenerator/service/GradientLUTInterpolateColorService.js +0 -37
- package/src/Shader/GradientLUTGenerator/service/GradientLUTParseStopsService.d.ts +0 -11
- package/src/Shader/GradientLUTGenerator/service/GradientLUTParseStopsService.js +0 -24
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateDataUseCase.d.ts +0 -14
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateDataUseCase.js +0 -24
- package/src/Shader/wgsl/fragment/BlendFragment.d.ts +0 -8
- package/src/Shader/wgsl/fragment/BlendFragment.js +0 -63
- package/src/TextureManager/usecase/TextureManagerCreateTextureFromImageBitmapUseCase.d.ts +0 -13
- package/src/TextureManager/usecase/TextureManagerCreateTextureFromImageBitmapUseCase.js +0 -30
- package/src/TextureManager/usecase/TextureManagerCreateTextureFromPixelsUseCase.d.ts +0 -15
- package/src/TextureManager/usecase/TextureManagerCreateTextureFromPixelsUseCase.js +0 -26
- package/src/TexturePool/service/TexturePoolEvictOldestService.d.ts +0 -11
- package/src/TexturePool/service/TexturePoolEvictOldestService.js +0 -24
- package/src/interface/ICachedBindGroup.d.ts +0 -8
- package/src/interface/ICachedBindGroup.js +0 -1
- package/src/interface/IGradientLUTData.d.ts +0 -8
- package/src/interface/IGradientLUTData.js +0 -1
- package/src/interface/IPooledBuffer.d.ts +0 -8
- package/src/interface/IPooledBuffer.js +0 -1
- package/src/interface/IRectangleInfo.d.ts +0 -13
- package/src/interface/IRectangleInfo.js +0 -1
package/src/Context.d.ts
CHANGED
|
@@ -9,423 +9,805 @@ import type { Node } from "@next2d/texture-packer";
|
|
|
9
9
|
* @class
|
|
10
10
|
*/
|
|
11
11
|
export declare class Context {
|
|
12
|
+
/** @description 変換行列スタック / Transform matrix stack */
|
|
12
13
|
readonly $stack: Float32Array[];
|
|
14
|
+
/** @description 現在の2D変換行列 / Current 2D transform matrix */
|
|
13
15
|
readonly $matrix: Float32Array;
|
|
16
|
+
/** @description 背景クリア色R / Background clear color R */
|
|
14
17
|
$clearColorR: number;
|
|
18
|
+
/** @description 背景クリア色G / Background clear color G */
|
|
15
19
|
$clearColorG: number;
|
|
20
|
+
/** @description 背景クリア色B / Background clear color B */
|
|
16
21
|
$clearColorB: number;
|
|
22
|
+
/** @description 背景クリア色A / Background clear color A */
|
|
17
23
|
$clearColorA: number;
|
|
24
|
+
/** @description メインアタッチメントオブジェクト / Main attachment object */
|
|
18
25
|
$mainAttachmentObject: IAttachmentObject | null;
|
|
26
|
+
/** @description アタッチメントオブジェクトのスタック / Attachment object stack */
|
|
19
27
|
readonly $stackAttachmentObject: IAttachmentObject[];
|
|
28
|
+
/** @description グローバルアルファ値 / Global alpha value */
|
|
20
29
|
globalAlpha: number;
|
|
30
|
+
/** @description グローバル合成操作 / Global composite operation */
|
|
21
31
|
globalCompositeOperation: IBlendMode;
|
|
32
|
+
/** @description 画像スムージングの有効/無効 / Whether image smoothing is enabled */
|
|
22
33
|
imageSmoothingEnabled: boolean;
|
|
34
|
+
/** @description 塗りつぶしスタイル / Fill style color */
|
|
23
35
|
$fillStyle: Float32Array;
|
|
36
|
+
/** @description 線スタイル / Stroke style color */
|
|
24
37
|
$strokeStyle: Float32Array;
|
|
38
|
+
/** @description マスク描画範囲 / Mask drawing bounds */
|
|
25
39
|
readonly maskBounds: IBounds;
|
|
40
|
+
/** @description 線の太さ / Line thickness */
|
|
26
41
|
thickness: number;
|
|
42
|
+
/** @description 線端の形状 / Line cap style */
|
|
27
43
|
caps: number;
|
|
44
|
+
/** @description 線の結合スタイル / Line joint style */
|
|
28
45
|
joints: number;
|
|
46
|
+
/** @description マイターリミット / Miter limit */
|
|
29
47
|
miterLimit: number;
|
|
48
|
+
/** @description GPUデバイス / GPU device instance */
|
|
30
49
|
private device;
|
|
50
|
+
/** @description GPUキャンバスコンテキスト / GPU canvas context */
|
|
31
51
|
private canvasContext;
|
|
52
|
+
/** @description 優先テクスチャフォーマット / Preferred texture format */
|
|
32
53
|
private preferredFormat;
|
|
54
|
+
/** @description コマンドエンコーダー / Command encoder */
|
|
33
55
|
private commandEncoder;
|
|
56
|
+
/** @description レンダーパスエンコーダー / Render pass encoder */
|
|
34
57
|
private renderPassEncoder;
|
|
58
|
+
/** @description メインキャンバステクスチャ(最終表示用、フレームごとに1回取得) / Main canvas texture (for final display, acquired once per frame) */
|
|
35
59
|
private mainTexture;
|
|
60
|
+
/** @description メインキャンバステクスチャビュー / Main canvas texture view */
|
|
36
61
|
private mainTextureView;
|
|
62
|
+
/** @description フレーム開始済みフラグ / Whether the frame has been started */
|
|
37
63
|
private frameStarted;
|
|
64
|
+
/** @description フレームごとの一時テクスチャ(endFrame()でdestroy) / Per-frame temporary textures (destroyed in endFrame()) */
|
|
38
65
|
private frameTextures;
|
|
66
|
+
/** @description フレームごとのプール管理テクスチャ(endFrame()でプールに返却) / Per-frame pooled textures (returned to pool in endFrame()) */
|
|
39
67
|
private pooledTextures;
|
|
68
|
+
/** @description フレームごとのレンダーテクスチャプール管理(endFrame()でプールに返却) / Per-frame render texture pool (returned to pool in endFrame()) */
|
|
40
69
|
private pooledRenderTextures;
|
|
70
|
+
/** @description 現在のレンダーターゲット(メインまたはアトラス) / Current render target (could be main or atlas) */
|
|
41
71
|
private currentRenderTarget;
|
|
72
|
+
/** @description 現在のビューポート幅(アトラス描画時はアトラスサイズ) / Current viewport width (atlas size during atlas rendering) */
|
|
42
73
|
private viewportWidth;
|
|
74
|
+
/** @description 現在のビューポート高さ(アトラス描画時はアトラスサイズ) / Current viewport height (atlas size during atlas rendering) */
|
|
43
75
|
private viewportHeight;
|
|
76
|
+
/** @description パスコマンド / Path command handler */
|
|
44
77
|
private pathCommand;
|
|
78
|
+
/** @description バッファマネージャー / Buffer manager */
|
|
45
79
|
private bufferManager;
|
|
80
|
+
/** @description テクスチャマネージャー / Texture manager */
|
|
46
81
|
private textureManager;
|
|
82
|
+
/** @description フレームバッファマネージャー / Frame buffer manager */
|
|
47
83
|
private frameBufferManager;
|
|
84
|
+
/** @description パイプラインマネージャー / Pipeline manager */
|
|
48
85
|
private pipelineManager;
|
|
49
|
-
|
|
50
|
-
private attachmentManager;
|
|
86
|
+
/** @description 新しい描画状態フラグ / New draw state flag */
|
|
51
87
|
newDrawState: boolean;
|
|
88
|
+
/** @description cacheAsBitmap用の保留中アトラスノードスタック / Pending atlas nodes stack for cacheAsBitmap */
|
|
89
|
+
private readonly _pendingAtlasNodes;
|
|
90
|
+
/** @description コンテナレイヤースタック(フィルター/ブレンド用) / Container layer stack (for filter/blend) */
|
|
52
91
|
private readonly $containerLayerStack;
|
|
92
|
+
/** @description コンテナレイヤーのコンテンツサイズ / Container layer content sizes */
|
|
53
93
|
private containerLayerContentSizes;
|
|
94
|
+
/** @description マスク描画モードフラグ(beginMask〜endMask間でtrue) / Mask drawing mode flag (true between beginMask and endMask) */
|
|
54
95
|
private inMaskMode;
|
|
96
|
+
/** @description ノード領域クリア済みフラグ(beginNodeRendering〜endNodeRendering間で使用) / Node area cleared flag (used between beginNodeRendering and endNodeRendering) */
|
|
55
97
|
private nodeAreaCleared;
|
|
98
|
+
/** @description 現在のノードのシザー範囲(クリア後に戻すため) / Current node scissor rect (to restore after clearing) */
|
|
56
99
|
private currentNodeScissor;
|
|
100
|
+
/** @description アトラスレンダーパス統合: 同一アトラスへの連続描画でパスを再利用 / Atlas render pass integration: reuse pass for consecutive draws to the same atlas */
|
|
57
101
|
private nodeRenderPassAtlasIndex;
|
|
102
|
+
/** @description Dynamic Uniform BindGroup(fill/stencilパイプライン共有、フレームごとに1回作成) / Dynamic Uniform BindGroup (shared by fill/stencil pipelines, created once per frame) */
|
|
58
103
|
private fillDynamicBindGroup;
|
|
104
|
+
/** @description Dynamic Uniform BindGroupのバッファ / Dynamic Uniform BindGroup buffer */
|
|
59
105
|
private fillDynamicBindGroupBuffer;
|
|
106
|
+
/** @description clearNodeArea() 用頂点バッファキャッシュ / Vertex buffer cache for clearNodeArea() */
|
|
60
107
|
private nodeClearQuadBuffer;
|
|
108
|
+
/** @description Storage Buffer + Indirect Drawing を使用するかどうか / Whether to use Storage Buffer + Indirect Drawing */
|
|
61
109
|
private useOptimizedInstancing;
|
|
110
|
+
/** @description リサイズ後にcanvasContextの再設定が必要かどうか / Whether canvasContext reconfiguration is needed after resize */
|
|
62
111
|
private $needsReconfigure;
|
|
112
|
+
/** @description Hot Path 用の事前割り当てバッファ / Pre-allocated buffer for hot path */
|
|
63
113
|
private readonly $uniformData8;
|
|
114
|
+
/** @description Hot Path 用の事前割り当てシザーレクト / Pre-allocated scissor rect for hot path */
|
|
64
115
|
private readonly $scissorRect;
|
|
116
|
+
/** @description フィルター/コンテナレイヤー用のプリアロケートされた設定オブジェクト / Pre-allocated config object for filter/container layers */
|
|
65
117
|
private readonly $filterConfig;
|
|
118
|
+
/**
|
|
119
|
+
* @description WebGPUコンテキストを初期化する
|
|
120
|
+
* Initialize the WebGPU context
|
|
121
|
+
*
|
|
122
|
+
* @param {GPUDevice} device - GPUデバイス / GPU device instance
|
|
123
|
+
* @param {GPUCanvasContext} canvas_context - GPUキャンバスコンテキスト / GPU canvas context
|
|
124
|
+
* @param {GPUTextureFormat} preferred_format - 優先テクスチャフォーマット / Preferred texture format
|
|
125
|
+
* @param {number} device_pixel_ratio - デバイスピクセル比 / Device pixel ratio
|
|
126
|
+
*/
|
|
66
127
|
constructor(device: GPUDevice, canvas_context: GPUCanvasContext, preferred_format: GPUTextureFormat, device_pixel_ratio?: number);
|
|
67
128
|
/**
|
|
68
129
|
* @description 転送範囲をリセット(フレーム開始)
|
|
130
|
+
* Reset transfer bounds (frame start)
|
|
131
|
+
*
|
|
132
|
+
* @return {void}
|
|
69
133
|
*/
|
|
70
134
|
clearTransferBounds(): void;
|
|
71
135
|
/**
|
|
72
136
|
* @description 背景色を更新
|
|
137
|
+
* Update the background color
|
|
138
|
+
*
|
|
139
|
+
* @param {number} red - 赤色成分 / Red component
|
|
140
|
+
* @param {number} green - 緑色成分 / Green component
|
|
141
|
+
* @param {number} blue - 青色成分 / Blue component
|
|
142
|
+
* @param {number} alpha - アルファ成分 / Alpha component
|
|
143
|
+
* @return {void}
|
|
73
144
|
*/
|
|
74
145
|
updateBackgroundColor(red: number, green: number, blue: number, alpha: number): void;
|
|
75
146
|
/**
|
|
76
147
|
* @description 背景色で塗りつぶす(メインアタッチメント)
|
|
148
|
+
* Fill with background color (main attachment)
|
|
149
|
+
*
|
|
150
|
+
* @return {void}
|
|
77
151
|
*/
|
|
78
152
|
fillBackgroundColor(): void;
|
|
79
153
|
/**
|
|
80
154
|
* @description メインcanvasのサイズを変更
|
|
155
|
+
* Resize the main canvas
|
|
156
|
+
*
|
|
157
|
+
* @param {number} width - 新しい幅 / New width
|
|
158
|
+
* @param {number} height - 新しい高さ / New height
|
|
159
|
+
* @param {boolean} cache_clear - キャッシュをクリアするか / Whether to clear cache
|
|
160
|
+
* @return {void}
|
|
81
161
|
*/
|
|
82
162
|
resize(width: number, height: number, cache_clear?: boolean): void;
|
|
83
|
-
/**
|
|
84
|
-
* @description 指定範囲をクリアする
|
|
85
|
-
*/
|
|
86
|
-
clearRect(_x: number, _y: number, _w: number, _h: number): void;
|
|
87
163
|
/**
|
|
88
164
|
* @description 現在の2D変換行列を保存
|
|
165
|
+
* Save the current 2D transform matrix
|
|
166
|
+
*
|
|
167
|
+
* @return {void}
|
|
89
168
|
*/
|
|
90
169
|
save(): void;
|
|
91
170
|
/**
|
|
92
171
|
* @description 2D変換行列を復元
|
|
172
|
+
* Restore the 2D transform matrix
|
|
173
|
+
*
|
|
174
|
+
* @return {void}
|
|
93
175
|
*/
|
|
94
176
|
restore(): void;
|
|
95
177
|
/**
|
|
96
178
|
* @description 2D変換行列を設定
|
|
179
|
+
* Set the 2D transform matrix
|
|
180
|
+
*
|
|
181
|
+
* @param {number} a - 水平スケール / Horizontal scale
|
|
182
|
+
* @param {number} b - 垂直スキュー / Vertical skew
|
|
183
|
+
* @param {number} c - 水平スキュー / Horizontal skew
|
|
184
|
+
* @param {number} d - 垂直スケール / Vertical scale
|
|
185
|
+
* @param {number} e - 水平移動 / Horizontal translation
|
|
186
|
+
* @param {number} f - 垂直移動 / Vertical translation
|
|
187
|
+
* @return {void}
|
|
97
188
|
*/
|
|
98
189
|
setTransform(a: number, b: number, c: number, d: number, e: number, f: number): void;
|
|
99
190
|
/**
|
|
100
191
|
* @description 現在の2D変換行列に対して乗算を行います
|
|
192
|
+
* Multiply the current 2D transform matrix
|
|
193
|
+
*
|
|
194
|
+
* @param {number} a - 水平スケール / Horizontal scale
|
|
195
|
+
* @param {number} b - 垂直スキュー / Vertical skew
|
|
196
|
+
* @param {number} c - 水平スキュー / Horizontal skew
|
|
197
|
+
* @param {number} d - 垂直スケール / Vertical scale
|
|
198
|
+
* @param {number} e - 水平移動 / Horizontal translation
|
|
199
|
+
* @param {number} f - 垂直移動 / Vertical translation
|
|
200
|
+
* @return {void}
|
|
101
201
|
*/
|
|
102
202
|
transform(a: number, b: number, c: number, d: number, e: number, f: number): void;
|
|
103
203
|
/**
|
|
104
204
|
* @description コンテキストの値を初期化する
|
|
205
|
+
* Reset all context values to their initial state
|
|
206
|
+
*
|
|
207
|
+
* @return {void}
|
|
105
208
|
*/
|
|
106
209
|
reset(): void;
|
|
107
210
|
/**
|
|
108
211
|
* @description パスを開始
|
|
212
|
+
* Begin a new path
|
|
213
|
+
*
|
|
214
|
+
* @return {void}
|
|
109
215
|
*/
|
|
110
216
|
beginPath(): void;
|
|
111
217
|
/**
|
|
112
218
|
* @description パスを移動
|
|
219
|
+
* Move the path to the specified point
|
|
220
|
+
*
|
|
221
|
+
* @param {number} x - X座標 / X coordinate
|
|
222
|
+
* @param {number} y - Y座標 / Y coordinate
|
|
223
|
+
* @return {void}
|
|
113
224
|
*/
|
|
114
225
|
moveTo(x: number, y: number): void;
|
|
115
226
|
/**
|
|
116
227
|
* @description パスを線で結ぶ
|
|
228
|
+
* Draw a line to the specified point
|
|
229
|
+
*
|
|
230
|
+
* @param {number} x - X座標 / X coordinate
|
|
231
|
+
* @param {number} y - Y座標 / Y coordinate
|
|
232
|
+
* @return {void}
|
|
117
233
|
*/
|
|
118
234
|
lineTo(x: number, y: number): void;
|
|
119
235
|
/**
|
|
120
236
|
* @description 二次ベジェ曲線を描画
|
|
237
|
+
* Draw a quadratic Bézier curve
|
|
238
|
+
*
|
|
239
|
+
* @param {number} cx - 制御点X / Control point X
|
|
240
|
+
* @param {number} cy - 制御点Y / Control point Y
|
|
241
|
+
* @param {number} x - 終点X / End point X
|
|
242
|
+
* @param {number} y - 終点Y / End point Y
|
|
243
|
+
* @return {void}
|
|
121
244
|
*/
|
|
122
245
|
quadraticCurveTo(cx: number, cy: number, x: number, y: number): void;
|
|
123
246
|
/**
|
|
124
247
|
* @description 塗りつぶしスタイルを設定
|
|
248
|
+
* Set the fill style color
|
|
249
|
+
*
|
|
250
|
+
* @param {number} red - 赤色成分 / Red component
|
|
251
|
+
* @param {number} green - 緑色成分 / Green component
|
|
252
|
+
* @param {number} blue - 青色成分 / Blue component
|
|
253
|
+
* @param {number} alpha - アルファ成分 / Alpha component
|
|
254
|
+
* @return {void}
|
|
125
255
|
*/
|
|
126
256
|
fillStyle(red: number, green: number, blue: number, alpha: number): void;
|
|
127
257
|
/**
|
|
128
258
|
* @description 線のスタイルを設定
|
|
259
|
+
* Set the stroke style color
|
|
260
|
+
*
|
|
261
|
+
* @param {number} red - 赤色成分 / Red component
|
|
262
|
+
* @param {number} green - 緑色成分 / Green component
|
|
263
|
+
* @param {number} blue - 青色成分 / Blue component
|
|
264
|
+
* @param {number} alpha - アルファ成分 / Alpha component
|
|
265
|
+
* @return {void}
|
|
129
266
|
*/
|
|
130
267
|
strokeStyle(red: number, green: number, blue: number, alpha: number): void;
|
|
131
268
|
/**
|
|
132
269
|
* @description パスを閉じる
|
|
270
|
+
* Close the current path
|
|
271
|
+
*
|
|
272
|
+
* @return {void}
|
|
133
273
|
*/
|
|
134
274
|
closePath(): void;
|
|
135
275
|
/**
|
|
136
276
|
* @description 円弧を描画
|
|
277
|
+
* Draw an arc
|
|
278
|
+
*
|
|
279
|
+
* @param {number} x - 中心X / Center X
|
|
280
|
+
* @param {number} y - 中心Y / Center Y
|
|
281
|
+
* @param {number} radius - 半径 / Radius
|
|
282
|
+
* @return {void}
|
|
137
283
|
*/
|
|
138
284
|
arc(x: number, y: number, radius: number): void;
|
|
139
285
|
/**
|
|
140
286
|
* @description 3次ベジェ曲線を描画
|
|
287
|
+
* Draw a cubic Bézier curve
|
|
288
|
+
*
|
|
289
|
+
* @param {number} cx1 - 第1制御点X / First control point X
|
|
290
|
+
* @param {number} cy1 - 第1制御点Y / First control point Y
|
|
291
|
+
* @param {number} cx2 - 第2制御点X / Second control point X
|
|
292
|
+
* @param {number} cy2 - 第2制御点Y / Second control point Y
|
|
293
|
+
* @param {number} x - 終点X / End point X
|
|
294
|
+
* @param {number} y - 終点Y / End point Y
|
|
295
|
+
* @return {void}
|
|
141
296
|
*/
|
|
142
297
|
bezierCurveTo(cx1: number, cy1: number, cx2: number, cy2: number, x: number, y: number): void;
|
|
143
298
|
/**
|
|
144
299
|
* @description 描画メソッド共通: レンダーパスの確保とノード領域クリア
|
|
300
|
+
* Common drawing method: ensure render pass and clear node area
|
|
145
301
|
* fill(), stroke(), gradientFill(), bitmapFill(), gradientStroke(), bitmapStroke() で使用
|
|
302
|
+
*
|
|
303
|
+
* @return {void}
|
|
146
304
|
*/
|
|
147
305
|
private ensureFillRenderPass;
|
|
148
306
|
/**
|
|
149
307
|
* @description 塗りつぶしを実行(Loop-Blinn方式対応)
|
|
308
|
+
* Execute fill operation (with Loop-Blinn support)
|
|
309
|
+
*
|
|
310
|
+
* @return {void}
|
|
150
311
|
*/
|
|
151
312
|
fill(): void;
|
|
152
313
|
/**
|
|
153
314
|
* @description Dynamic Uniform BindGroupを取得(フレーム内で初回呼び出し時に作成)
|
|
315
|
+
* Get or create the Dynamic Uniform BindGroup (created on first call within a frame)
|
|
316
|
+
*
|
|
317
|
+
* @return {GPUBindGroup} Dynamic Uniform BindGroup
|
|
154
318
|
*/
|
|
155
319
|
private getOrCreateFillDynamicBindGroup;
|
|
156
320
|
/**
|
|
157
321
|
* @description fill/stroke用のcolor/matrix uniformを書き込む
|
|
158
|
-
*
|
|
159
|
-
*
|
|
322
|
+
* Write color/matrix uniform for fill/stroke operations
|
|
323
|
+
* FillUniforms構造体: color(vec4) + matrix0(vec4) + matrix1(vec4) + matrix2(vec4) = 64 bytes
|
|
324
|
+
*
|
|
325
|
+
* @param {number} red - 赤色成分 / Red component
|
|
326
|
+
* @param {number} green - 緑色成分 / Green component
|
|
327
|
+
* @param {number} blue - 青色成分 / Blue component
|
|
328
|
+
* @param {number} alpha - アルファ成分 / Alpha component
|
|
329
|
+
* @param {number} a - 変換行列a / Transform matrix a
|
|
330
|
+
* @param {number} b - 変換行列b / Transform matrix b
|
|
331
|
+
* @param {number} c - 変換行列c / Transform matrix c
|
|
332
|
+
* @param {number} d - 変換行列d / Transform matrix d
|
|
333
|
+
* @param {number} tx - 変換行列tx / Transform matrix tx
|
|
334
|
+
* @param {number} ty - 変換行列ty / Transform matrix ty
|
|
335
|
+
* @param {number} viewport_width - ビューポート幅 / Viewport width
|
|
336
|
+
* @param {number} viewport_height - ビューポート高さ / Viewport height
|
|
337
|
+
* @return {number} Dynamic Uniform Buffer内のアライメント済みオフセット / Aligned offset in the Dynamic Uniform Buffer
|
|
160
338
|
*/
|
|
161
339
|
private writeFillUniform;
|
|
162
340
|
/**
|
|
163
341
|
* @description 2パスステンシルフィル(アトラス用)
|
|
342
|
+
* Two-pass stencil fill (for atlas)
|
|
343
|
+
*
|
|
344
|
+
* @param {GPUBuffer} vertex_buffer - 頂点バッファ / Vertex buffer
|
|
345
|
+
* @param {number} vertex_count - 頂点数 / Vertex count
|
|
346
|
+
* @param {GPUBindGroup} bind_group - バインドグループ / Bind group
|
|
347
|
+
* @param {number} uniform_offset - ユニフォームオフセット / Uniform offset
|
|
348
|
+
* @return {void}
|
|
164
349
|
*/
|
|
165
350
|
private fillWithStencil;
|
|
166
351
|
/**
|
|
167
352
|
* @description 2パスステンシルフィル(メインキャンバス用)
|
|
353
|
+
* Two-pass stencil fill (for main canvas)
|
|
354
|
+
*
|
|
355
|
+
* @param {GPUBuffer} vertex_buffer - 頂点バッファ / Vertex buffer
|
|
356
|
+
* @param {number} vertex_count - 頂点数 / Vertex count
|
|
357
|
+
* @param {GPUBindGroup} bind_group - バインドグループ / Bind group
|
|
358
|
+
* @param {number} uniform_offset - ユニフォームオフセット / Uniform offset
|
|
359
|
+
* @return {void}
|
|
168
360
|
*/
|
|
169
361
|
private fillWithStencilMain;
|
|
170
362
|
/**
|
|
171
363
|
* @description 単純なフィル(ステンシルなし、キャンバス描画用)
|
|
364
|
+
* Simple fill (no stencil, for canvas rendering)
|
|
365
|
+
*
|
|
366
|
+
* @param {GPUBuffer} vertex_buffer - 頂点バッファ / Vertex buffer
|
|
367
|
+
* @param {number} vertex_count - 頂点数 / Vertex count
|
|
368
|
+
* @param {boolean} use_stencil_pipeline - ステンシルパイプラインを使用するか / Whether to use stencil pipeline
|
|
369
|
+
* @param {GPUBindGroup} bind_group - バインドグループ / Bind group
|
|
370
|
+
* @param {number} uniform_offset - ユニフォームオフセット / Uniform offset
|
|
371
|
+
* @return {void}
|
|
172
372
|
*/
|
|
173
373
|
private fillSimple;
|
|
174
|
-
/**
|
|
175
|
-
* @description オフスクリーンアタッチメントにバインド
|
|
176
|
-
* WebGL: FrameBufferManagerBindAttachmentObjectService
|
|
177
|
-
*/
|
|
178
|
-
bindAttachment(attachment: IAttachmentObject): void;
|
|
179
|
-
/**
|
|
180
|
-
* @description メインキャンバスにバインド
|
|
181
|
-
* WebGL: FrameBufferManagerUnBindAttachmentObjectService
|
|
182
|
-
*/
|
|
183
|
-
unbindAttachment(): void;
|
|
184
|
-
/**
|
|
185
|
-
* @description アタッチメントオブジェクトを取得
|
|
186
|
-
* WebGL: FrameBufferManagerGetAttachmentObjectUseCase
|
|
187
|
-
*/
|
|
188
|
-
getAttachmentObject(width: number, height: number, msaa?: boolean): IAttachmentObject;
|
|
189
|
-
/**
|
|
190
|
-
* @description アタッチメントオブジェクトを解放
|
|
191
|
-
* WebGL: FrameBufferManagerReleaseAttachmentObjectUseCase
|
|
192
|
-
*/
|
|
193
|
-
releaseAttachment(attachment: IAttachmentObject): void;
|
|
194
374
|
/**
|
|
195
375
|
* @description 線の描画を実行(WebGL版と同じ仕様)
|
|
376
|
+
* Execute stroke drawing (same specification as WebGL version)
|
|
196
377
|
* WebGL版と同様に、ストロークを塗りとして描画する
|
|
378
|
+
*
|
|
379
|
+
* @return {void}
|
|
197
380
|
*/
|
|
198
381
|
stroke(): void;
|
|
199
382
|
/**
|
|
200
383
|
* @description グラデーションの塗りつぶしを実行
|
|
384
|
+
* Execute gradient fill
|
|
385
|
+
*
|
|
386
|
+
* @param {number} type - グラデーションタイプ / Gradient type
|
|
387
|
+
* @param {number[]} stops - カラーストップ配列 / Color stop array
|
|
388
|
+
* @param {Float32Array} matrix - グラデーション変換行列 / Gradient transform matrix
|
|
389
|
+
* @param {number} spread - スプレッドメソッド / Spread method
|
|
390
|
+
* @param {number} interpolation - 補間方法 / Interpolation method
|
|
391
|
+
* @param {number} focal - 焦点距離 / Focal point ratio
|
|
392
|
+
* @return {void}
|
|
201
393
|
*/
|
|
202
394
|
gradientFill(type: number, stops: number[], matrix: Float32Array, spread: number, interpolation: number, focal: number): void;
|
|
203
395
|
/**
|
|
204
396
|
* @description ビットマップの塗りつぶしを実行
|
|
397
|
+
* Execute bitmap fill
|
|
398
|
+
*
|
|
399
|
+
* @param {Uint8Array} pixels - ピクセルデータ / Pixel data
|
|
400
|
+
* @param {Float32Array} matrix - ビットマップ変換行列 / Bitmap transform matrix
|
|
401
|
+
* @param {number} width - ビットマップ幅 / Bitmap width
|
|
402
|
+
* @param {number} height - ビットマップ高さ / Bitmap height
|
|
403
|
+
* @param {boolean} repeat - 繰り返しフラグ / Repeat flag
|
|
404
|
+
* @param {boolean} smooth - スムージングフラグ / Smoothing flag
|
|
405
|
+
* @return {void}
|
|
205
406
|
*/
|
|
206
407
|
bitmapFill(pixels: Uint8Array, matrix: Float32Array, width: number, height: number, repeat: boolean, smooth: boolean): void;
|
|
207
408
|
/**
|
|
208
409
|
* @description グラデーション線の描画を実行
|
|
410
|
+
* Execute gradient stroke drawing
|
|
411
|
+
*
|
|
412
|
+
* @param {number} type - グラデーションタイプ / Gradient type
|
|
413
|
+
* @param {number[]} stops - カラーストップ配列 / Color stop array
|
|
414
|
+
* @param {Float32Array} matrix - グラデーション変換行列 / Gradient transform matrix
|
|
415
|
+
* @param {number} spread - スプレッドメソッド / Spread method
|
|
416
|
+
* @param {number} interpolation - 補間方法 / Interpolation method
|
|
417
|
+
* @param {number} focal - 焦点距離 / Focal point ratio
|
|
418
|
+
* @return {void}
|
|
209
419
|
*/
|
|
210
420
|
gradientStroke(type: number, stops: number[], matrix: Float32Array, spread: number, interpolation: number, focal: number): void;
|
|
211
421
|
/**
|
|
212
422
|
* @description ビットマップ線の描画を実行
|
|
423
|
+
* Execute bitmap stroke drawing
|
|
424
|
+
*
|
|
425
|
+
* @param {Uint8Array} pixels - ピクセルデータ / Pixel data
|
|
426
|
+
* @param {Float32Array} matrix - ビットマップ変換行列 / Bitmap transform matrix
|
|
427
|
+
* @param {number} width - ビットマップ幅 / Bitmap width
|
|
428
|
+
* @param {number} height - ビットマップ高さ / Bitmap height
|
|
429
|
+
* @param {boolean} repeat - 繰り返しフラグ / Repeat flag
|
|
430
|
+
* @param {boolean} smooth - スムージングフラグ / Smoothing flag
|
|
431
|
+
* @return {void}
|
|
213
432
|
*/
|
|
214
433
|
bitmapStroke(pixels: Uint8Array, matrix: Float32Array, width: number, height: number, repeat: boolean, smooth: boolean): void;
|
|
215
434
|
/**
|
|
216
435
|
* @description マスク処理を実行
|
|
436
|
+
* Execute mask clipping operation
|
|
217
437
|
* WebGL版と同様にステンシルバッファを使用したクリッピング
|
|
218
438
|
* メインアタッチメントとアトラス両方でマスク処理をサポート
|
|
439
|
+
*
|
|
440
|
+
* @return {void}
|
|
219
441
|
*/
|
|
220
442
|
clip(): void;
|
|
221
443
|
/**
|
|
222
444
|
* @description アタッチメントオブジェクトをバインド
|
|
445
|
+
* Bind an attachment object
|
|
446
|
+
*
|
|
447
|
+
* @param {IAttachmentObject} attachment_object - バインドするアタッチメント / Attachment to bind
|
|
448
|
+
* @return {void}
|
|
223
449
|
*/
|
|
224
450
|
bind(attachment_object: IAttachmentObject): void;
|
|
225
451
|
/**
|
|
226
452
|
* @description 現在のアタッチメントオブジェクトを取得
|
|
453
|
+
* Get the current attachment object
|
|
227
454
|
* アトラスがバインドされていない場合はメインアタッチメントを返す
|
|
228
455
|
* When no atlas is bound, returns the main attachment
|
|
456
|
+
*
|
|
457
|
+
* @return {IAttachmentObject | null} 現在のアタッチメント / Current attachment
|
|
229
458
|
*/
|
|
230
459
|
get currentAttachmentObject(): IAttachmentObject | null;
|
|
231
460
|
/**
|
|
232
461
|
* @description アトラス専用のアタッチメントオブジェクトを取得
|
|
462
|
+
* Get the atlas-specific attachment object
|
|
463
|
+
*
|
|
464
|
+
* @return {IAttachmentObject | null} アトラスアタッチメント / Atlas attachment
|
|
233
465
|
*/
|
|
234
466
|
get atlasAttachmentObject(): IAttachmentObject | null;
|
|
235
467
|
/**
|
|
236
468
|
* @description グリッドの描画データをセット
|
|
469
|
+
* Set grid drawing data
|
|
470
|
+
*
|
|
471
|
+
* @param {Float32Array | null} grid_data - グリッドデータ / Grid data
|
|
472
|
+
* @return {void}
|
|
237
473
|
*/
|
|
238
474
|
useGrid(grid_data: Float32Array | null): void;
|
|
239
475
|
/**
|
|
240
476
|
* @description 指定のノード範囲で描画を開始(アトラステクスチャへの描画)
|
|
477
|
+
* Begin rendering for the specified node region (drawing to atlas texture)
|
|
241
478
|
* 2パスステンシルフィル対応: ステンシルバッファ付きレンダーパスを使用
|
|
479
|
+
*
|
|
480
|
+
* @param {Node} node - 描画対象ノード / Target node for rendering
|
|
481
|
+
* @return {void}
|
|
242
482
|
*/
|
|
243
483
|
beginNodeRendering(node: Node): void;
|
|
244
484
|
/**
|
|
245
485
|
* @description ノード領域がまだクリアされていない場合にクリアを実行
|
|
486
|
+
* Clear the node area if it has not been cleared yet
|
|
246
487
|
* 最初の描画操作(fill, gradientFill, gradientStroke等)で呼び出される
|
|
488
|
+
*
|
|
489
|
+
* @return {void}
|
|
247
490
|
*/
|
|
248
491
|
private ensureNodeAreaCleared;
|
|
249
492
|
/**
|
|
250
493
|
* @description ノード領域をクリア(透明色 + ステンシル=0)
|
|
494
|
+
* Clear the node area (transparent color + stencil=0)
|
|
251
495
|
* WebGL版の gl.clear(COLOR_BUFFER_BIT | STENCIL_BUFFER_BIT) と同等
|
|
496
|
+
*
|
|
497
|
+
* @return {void}
|
|
252
498
|
*/
|
|
253
499
|
private clearNodeArea;
|
|
254
500
|
/**
|
|
255
501
|
* @description 指定のノード範囲で描画を終了
|
|
502
|
+
* End rendering for the current node region
|
|
256
503
|
* レンダーパスは終了しない(次のbeginNodeRenderingで再利用するため)
|
|
504
|
+
*
|
|
505
|
+
* @return {void}
|
|
257
506
|
*/
|
|
258
507
|
endNodeRendering(): void;
|
|
259
508
|
/**
|
|
260
509
|
* @description 塗りの描画を実行
|
|
510
|
+
* Execute fill drawing
|
|
511
|
+
*
|
|
512
|
+
* @return {void}
|
|
261
513
|
*/
|
|
262
514
|
drawFill(): void;
|
|
263
515
|
/**
|
|
264
516
|
* @description インスタンスを描画
|
|
517
|
+
* Draw a display object instance
|
|
518
|
+
*
|
|
519
|
+
* @param {Node} node - 描画対象ノード / Target node
|
|
520
|
+
* @param {number} x_min - バウンディングボックス左端 / Bounding box left
|
|
521
|
+
* @param {number} y_min - バウンディングボックス上端 / Bounding box top
|
|
522
|
+
* @param {number} x_max - バウンディングボックス右端 / Bounding box right
|
|
523
|
+
* @param {number} y_max - バウンディングボックス下端 / Bounding box bottom
|
|
524
|
+
* @param {Float32Array} color_transform - カラー変換パラメータ / Color transform parameters
|
|
525
|
+
* @return {void}
|
|
265
526
|
*/
|
|
266
527
|
drawDisplayObject(node: Node, x_min: number, y_min: number, x_max: number, y_max: number, color_transform: Float32Array): void;
|
|
267
528
|
/**
|
|
268
529
|
* @description インスタンス配列を描画
|
|
269
530
|
* Draw instanced arrays
|
|
270
531
|
*
|
|
271
|
-
*
|
|
272
|
-
*
|
|
273
|
-
*
|
|
532
|
+
* useOptimizedInstancingがtrueの場合、Storage BufferとIndirect Drawingを使用。
|
|
533
|
+
* - Storage Buffer: メモリアロケーション削減、CPU負荷15-25%軽減
|
|
534
|
+
* - Indirect Drawing: CPU-GPUオーバーヘッド5-15%削減
|
|
274
535
|
*
|
|
536
|
+
* @return {void}
|
|
275
537
|
*/
|
|
276
538
|
drawArraysInstanced(): void;
|
|
277
|
-
/**
|
|
278
|
-
* @description 最適化インスタンス描画の有効/無効を設定
|
|
279
|
-
* Enable or disable optimized instancing
|
|
280
|
-
*
|
|
281
|
-
*/
|
|
282
|
-
setOptimizedInstancing(enabled: boolean): void;
|
|
283
|
-
/**
|
|
284
|
-
* @description 最適化インスタンス描画が有効かどうか
|
|
285
|
-
* Whether optimized instancing is enabled
|
|
286
|
-
*
|
|
287
|
-
*/
|
|
288
|
-
isOptimizedInstancingEnabled(): boolean;
|
|
289
539
|
/**
|
|
290
540
|
* @description 複雑なブレンドモードのキューを処理
|
|
541
|
+
* Process the complex blend mode queue
|
|
542
|
+
*
|
|
543
|
+
* @return {void}
|
|
291
544
|
*/
|
|
292
545
|
private processComplexBlendQueue;
|
|
293
546
|
/**
|
|
294
547
|
* @description インスタンス配列をクリア
|
|
548
|
+
* Clear instanced arrays
|
|
549
|
+
*
|
|
550
|
+
* @return {void}
|
|
295
551
|
*/
|
|
296
552
|
clearArraysInstanced(): void;
|
|
297
553
|
/**
|
|
298
554
|
* @description ピクセルバッファをNodeの指定箇所に転送
|
|
555
|
+
* Transfer pixel buffer to the specified position of the Node
|
|
299
556
|
* WebGPUでは、Shapeのシェーダーが-ndc.yでY軸反転しているため、
|
|
300
557
|
* Bitmapも同じ方向になるよう画像を上下反転して書き込む
|
|
558
|
+
*
|
|
559
|
+
* @param {Node} node - 描画対象ノード / Target node
|
|
560
|
+
* @param {Uint8Array} pixels - ピクセルデータ / Pixel data
|
|
561
|
+
* @return {void}
|
|
301
562
|
*/
|
|
302
563
|
drawPixels(node: Node, pixels: Uint8Array): void;
|
|
303
564
|
/**
|
|
304
565
|
* @description 一時テクスチャ経由でピクセルデータをMSAAテクスチャに描画
|
|
566
|
+
* Draw pixel data to MSAA texture via a temporary texture
|
|
567
|
+
*
|
|
568
|
+
* @param {IAttachmentObject} attachment - アタッチメントオブジェクト / Attachment object
|
|
569
|
+
* @param {Node} node - 描画対象ノード / Target node
|
|
570
|
+
* @param {Uint8Array} pixels - ピクセルデータ / Pixel data
|
|
571
|
+
* @param {number} width - 幅 / Width
|
|
572
|
+
* @param {number} height - 高さ / Height
|
|
573
|
+
* @return {void}
|
|
305
574
|
*/
|
|
306
575
|
private drawPixelsToMsaa;
|
|
307
576
|
/**
|
|
308
577
|
* @description OffscreenCanvasをNodeの指定箇所に転送
|
|
578
|
+
* Transfer OffscreenCanvas to the specified position of the Node
|
|
309
579
|
* WebGPUでは、Shapeのシェーダーが-ndc.yでY軸反転しているため、
|
|
310
580
|
* Bitmapも同じ方向になるよう画像を上下反転して書き込む
|
|
581
|
+
*
|
|
582
|
+
* @param {Node} node - 描画対象ノード / Target node
|
|
583
|
+
* @param {OffscreenCanvas | ImageBitmap} element - 描画要素 / Element to draw
|
|
584
|
+
* @param {boolean} flip_y - Y軸反転フラグ / Y-axis flip flag
|
|
585
|
+
* @return {void}
|
|
311
586
|
*/
|
|
312
|
-
drawElement(node: Node, element: OffscreenCanvas | ImageBitmap,
|
|
587
|
+
drawElement(node: Node, element: OffscreenCanvas | ImageBitmap, flip_y?: boolean): void;
|
|
313
588
|
/**
|
|
314
589
|
* @description 一時テクスチャ経由でMSAAテクスチャに直接描画
|
|
590
|
+
* Draw to MSAA texture directly via a temporary texture
|
|
591
|
+
*
|
|
592
|
+
* @param {IAttachmentObject} attachment - アタッチメントオブジェクト / Attachment object
|
|
593
|
+
* @param {Node} node - 描画対象ノード / Target node
|
|
594
|
+
* @param {OffscreenCanvas | ImageBitmap} element - 描画要素 / Element to draw
|
|
595
|
+
* @param {number} width - 幅 / Width
|
|
596
|
+
* @param {number} height - 高さ / Height
|
|
597
|
+
* @param {boolean} flip_y - Y軸反転フラグ / Y-axis flip flag
|
|
598
|
+
* @return {void}
|
|
315
599
|
*/
|
|
316
600
|
private drawElementToMsaa;
|
|
317
601
|
/**
|
|
318
602
|
* @description 一時テクスチャ経由で通常テクスチャに描画(非MSAA版)
|
|
603
|
+
* Draw to a regular texture via a temporary texture (non-MSAA version)
|
|
604
|
+
*
|
|
605
|
+
* @param {IAttachmentObject} attachment - アタッチメントオブジェクト / Attachment object
|
|
606
|
+
* @param {Node} node - 描画対象ノード / Target node
|
|
607
|
+
* @param {OffscreenCanvas | ImageBitmap} element - 描画要素 / Element to draw
|
|
608
|
+
* @param {number} width - 幅 / Width
|
|
609
|
+
* @param {number} height - 高さ / Height
|
|
610
|
+
* @param {boolean} flip_y - Y軸反転フラグ / Y-axis flip flag
|
|
611
|
+
* @return {void}
|
|
319
612
|
*/
|
|
320
613
|
private drawElementToTexture;
|
|
321
614
|
/**
|
|
322
615
|
* @description フィルターを適用
|
|
616
|
+
* Apply filter effects
|
|
617
|
+
*
|
|
618
|
+
* @param {Node} node - 描画対象ノード / Target node
|
|
619
|
+
* @param {string} _unique_key - ユニークキー / Unique key
|
|
620
|
+
* @param {boolean} _updated - 更新フラグ / Updated flag
|
|
621
|
+
* @param {number} width - 幅 / Width
|
|
622
|
+
* @param {number} height - 高さ / Height
|
|
623
|
+
* @param {boolean} _is_bitmap - ビットマップかどうか / Whether it is a bitmap
|
|
624
|
+
* @param {Float32Array} matrix - 変換行列 / Transform matrix
|
|
625
|
+
* @param {Float32Array} color_transform - カラー変換パラメータ / Color transform parameters
|
|
626
|
+
* @param {IBlendMode} blend_mode - ブレンドモード / Blend mode
|
|
627
|
+
* @param {Float32Array} bounds - バウンディングボックス / Bounding box
|
|
628
|
+
* @param {Float32Array} params - フィルターパラメータ / Filter parameters
|
|
629
|
+
* @return {void}
|
|
323
630
|
*/
|
|
324
631
|
applyFilter(node: Node, _unique_key: string, _updated: boolean, width: number, height: number, _is_bitmap: boolean, matrix: Float32Array, color_transform: Float32Array, blend_mode: IBlendMode, bounds: Float32Array, params: Float32Array): void;
|
|
325
632
|
/**
|
|
326
633
|
* @description コンテナのフィルター/ブレンド用のレイヤーを開始
|
|
327
634
|
* Begin a container layer for filter/blend processing
|
|
328
635
|
*
|
|
636
|
+
* @param {number} width - レイヤー幅 / Layer width
|
|
637
|
+
* @param {number} height - レイヤー高さ / Layer height
|
|
638
|
+
* @return {void}
|
|
329
639
|
*/
|
|
330
640
|
containerBeginLayer(width: number, height: number): void;
|
|
331
641
|
/**
|
|
332
642
|
* @description コンテナのフィルター/ブレンド用レイヤーを終了し、結果を元のメインに合成
|
|
333
643
|
* End the container layer and composite the result back to the original main
|
|
334
644
|
*
|
|
335
|
-
* @param {IBlendMode}
|
|
336
|
-
* @param {Float32Array} matrix
|
|
337
|
-
* @param {Float32Array | null} color_transform
|
|
338
|
-
* @param {boolean}
|
|
339
|
-
* @param {Float32Array | null} filter_bounds
|
|
340
|
-
* @param {Float32Array | null} filter_params
|
|
341
|
-
* @param {string}
|
|
342
|
-
* @param {string}
|
|
645
|
+
* @param {IBlendMode} blend_mode - ブレンドモード / Blend mode
|
|
646
|
+
* @param {Float32Array} matrix - 変換行列 / Transform matrix
|
|
647
|
+
* @param {Float32Array | null} color_transform - カラー変換パラメータ / Color transform parameters
|
|
648
|
+
* @param {boolean} use_filter - フィルター使用フラグ / Whether to use filter
|
|
649
|
+
* @param {Float32Array | null} filter_bounds - フィルターバウンド / Filter bounds
|
|
650
|
+
* @param {Float32Array | null} filter_params - フィルターパラメータ / Filter parameters
|
|
651
|
+
* @param {string} unique_key - ユニークキー / Unique key
|
|
652
|
+
* @param {string} filter_key - フィルターキー / Filter key
|
|
653
|
+
* @return {void}
|
|
343
654
|
*/
|
|
344
655
|
containerEndLayer(blend_mode: IBlendMode, matrix: Float32Array, color_transform: Float32Array | null, use_filter: boolean, filter_bounds: Float32Array | null, filter_params: Float32Array | null, unique_key: string, filter_key: string): void;
|
|
656
|
+
/**
|
|
657
|
+
* @description cacheAsBitmap: temp FBO作成→子要素描画開始
|
|
658
|
+
* Begin container cacheAsBitmap: create temp bgra8unorm FBO for children,
|
|
659
|
+
* allocate atlas node for later copy
|
|
660
|
+
*
|
|
661
|
+
* @param {number} width - ノード幅 / Node width
|
|
662
|
+
* @param {number} height - ノード高さ / Node height
|
|
663
|
+
* @return {Node}
|
|
664
|
+
*/
|
|
665
|
+
containerBeginAtlasNode(width: number, height: number): Node;
|
|
666
|
+
/**
|
|
667
|
+
* @description cacheAsBitmap: temp FBO→アトラスノードへコピー
|
|
668
|
+
* End container cacheAsBitmap: copy temp FBO content to atlas node,
|
|
669
|
+
* release temp FBO
|
|
670
|
+
*
|
|
671
|
+
* @return {void}
|
|
672
|
+
*/
|
|
673
|
+
containerEndAtlasNode(): void;
|
|
674
|
+
/**
|
|
675
|
+
* @description temp FBOの内容をアトラスノード領域にコピー
|
|
676
|
+
* Copy temp FBO content to the atlas node region using texture_copy pipeline
|
|
677
|
+
*
|
|
678
|
+
* @param {IAttachmentObject} temp_attachment - コピー元のtemp FBO / Source temp FBO
|
|
679
|
+
* @param {Node} node - コピー先のアトラスノード / Destination atlas node
|
|
680
|
+
* @return {void}
|
|
681
|
+
*/
|
|
682
|
+
private copyTempToAtlasNode;
|
|
345
683
|
/**
|
|
346
684
|
* @description キャッシュされたコンテナフィルターテクスチャをメインに描画
|
|
347
685
|
* Draw a cached container filter texture to the main attachment
|
|
348
686
|
*
|
|
349
|
-
* @param {IBlendMode}
|
|
350
|
-
* @param {Float32Array} matrix
|
|
351
|
-
* @param {Float32Array} color_transform
|
|
352
|
-
* @param {Float32Array} filter_bounds
|
|
353
|
-
* @param {string}
|
|
354
|
-
* @param {string}
|
|
687
|
+
* @param {IBlendMode} blend_mode - ブレンドモード / Blend mode
|
|
688
|
+
* @param {Float32Array} matrix - 変換行列 / Transform matrix
|
|
689
|
+
* @param {Float32Array} color_transform - カラー変換パラメータ / Color transform parameters
|
|
690
|
+
* @param {Float32Array} filter_bounds - フィルターバウンド / Filter bounds
|
|
691
|
+
* @param {string} unique_key - ユニークキー / Unique key
|
|
692
|
+
* @param {string} filter_key - フィルターキー / Filter key
|
|
693
|
+
* @return {void}
|
|
355
694
|
*/
|
|
356
695
|
containerDrawCachedFilter(blend_mode: IBlendMode, matrix: Float32Array, color_transform: Float32Array, filter_bounds: Float32Array, unique_key: string, filter_key: string): void;
|
|
357
696
|
/**
|
|
358
697
|
* @description メインテクスチャを確保(フレーム開始時に一度だけgetCurrentTexture呼び出し)
|
|
698
|
+
* Ensure the main texture is acquired (calls getCurrentTexture once per frame)
|
|
699
|
+
*
|
|
700
|
+
* @return {void}
|
|
359
701
|
*/
|
|
360
702
|
private ensureMainTexture;
|
|
361
703
|
/**
|
|
362
704
|
* @description 現在の描画ターゲットのテクスチャビューを取得
|
|
705
|
+
* Get the texture view of the current render target
|
|
706
|
+
*
|
|
707
|
+
* @return {GPUTextureView} 現在のテクスチャビュー / Current texture view
|
|
363
708
|
*/
|
|
364
709
|
private getCurrentTextureView;
|
|
365
710
|
/**
|
|
366
711
|
* @description コマンドエンコーダーが存在することを保証
|
|
712
|
+
* Ensure the command encoder exists
|
|
713
|
+
*
|
|
714
|
+
* @return {void}
|
|
367
715
|
*/
|
|
368
716
|
private ensureCommandEncoder;
|
|
369
717
|
/**
|
|
370
718
|
* @description フレーム開始(レンダリング開始前に呼ぶ)
|
|
719
|
+
* Begin a new frame (call before rendering starts)
|
|
720
|
+
*
|
|
721
|
+
* @return {void}
|
|
371
722
|
*/
|
|
372
723
|
beginFrame(): void;
|
|
373
724
|
/**
|
|
374
725
|
* @description フレームごとのプール管理テクスチャを追加(endFrame()でプールに返却)
|
|
726
|
+
* Add a pooled texture for the current frame (returned to pool in endFrame())
|
|
727
|
+
*
|
|
728
|
+
* @param {GPUTexture} texture - プール管理テクスチャ / Pooled texture
|
|
729
|
+
* @return {void}
|
|
375
730
|
*/
|
|
376
731
|
addFrameTexture(texture: GPUTexture): void;
|
|
377
732
|
/**
|
|
378
733
|
* @description フレーム終了とコマンド送信(レンダリング完了後に呼ぶ)
|
|
734
|
+
* End the frame and submit commands (call after rendering is complete)
|
|
735
|
+
*
|
|
736
|
+
* @return {void}
|
|
379
737
|
*/
|
|
380
738
|
endFrame(): void;
|
|
381
739
|
/**
|
|
382
740
|
* @description コマンドを送信(後方互換性のため残す)
|
|
741
|
+
* Submit commands (kept for backward compatibility)
|
|
742
|
+
*
|
|
743
|
+
* @return {void}
|
|
383
744
|
*/
|
|
384
745
|
submit(): void;
|
|
385
746
|
/**
|
|
386
747
|
* @description ノードを作成
|
|
748
|
+
* Create a node in the texture atlas
|
|
387
749
|
* アトラスがいっぱいの場合は新しいアトラスを作成して再試行
|
|
750
|
+
*
|
|
751
|
+
* @param {number} width - ノード幅 / Node width
|
|
752
|
+
* @param {number} height - ノード高さ / Node height
|
|
753
|
+
* @return {Node} 作成されたノード / Created node
|
|
388
754
|
*/
|
|
389
755
|
createNode(width: number, height: number): Node;
|
|
390
756
|
/**
|
|
391
757
|
* @description ノードを削除
|
|
758
|
+
* Remove a node from the texture atlas
|
|
759
|
+
*
|
|
760
|
+
* @param {Node} node - 削除対象ノード / Node to remove
|
|
761
|
+
* @return {void}
|
|
392
762
|
*/
|
|
393
763
|
removeNode(node: Node): void;
|
|
394
764
|
/**
|
|
395
765
|
* @description フレームバッファの描画情報をキャンバスに転送
|
|
766
|
+
* Transfer frame buffer contents to the canvas
|
|
396
767
|
* スワップチェーンはCopyDstをサポートしないため、レンダーパスでブリット
|
|
768
|
+
*
|
|
769
|
+
* @return {void}
|
|
397
770
|
*/
|
|
398
771
|
transferMainCanvas(): void;
|
|
399
772
|
/**
|
|
400
773
|
* @description ImageBitmapを生成
|
|
774
|
+
* Create an ImageBitmap from the current rendering result
|
|
775
|
+
*
|
|
776
|
+
* @param {number} width - 画像幅 / Image width
|
|
777
|
+
* @param {number} height - 画像高さ / Image height
|
|
778
|
+
* @return {Promise<ImageBitmap>} 生成されたImageBitmap / Created ImageBitmap
|
|
401
779
|
*/
|
|
402
780
|
createImageBitmap(width: number, height: number): Promise<ImageBitmap>;
|
|
403
781
|
/**
|
|
404
782
|
* @description マスク描画の開始準備
|
|
405
783
|
* Prepare to start drawing the mask
|
|
406
784
|
*
|
|
785
|
+
* @return {void}
|
|
407
786
|
*/
|
|
408
787
|
beginMask(): void;
|
|
409
788
|
/**
|
|
410
789
|
* @description マスクの描画範囲を設定
|
|
411
790
|
* Set the mask drawing bounds
|
|
412
791
|
*
|
|
413
|
-
* @param {number} x_min
|
|
414
|
-
* @param {number} y_min
|
|
415
|
-
* @param {number} x_max
|
|
416
|
-
* @param {number} y_max
|
|
792
|
+
* @param {number} x_min - 最小X座標 / Minimum X coordinate
|
|
793
|
+
* @param {number} y_min - 最小Y座標 / Minimum Y coordinate
|
|
794
|
+
* @param {number} x_max - 最大X座標 / Maximum X coordinate
|
|
795
|
+
* @param {number} y_max - 最大Y座標 / Maximum Y coordinate
|
|
796
|
+
* @return {void}
|
|
417
797
|
*/
|
|
418
798
|
setMaskBounds(x_min: number, y_min: number, x_max: number, y_max: number): void;
|
|
419
799
|
/**
|
|
420
800
|
* @description マスクの描画を終了
|
|
421
801
|
* End mask drawing
|
|
422
802
|
*
|
|
803
|
+
* @return {void}
|
|
423
804
|
*/
|
|
424
805
|
endMask(): void;
|
|
425
806
|
/**
|
|
426
807
|
* @description マスクの終了処理
|
|
427
|
-
* Mask end processing
|
|
808
|
+
* Mask end processing (leave the mask)
|
|
428
809
|
*
|
|
810
|
+
* @return {void}
|
|
429
811
|
*/
|
|
430
812
|
leaveMask(): void;
|
|
431
813
|
}
|