Утечки: картинки глав книги, материал кольца пирамиды, мелочи прилива

- Книга: картинка главы при смене главы не удалялась (~2 МБ за смену) -
  удаляем сами при смене, у главы без картинки и при закрытии окна.
- Пирамида: кольцо зоны создавало новый материал при каждой перезагрузке
  чанка - теперь один общий.
- Прилив: не держать стат игрока после выхода из мира; забывать полосы
  пересобранного HUD.
- SpatialVaultPatch: исправлен устаревший комментарий про очистку кэша.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
AlexCube
2026-10-10 13:39:29 +03:00
co-authored by Claude Opus 5.5
parent 75e122b6a4
commit 7fd0d405cc
6 changed files with 46 additions and 6 deletions
+8 -2
View File
@@ -319,6 +319,7 @@ namespace NecromancerTome
// светящееся фиолетовое кольцо по земле - LineRenderer, точки опущены на рельеф лучом.
// Дочерний объект модели блока - поэтому сдвиги Origin и выгрузка чанка его не теряют.
GameObject ring;
static Material _ringMat;
public void SpawnZoneRing()
{
@@ -332,8 +333,13 @@ namespace NecromancerTome
const int n = 96;
lr.positionCount = n;
lr.widthMultiplier = 0.14f;
var mat = new Material(Shader.Find("Sprites/Default"));
lr.material = mat;
// Один материал на все кольца (проверка утечек 10.10): материал - ассет и с объектом кольца не удаляется,
// а кольцо пересоздаётся при каждой перезагрузке чанка (модель блока - новая). Цвет - вершинный (startColor).
if (_ringMat == null)
{
_ringMat = new Material(Shader.Find("Sprites/Default")) { name = "NecroWardRing" };
}
lr.sharedMaterial = _ringMat;
Color col = new Color(0.75f, 0.25f, 1f, 0.85f);
lr.startColor = col; lr.endColor = col;
lr.shadowCastingMode = UnityEngine.Rendering.ShadowCastingMode.Off; lr.receiveShadows = false;