@@ -60,8 +60,6 @@ public PictureFlusher(RenderTexture renderTexture, float devicePixelRatio, MeshP
60
60
this . ___drawTextDrawMeshCallback = this . _drawTextDrawMeshCallback ;
61
61
this . ___drawPathDrawMeshCallback2 = this . _drawPathDrawMeshCallback2 ;
62
62
this . ___drawPathDrawMeshCallback = this . _drawPathDrawMeshCallback ;
63
-
64
- this . setupComputeBuffer ( ) ;
65
63
}
66
64
67
65
readonly _drawPathDrawMeshCallbackDelegate ___drawTextDrawMeshCallback ;
@@ -157,12 +155,12 @@ void _saveLayer(uiRect bounds, uiPaint paint) {
157
155
this . _saveLayer_Points [ 2 ] ,
158
156
this . _saveLayer_Points [ 3 ] ,
159
157
bounds ) ;
160
- var renderDraw = CanvasShader . texRT ( layer , layer . layerPaint . Value , mesh , parentLayer , this . supportComputeBuffer ) ;
158
+ var renderDraw = CanvasShader . texRT ( layer , layer . layerPaint . Value , mesh , parentLayer , supportComputeBuffer ) ;
161
159
layer . draws . Add ( renderDraw ) ;
162
160
163
161
var blurLayer = this . _createBlurLayer ( layer , filter . sigmaX , filter . sigmaY , layer ) ;
164
162
var blurMesh = ImageMeshGenerator . imageMesh ( null , uiRectHelper . one , bounds ) ;
165
- layer . draws . Add ( CanvasShader . texRT ( layer , paint , blurMesh , blurLayer , this . supportComputeBuffer ) ) ;
163
+ layer . draws . Add ( CanvasShader . texRT ( layer , paint , blurMesh , blurLayer , supportComputeBuffer ) ) ;
166
164
}
167
165
}
168
166
else if ( paint . backdrop is _MatrixImageFilter ) {
@@ -195,7 +193,7 @@ void _saveLayer(uiRect bounds, uiPaint paint) {
195
193
this . _saveLayer_Points [ 2 ] ,
196
194
this . _saveLayer_Points [ 3 ] ,
197
195
bounds ) ;
198
- var renderDraw = CanvasShader . texRT ( layer , layer . layerPaint . Value , mesh , parentLayer , this . supportComputeBuffer ) ;
196
+ var renderDraw = CanvasShader . texRT ( layer , layer . layerPaint . Value , mesh , parentLayer , supportComputeBuffer ) ;
199
197
layer . draws . Add ( renderDraw ) ;
200
198
}
201
199
}
@@ -224,7 +222,7 @@ void _restore() {
224
222
return ;
225
223
}
226
224
227
- var renderDraw = CanvasShader . texRT ( currentLayer , layer . layerPaint . Value , mesh , layer , this . supportComputeBuffer ) ;
225
+ var renderDraw = CanvasShader . texRT ( currentLayer , layer . layerPaint . Value , mesh , layer , supportComputeBuffer ) ;
228
226
currentLayer . draws . Add ( renderDraw ) ;
229
227
}
230
228
@@ -366,11 +364,11 @@ bool _applyClip(uiRect? queryBounds) {
366
364
// need to inflate a bit to make sure all area is cleared.
367
365
var inflatedScissor = uiRectHelper . inflate ( reducedClip . scissor . Value , this . _fringeWidth ) ;
368
366
var boundsMesh = uiMeshMesh . create ( inflatedScissor ) ;
369
- layer . draws . Add ( CanvasShader . stencilClear ( layer , boundsMesh , this . supportComputeBuffer ) ) ;
367
+ layer . draws . Add ( CanvasShader . stencilClear ( layer , boundsMesh , supportComputeBuffer ) ) ;
370
368
371
369
foreach ( var maskElement in reducedClip . maskElements ) {
372
- layer . draws . Add ( CanvasShader . stencil0 ( layer , maskElement . mesh . duplicate ( ) , this . supportComputeBuffer ) ) ;
373
- layer . draws . Add ( CanvasShader . stencil1 ( layer , boundsMesh . duplicate ( ) , this . supportComputeBuffer ) ) ;
370
+ layer . draws . Add ( CanvasShader . stencil0 ( layer , maskElement . mesh . duplicate ( ) , supportComputeBuffer ) ) ;
371
+ layer . draws . Add ( CanvasShader . stencil1 ( layer , boundsMesh . duplicate ( ) , supportComputeBuffer ) ) ;
374
372
}
375
373
}
376
374
@@ -478,11 +476,11 @@ RenderLayer _createBlurLayer(RenderLayer maskLayer, float sigmaX, float sigmaY,
478
476
479
477
blurXLayer . draws . Add ( CanvasShader . maskFilter (
480
478
blurXLayer , blurMesh , maskLayer ,
481
- radiusX , new Vector2 ( 1f / textureWidth , 0 ) , kernelX , this . supportComputeBuffer ) ) ;
479
+ radiusX , new Vector2 ( 1f / textureWidth , 0 ) , kernelX , supportComputeBuffer ) ) ;
482
480
483
481
blurYLayer . draws . Add ( CanvasShader . maskFilter (
484
482
blurYLayer , blurMesh . duplicate ( ) , blurXLayer ,
485
- radiusY , new Vector2 ( 0 , - 1f / textureHeight ) , kernelY , this . supportComputeBuffer ) ) ;
483
+ radiusY , new Vector2 ( 0 , - 1f / textureHeight ) , kernelY , supportComputeBuffer ) ) ;
486
484
487
485
return blurYLayer ;
488
486
}
@@ -534,7 +532,7 @@ void _drawWithMaskFilter(uiRect meshBounds, uiPaint paint, uiMaskFilter maskFilt
534
532
return ;
535
533
}
536
534
537
- layer . draws . Add ( CanvasShader . texRT ( layer , paint , blurMesh , blurLayer , this . supportComputeBuffer ) ) ;
535
+ layer . draws . Add ( CanvasShader . texRT ( layer , paint , blurMesh , blurLayer , supportComputeBuffer ) ) ;
538
536
}
539
537
540
538
delegate void _drawPathDrawMeshCallbackDelegate ( uiPaint p , uiMeshMesh fillMesh , uiMeshMesh strokeMesh ,
@@ -552,16 +550,16 @@ void _drawPathDrawMeshCallback(uiPaint p, uiMeshMesh fillMesh, uiMeshMesh stroke
552
550
553
551
var layer = this . _currentLayer ;
554
552
if ( convex ) {
555
- layer . draws . Add ( CanvasShader . convexFill ( layer , p , fillMesh , this . supportComputeBuffer ) ) ;
553
+ layer . draws . Add ( CanvasShader . convexFill ( layer , p , fillMesh , supportComputeBuffer ) ) ;
556
554
}
557
555
else {
558
- layer . draws . Add ( CanvasShader . fill0 ( layer , fillMesh , this . supportComputeBuffer ) ) ;
559
- layer . draws . Add ( CanvasShader . fill1 ( layer , p , fillMesh . boundsMesh , this . supportComputeBuffer ) ) ;
556
+ layer . draws . Add ( CanvasShader . fill0 ( layer , fillMesh , supportComputeBuffer ) ) ;
557
+ layer . draws . Add ( CanvasShader . fill1 ( layer , p , fillMesh . boundsMesh , supportComputeBuffer ) ) ;
560
558
}
561
559
562
560
if ( strokeMesh != null ) {
563
- layer . draws . Add ( CanvasShader . strokeAlpha ( layer , p , alpha , strokeMult , strokeMesh , this . supportComputeBuffer ) ) ;
564
- layer . draws . Add ( CanvasShader . stroke1 ( layer , strokeMesh . duplicate ( ) , this . supportComputeBuffer ) ) ;
561
+ layer . draws . Add ( CanvasShader . strokeAlpha ( layer , p , alpha , strokeMult , strokeMesh , supportComputeBuffer ) ) ;
562
+ layer . draws . Add ( CanvasShader . stroke1 ( layer , strokeMesh . duplicate ( ) , supportComputeBuffer ) ) ;
565
563
}
566
564
}
567
565
@@ -575,8 +573,8 @@ void _drawPathDrawMeshCallback2(uiPaint p, uiMeshMesh fillMesh, uiMeshMesh strok
575
573
576
574
var layer = this . _currentLayer ;
577
575
578
- layer . draws . Add ( CanvasShader . strokeAlpha ( layer , p , alpha , strokeMult , strokeMesh , this . supportComputeBuffer ) ) ;
579
- layer . draws . Add ( CanvasShader . stroke1 ( layer , strokeMesh . duplicate ( ) , this . supportComputeBuffer ) ) ;
576
+ layer . draws . Add ( CanvasShader . strokeAlpha ( layer , p , alpha , strokeMult , strokeMesh , supportComputeBuffer ) ) ;
577
+ layer . draws . Add ( CanvasShader . stroke1 ( layer , strokeMesh . duplicate ( ) , supportComputeBuffer ) ) ;
580
578
}
581
579
582
580
void _drawTextDrawMeshCallback ( uiPaint p , uiMeshMesh fillMesh , uiMeshMesh strokeMesh , bool convex , float alpha ,
@@ -589,7 +587,7 @@ void _drawTextDrawMeshCallback(uiPaint p, uiMeshMesh fillMesh, uiMeshMesh stroke
589
587
590
588
var layer = this . _currentLayer ;
591
589
if ( notEmoji ) {
592
- layer . draws . Add ( CanvasShader . texAlpha ( layer , p , textMesh , tex , this . supportComputeBuffer ) ) ;
590
+ layer . draws . Add ( CanvasShader . texAlpha ( layer , p , textMesh , tex , supportComputeBuffer ) ) ;
593
591
}
594
592
else {
595
593
uiPaint paintWithWhite = new uiPaint ( p ) ;
@@ -602,7 +600,7 @@ void _drawTextDrawMeshCallback(uiPaint p, uiMeshMesh fillMesh, uiMeshMesh stroke
602
600
var raw_mesh = textMesh . resolveMesh ( ) ;
603
601
var meshmesh = raw_mesh . duplicate ( ) ;
604
602
ObjectPool < TextBlobMesh > . release ( textMesh ) ;
605
- layer . draws . Add ( CanvasShader . tex ( layer , paintWithWhite , meshmesh , EmojiUtils . image , this . supportComputeBuffer ) ) ;
603
+ layer . draws . Add ( CanvasShader . tex ( layer , paintWithWhite , meshmesh , EmojiUtils . image , supportComputeBuffer ) ) ;
606
604
}
607
605
}
608
606
@@ -716,7 +714,7 @@ void _drawImageRect(Image image, uiRect? src, uiRect dst, uiPaint paint) {
716
714
return ;
717
715
}
718
716
719
- layer . draws . Add ( CanvasShader . tex ( layer , paint , mesh , image , this . supportComputeBuffer ) ) ;
717
+ layer . draws . Add ( CanvasShader . tex ( layer , paint , mesh , image , supportComputeBuffer ) ) ;
720
718
}
721
719
722
720
void _drawImageNine ( Image image , uiRect ? src , uiRect center , uiRect dst , uiPaint paint ) {
@@ -743,7 +741,7 @@ void _drawImageNine(Image image, uiRect? src, uiRect center, uiRect dst, uiPaint
743
741
return ;
744
742
}
745
743
746
- layer . draws . Add ( CanvasShader . tex ( layer , paint , mesh , image , this . supportComputeBuffer ) ) ;
744
+ layer . draws . Add ( CanvasShader . tex ( layer , paint , mesh , image , supportComputeBuffer ) ) ;
747
745
}
748
746
749
747
@@ -1166,11 +1164,11 @@ void _drawLayer(RenderLayer layer, CommandBuffer cmdBuf) {
1166
1164
}
1167
1165
1168
1166
D . assert ( mesh . vertices . Count > 0 ) ;
1169
- if ( this . supportComputeBuffer ) {
1167
+ if ( supportComputeBuffer ) {
1170
1168
this . addMeshToComputeBuffer ( mesh . vertices ? . data , mesh . uv ? . data , mesh . triangles ? . data ) ;
1171
- cmd . properties . SetBuffer ( CmdDraw . vertexBufferId , this . computeBuffer ) ;
1172
- cmd . properties . SetBuffer ( CmdDraw . indexBufferId , this . indexBuffer ) ;
1173
- cmd . properties . SetInt ( CmdDraw . startIndexId , this . startIndex ) ;
1169
+ cmd . properties . SetBuffer ( CmdDraw . vertexBufferId , computeBuffer ) ;
1170
+ cmd . properties . SetBuffer ( CmdDraw . indexBufferId , indexBuffer ) ;
1171
+ cmd . properties . SetInt ( CmdDraw . startIndexId , startIndex ) ;
1174
1172
cmdBuf . DrawProcedural ( Matrix4x4 . identity , cmd . material , cmd . pass , MeshTopology . Triangles , mesh . triangles . Count , 1 , cmd . properties . mpb ) ;
1175
1173
}
1176
1174
else {
0 commit comments