reckfellENGINE

CompressedTexture2D

Texture2D из результата импорта с явной загрузкой файла.

На этой странице
class CompressedTexture2DReckfellSharpНаследует Texture2D

Обычный путь использования — ResourceLoader.Load<Texture2D>("asset://art/icon.png"): загрузчик применяет import remap и возвращает ресурс нужного типа. CompressedTexture2D.Load принимает уже созданный .ctex, а не выполняет импорт PNG. Название класса не гарантирует VRAM block compression: проверенный Lossless-импорт возвращает доступные пиксельные данные.

Полный проверенный помощник создаёт независимый экземпляр через CacheMode.Ignore. Он полезен для независимой загрузки; не вызывайте загрузку и GPU-readback каждый кадр вместо хранения ресурса:

C#
using System;
using Reckfell;

public static class IndependentImportedTexture
{
    public static CompressedTexture2D Load(string projectPath)
    {
        var texture = ResourceLoader.Load<Texture2D>(projectPath, cacheMode: ResourceLoader.CacheMode.Ignore);
        if (texture is CompressedTexture2D imported) return imported;
        texture?.Dispose();
        throw new InvalidOperationException("Expected an imported CompressedTexture2D resource.");
    }
}

GetLoadPath/LoadPath обозначают внутренний импортированный файл; ResourcePath может оставаться путём исходного ассета. Прямой Load не присваивает ResourcePath. Повторный успешный Load сохраняет RID и вызывает Changed. Setter LoadPath не предоставляет Error, поэтому для обработки ошибки используйте метод. Действующий RID может быть placeholder даже до загрузки.

Известное несоответствие текущей реализации: HasAlpha() возвращает false даже для проверенного прозрачного RGBA-пикселя. Этот дефект воспроизведён; движок не исправлялся. Не используйте HasAlpha как единственный тест фактической альфы. Сброс alpha cache при повторном Load работает: Sprite2D.IsPixelOpaque правильно обновился после замены прозрачного изображения на непрозрачное. Корректно работала и отдельная загрузка нового экземпляра.

Проверены реальные Lossless-импорт, GPU-readback, пути, события, RID и повторная загрузка в Windows/Vulkan. Shader draw, качество графики, VRAM/Basis/Lossy, mipmapped/streamed imports и другие backend не проверены.

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Конструкторы1

CompressedTexture2DКонструктор
# CompressedTexture2D
C#
public CompressedTexture2D();

Создаёт незагруженную текстуру: ширина/высота 0 и пустой LoadPath. До обращения к RID GetImage возвращает null. GetRid может создать placeholder, поэтому действующий RID сам не подтверждает загрузку файла.

Свойства1

LoadPathСвойство
# LoadPath
C#
public string LoadPath { get; set; }

Чтение возвращает импортированный путь; назначение вызывает Load, но setter не возвращает его Error. Для обработки результата вызывайте Load явно. Ожидается .ctex, не исходный PNG/JPEG. Не привязывайте логику ассетов к изменяемым хешированным путям кэша импорта.

Методы2

GetLoadPathstring
# GetLoadPath
C#
public string GetLoadPath();

Возвращает путь последнего успешно прочитанного импортированного файла. Это не обязательно ResourcePath исходного PNG и не новый импорт изображения.

Возвращает string

Сохранённый импортированный путь либо пустая строка до загрузки.

LoadError
# Load
C#
public Error Load(string path);

Читает файл результата импорта .ctex и обновляет GPU-данные этого экземпляра. Это не импорт произвольного изображения: обычные проектные PNG/JPEG загружайте через ResourceLoader. При успешной повторной загрузке RID сохраняется и испускается Changed, включая повтор того же пути. ResourcePath не переназначается. Проверяйте возвращённый Error и журнал. Внутренний читатель сбрасывает alpha cache перед чтением; обновление Sprite2D.IsPixelOpaque после замены изображения подтверждено тестом.

Параметры
ИмяТипПо умолчанию
pathstring—
path

Путь к существующему результату импорта .ctex нужного типа; не путь к исходному PNG.

Возвращает Error

Результат Error. Проверяйте Error.Ok и состояние ресурса; метод не является тестом визуального качества.

Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.