Making foliage scale by landscape layer weight?

I like my grass in of itself, but I need help with making it blend with other landscape surfaces better. One of the things I’ve noticed when looking at examples of how other games accomplish this, is that they make transitions from grassy to non-grassy areas more gradual and smooth by making the grass smaller as they reach their outer edge. So that along a path, you’ll have small, occasional straws of grass, getting bigger and bigger as you get closer to the field of grass I’ve tried experimenting a bit by making multiple foliage smaller versions of my grass that’s paintable at smaller amounts of “minimum inclusion landscape weight”, but that doesn’t stop the smaller grass from painting at the same inclusion as the larger grass, multiplying the total density where it’s not needed, so I still have to do a lot of manual work.

Simply making it so that the scale of the grass equals the amount of landscape layer weight would really do everything I needed, but I am not aware of any way to do this.
Is there a way to do this, or emulate a similar effect?

You can use virtual textures to export your grass mask, or a variation of it with proper gradients. You can then import this virtual texture in to your grass shader and manipulate your paramaters based on the gradient. For instance scale the height value of the vertecies based on the landscape normal.

Cheers, I suppose this would mean I would have to export a new mask every time I change and tweak my landscape during the development. I was hoping for something a bit more dynamic, like somehow getting the strength of the grass material on the landscape. But it’s definitelty something I could use!