Гайз, есть один вопросик, интересно как считает каждый Что есть Ассет

Менеджер?

Тут такое кино, что я добрался до реализации высирания загрузки 3Д объектов (.obj) под видом объекта на сцену, но у меня возник вопрос: стоит ли этот процесс реализовывать через Ассет Менеджер? С точки зрения логики.
P.S. Ассет менеджера у меня вообще нет пока что ни в каком виде

Вообще, у меня есть класс GameObjectManager, который отвечает за жизнь зарегистрированных через него объектов (создание/добавление/взаимодействие друг с другом/и т.д.). Пришла ещё в голову идея мб через него как то это оформить, но.... не уверен, что это будет хорошей идеей, т.к. в последствии сам класс станет тяжелее...

Я почитал в интернете определения ассет менеджера, но почти везде копипаст и где то пишут про 3Д модели, а где то нет. Только прочая шняга аля анимации, звуки и т.п.

Лично мне на первый взгляд думается, что создание внешних объектов через средства Ассет Менеджера не очень в тему... может кто распишет подробно и расставит всё по полочкам, у кого немаленький опыт в геймдейве

Заранее спасибо за ответы

11 ответов

10 просмотров

Начни с LRU кэша ресурсов

Stepan-Zorin Автор вопроса
Aleksey Muravev
Начни с LRU кэша ресурсов

а где он реализовывается?

я бы сделал загрузчик объектов и менеджер объектов разными классами

У меня 3д обьект из файла загружается в конструкторе того классе которым он будет представлен в коде. Простые вызовы методов типа читать из файла + распарсить. Можно это и в менеджер завернуть. Но я люблю попроще.

KivApple
я бы сделал загрузчик объектов и менеджер объектов...

йэх, а у меня для каждого типа ассетов свой менеджер

Vova
У меня 3д обьект из файла загружается в конструкто...

Обработка ошибок. Файл не найден, считаться из файла может что-то неожиданное. А конструктор обязан инициализировать объект. Напрашивается хотя бы статический factory method, если не отдельный класс загрузчик. Чтобы можно было при определённых обстоятельствах отдать ошибку вместо объекта. Конечно, есть исключения, но во первых насколько я помню есть какие-то проблемы с выкидвванием их в конструкторе в плюсах, а во вторых плюсовики часто отключают rtti.

KivApple
Обработка ошибок. Файл не найден, считаться из фай...

у меня конструктор создаёт пустой объект, хехе

KivApple
Обработка ошибок. Файл не найден, считаться из фай...

Ну естественно. Отключают ртти , ассерты и дебаг. И сразу пушат код в репозиторий даже не запуская. Все правильно.

Vova
Ну естественно. Отключают ртти , ассерты и дебаг. ...

Rtti отключают по соображениям производительности. И в любом случае dynamic_cast не рекомендуется. Исключения поддерживают не все либы.

Откуда ты это берешь?

Vova
Откуда ты это берешь?

да их реально полно

Похожие вопросы

Обсуждают сегодня

Привет, кто может сделать юзербота с апи? Задачи: - создавать группы - создавать каналы - задавать для созданных каналов аватарку или эмоджи, имя группы - добавлять в группы...
Lencore
11
у меня такой вопрос про память в x86 возник, может кто пояснить?.. у процессора есть (как минимум) 3 типа адресов (названия "п1", "п2", "п3" --- мои, чтобы проще было дальше)...
Toideng
10
У них там что-то своё же вроде!?
Евгений Данилов
5
К слову, почему бы не использовать ссылки на папки, вместо инвайтинга?
Артем Уколов
3
Какого хера? /Sources/App/Modules/User/Models/UserLinkApple.swift:21:20: warning: stored property '_id' of 'Sendable'-conforming class 'UserLinkApple' is mutable @ID(...
Alexander Sherbakov
14
Кастомные эмодзи для ботов доступны только элите, верно?
山 | Bobby | 山
3
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
Ты точно пересобрал код и запускаешь то, что вот выше написано? Потому что выглядит все работоспособно.
Denis
1
Второй вопрос: снимаются ли эти ограничения при покупке на fragment хрени за кучу денег? (до 4096 / 2048)
Артем Уколов
3
Портфолио: Зовут меня Александр, мне 41 год. Город Киров. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github.co...
Magic
11
Карта сайта