Skip to content
This repository has been archived by the owner on Jan 25, 2023. It is now read-only.

Не работает превью ресурсов в редакторе #3148

Open
1vanK opened this issue Dec 1, 2022 · 13 comments
Open

Comments

@1vanK
Copy link
Contributor

1vanK commented Dec 1, 2022

После обновы 724506f в браузере ресурсов при выделении любой модели (или материала) не может определить тип ресурса (пишет Unknown)

@1vanK
Copy link
Contributor Author

1vanK commented Dec 4, 2022

Рабочая версия: codecat/angelscript-mirror@2f1d5f2

В следующем коммите возникают ассерты в отладочной версии codecat/angelscript-mirror@4fea513 а в релизной версии эта ошибка

@1vanK
Copy link
Contributor Author

1vanK commented Dec 4, 2022

В последних версиях AS ассерт пофикшен, но ошибка остается

@1vanK
Copy link
Contributor Author

1vanK commented Dec 4, 2022

Ошибка возникает тут EditorResourceBrowser.as

int GetResourceType(String path, StringHash &out fileType, bool useCache = false)
{
    if (GetExtensionType(path, fileType) || GetBinaryType(path, fileType, useCache) || GetXmlType(path, fileType, useCache))
        return GetResourceType(fileType);

    return RESOURCE_TYPE_UNKNOWN;
}

При выделении модели в браузере ресурсов, внутри функции GetBinaryType() fileType устанавливается в правильное значение, но когда значение передается дальше в функцию GetResourceType(), то оно сбрасывается в ноль

@1vanK
Copy link
Contributor Author

1vanK commented Dec 4, 2022

@orefkov там ты в коммите поломанном указан, есть идеи?

@1vanK
Copy link
Contributor Author

1vanK commented Dec 4, 2022

Выглядит так, что когда параметр &out передаётся из функции в функции он невзначай очищается между вызовами

@1vanK
Copy link
Contributor Author

1vanK commented Dec 4, 2022

Может там &inout нужен или что-то вроде этого

@1vanK
Copy link
Contributor Author

1vanK commented Dec 4, 2022

Блин, а сработало. Теперь все &out по скриптам шерстить(

@orefkov
Copy link
Contributor

orefkov commented Dec 4, 2022

Лучше тогда вообще не указывать - тогда параметр считается inout.

@1vanK
Copy link
Contributor Author

1vanK commented Dec 4, 2022

Ну это баг полюбому, типа если я переменную &out прокидываю во вложенный вызов, она же все равно &out

@1vanK
Copy link
Contributor Author

1vanK commented Dec 4, 2022

У тебя на готове нет микропримера, чтобы проверить такое изолированно?

@1vanK
Copy link
Contributor Author

1vanK commented Dec 4, 2022

Чтоб пофиксилось достаточно bool GetExtensionType(String path, StringHash &out fileType) поменять

@1vanK
Copy link
Contributor Author

1vanK commented Dec 5, 2022

Написал ему на мыло

@1vanK
Copy link
Contributor Author

1vanK commented Dec 22, 2022

Добавил временный workaround, но issue закрыть не буду

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants