From 49b5a23d4720127611623cd1e29142ca9aa63731 Mon Sep 17 00:00:00 2001 From: Aaron Clarke Date: Mon, 13 Oct 2025 16:37:54 -0700 Subject: [PATCH] Updated fragment shader sample to use uniform-by-name accessor --- simple_shader/lib/main.dart | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/simple_shader/lib/main.dart b/simple_shader/lib/main.dart index e314f91bfe0..e12f4ef5a93 100644 --- a/simple_shader/lib/main.dart +++ b/simple_shader/lib/main.dart @@ -40,13 +40,18 @@ class MyHomePage extends StatelessWidget { } class ShaderPainter extends CustomPainter { - ShaderPainter({required this.shader}); - ui.FragmentShader shader; + ShaderPainter({required this.shader}) + : _width = shader.getUniformFloat('resolution', 0), + _height = shader.getUniformFloat('resolution', 1); + + final ui.FragmentShader shader; + final ui.UniformFloatSlot _width; + final ui.UniformFloatSlot _height; @override void paint(Canvas canvas, Size size) { - shader.setFloat(0, size.width); - shader.setFloat(1, size.height); + _width.set(size.width); + _height.set(size.height); final paint = Paint()..shader = shader; canvas.drawRect(Rect.fromLTWH(0, 0, size.width, size.height), paint);