injectAfterVersion method
Injects a shader define after the #version directive.
Implementation
String injectAfterVersion(String src, String defineLine) {
// Strip UTF-8 BOM if present (some editors add it)
var source = src;
if (source.isNotEmpty && source.codeUnitAt(0) == 0xFEFF) {
source = source.substring(1);
}
final lines = source.split('\n');
final v = lines.indexWhere((l) => l.trimLeft().startsWith('#version'));
if (v >= 0) {
lines.insert(v + 1, defineLine);
return lines.join('\n');
}
// If no #version is present (shouldn't happen), don't inject before it.
return source;
}