Если вы в игре часто использовали числа для вывода в пользовательском интерфейсе, то вы, наверное, заметили в профайлере (есть такая, да) аллокации, от которых вы не можете избавиться:
текст = здоровье.ToString();
А ведь есть еще и всякие
текст = $"{value}/{maxValue}";
На самом деле есть довольно простой способ избежать аллокаций в данном ключе, когда мы знаем конечное значение для результата:
если здоровье = 0..100, то можно занести массив и взять стоимость:
текст = arr[здоровье];
или
текст = arr[maxValue][значение];
Да, мы делаем небольшое подобное https://t.me/unsafecsharp/11, но мы не используем объединенные строки, т.к. у нас они уже созданы.