Войти
Urho3DФорумЗАДАВАЙТЕ ВОПРОСЫ

[РЕШЕНО] Angelscript -> Загрузка карты местности в двумерный массив -> как? (2 стр)

Страницы: 1 2
#15
18:48, 26 ноя 2021

Мне только сейчас дошло что throw нужно для поднятия своей ошибки и getExceptionInfo для ее обработки. До этого думал в контексте что может оно нужно чтобы передать в плюсовую часть исключение и там обработать его. Если  есть желание генерировать исключение в скриптах и там же их обрабатывать, может и есть смысл пропатчить плеер вмести libUrho3D, фикс нужен на стороне libUrho3D.

#16
19:40, 26 ноя 2021

ёж
> Там можно при старте приложения (в параметрах) явно указать имя Лог файла
> и тогда он будет рядом с экзешником появлятся.
> (в скриптах тоже)
что-то и где-то прописать это ясно,
я смотрю сюда
и вижу для лога только два флага и они не про это(

Tarzeron
> вот пример обработки в самом скрипте
спасибо за скрин, у меня в урхо 1.7.1:
Глюк Urho 1.7.1 | [РЕШЕНО] Angelscript -> Загрузка карты местности в двумерный массив -> как?
взял версию урхо <мастер> с гитхаба
и ошибка ушла.

кстати, в блоках catch, обычно, ловят всё, что плохо ...

Tarzeron
> думаю ради этого начинать кастомизировать плеер нет смысла
ну, мне про это рано думать,
в движок и так по мне напихано больше, чем я смогу усвоить за 1 год.

Tarzeron
> что throw нужно для поднятия своей ошибки
да, основной смысл в ексепшенах такой же как и в С++,
иначе зачем он ваще нужен.

Так как глубина вызовов методов может быть достаточно большой,
то ексепшены по мне сильно упрощают обработку исключительных ситуаций.

Tarzeron
> Меня другое имя не смущает
давайте погадаем - какое другое имя может быть у throw(..) для Ангела ?

#17
2:22, 28 ноя 2021

ёж
> Log
в общем процесс кастомизации пошёл)

исправил целевую папку лога так:
в файле Urho3D-1.8-ALPHA\Source\Tools\Urho3DPlayer\Urho3DPlayer.cpp строка 133

        // заменил это:
        // Use the script file name as the base name for the log file
        //engineParameters_[EP_LOG_NAME] =
        //    filesystem->GetAppPreferencesDir("urho3d", "logs")   +
        //                GetFileNameAndExtension(scriptFileName_) + ".log";

        // на это:
        engineParameters_[EP_LOG_NAME] =
            GetFileNameAndExtension(scriptFileName_) + ".log";

теперь за логом не надо никуда лезть...

P.S:
неожиданно в голову пришла мысль - почему разрабы изменили директорию:
требование соблюдения норм безопасности системы:
все директории с "важными данными", ну, исполняемых файлов это в первую очередь касается,
должны быть исключительно на ЧТЕНИЕ, любая запись в этих директориях
должна быть запрещена, желательно на как можно более высоком уровне ядра OC.

Страницы: 1 2
Urho3DФорумЗАДАВАЙТЕ ВОПРОСЫ

Тема в архиве.