7

LOL Engine день 2

Серия LOL Engine

(пожалуй, буду нумеровать посты по дням)

Итак, сегодня после работы поработал немного больше.

Из полезностей - абстрагировал мусор в int main() в класс Application, добавил Logger и Timer (на очереди WindowManager и Renderer)

LOLEngine/Internal/main.cpp

LOLEngine/Internal/main.cpp

Из важного - сделал ServiceProvider.

LOLEngine/Include/Engine/Core/ServiceProvider.hpp

LOLEngine/Include/Engine/Core/ServiceProvider.hpp

Синглтоны в проекте будут, куда без них, но складывать их в глобальном пространстве я не люблю, так как такое трудно отлаживать. Поэтому, в Application появился ServiceProvider, в который я начал складывать все синглтоны для последующего прокидывания вглубь приложения. Вместо Logger::getInstance() будет _serviceProvider->GetService<Logger>()

LOLEngine/Internal/Engine/Core/Application.cpp

LOLEngine/Internal/Engine/Core/Application.cpp

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

Репозиторий все там-же

Победить сборку под веб сегодня не получилось, пошел сидеть над этим дальше.

Основная работа не позволяет заниматься движком много времени в день, но постараюсь что-то полезное делать ежедневно.

Принял решение не тратить много времени на расписывание каждой строчки кода, лучше этот часик потратить на сам код.

Огромное спасибо всем, кто задает вопросы в комментах и тычет носом в ошибки - постараюсь учесть и исправить. Вырасти, так сказать, над собой.

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

Как всегда - жду ваши плюсы/минус/комменты. Пошел кодить дальше

Лига программистов

2.3K постов12K подписчиков

Правила сообщества

- Будьте взаимовежливы, аргументируйте критику

- Приветствуются любые посты по тематике программирования

- Если ваш пост содержит ссылки на внешние ресурсы - он должен быть самодостаточным. Вариации на тему "далее читайте в моей телеге" будут удаляться из сообщества

Вы смотрите срез комментариев. Показать все
1
Автор поста оценил этот комментарий
Теперь по файлам.
Почему ITimer отвечает за deltaTime? Судя по его имени это должен быть класс таймера?
Логгер пока что никакой абсолютно. Глянте реализации на гите, либо оберните spdlog пока что.
Зачем enum LogType не в файле логгера?
Юзинги птр эт я уважаю, эт мне нравится.
Application loop должен возвратить инт, который просто вернём в main.
const int и подобное - бессмысленно.
SyncFPSLimit - спим, да? Может, в это время движок сделает что-то полезное? В текущей реализации это просто висяк, даже события glfw не обрабатываем. В нете есть примеры как с glfw правильно fps limit реализовать.
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Спасибо. учту. А вот насчет Application loop не сильно понял. Может имели ввиду Application::Init. Тут соглашусь наполовину. Вместо була лучше буду возвращать свой код статуса.

const int - это сложившаяся привычка по умолчанию все делать констами. const int& было-бы бессмысленно, а вот в просто const int не вижу ничего плохого. Был случай по молодости, когда я получил в функцию чиселку, потом ее поменял, спустя пару месяцев в конец функции дописал что-то, думая, что внизу придет параметр, который передавался в функцию и, как понимаете, результат не сложился.

SyncFPSLimit - абсолютно согласен. Это я погорячился.

eLogLevel вынес отдельно, чисто чтобы в GetApplicationSettings() прокинуть не подключая хедер самого логера.

Большое спасибо за советы. Пойду гляну как правильно сделать fps limit и нормальный логгер

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества