Pull to refresh

Comments 14

Про сам паттерн Команда не сказано ни слова.

-funroll-all-loops

Это псевдооптимизаторский флаг, который обычно ухудшает производительность, поверьте гентушникам.

Генту очень хороший дистрибутив, верю

в примере и если так применить в игре с известным количеством элементов до 100 вроде разворачивается если смотреть на ассемблер

https://developers.redhat.com/blog/2018/03/21/compiler-and-linker-flags-gcc#recommended_build_flags

можно еще тут посмотреть, в своё время смотрел

ValidRules - вектор, который хранит общие нюансы игровые - т.к. в данном случае мы рассматриваем 2Д, то это я считаю очень удобно, например какие-то общие правила. Например как на доске двигаются фигуры и т.д.

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

По кнопке Влево мы наполняем наши 2 вектора числами. По кнопке Вправо переносим из конца первого вектора в конец второго. По кнопке Вниз отменяем последнее перемещение числа.

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

В этой статье есть некая проблема в том, что ты сразу описываешь полученные результаты. Самого квеста, который ты прошел, здесь нет - он есть только в твоей голове. Ты говоришь - пришел к некоторым вопросам про использование C++, и где эти вопросы? Есть только ответы.

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

Например, для олдов, можно напомнить, что SDL теперь работает на лицензии zlib, а не GPL как раньше. По сравнению с MIT, zlib понятней, легче читается, и позволяет изменять способ информирования о ее наличии: "This notice may not be removed or altered from any source distribution." Это значит, его действительно можно использовать в чем-то, что дальше ты будешь продавать. Без этого весь этот код можно было бы сразу выкинуть в помойку и писать на чем-то совершенно другом.

спасибо учту, простите квест действительно есть. просто я слаб в простоту такого он даже подготовлен и по рандому я сам честно его даже 1 раз проделал)

ValidRules - общие правила что где находится или что как двигается или откуда берется

ValidQuests - конкретика достижения

я начинал с хаотичной разработки без паттернов, пробовал 3Д, сделал пару приложений для себя, на некой итерации второго приложения 2Д, пошли сдвиги что я не на правильном пути. Сначала был прототип который я написал сразу за 1 час, далее просто группировка, и потом осознание что для функционала конкретно уже нужны паттерны действительно (тоесть в хаотичной разработке нет желания переизобретать паттерны)

Можно не только про лицензию, в SDL3 теперь добавилась куча новых фич.

Например, можно определять функции обратного вызова (main callbacks) вместо main() (см. обзор из документации), которые возвращают/принимают значение SDL_AppResult:

  • SDL_AppInit() - инициализирует приложение в начале

  • SDL_AppIterate() - главная функция (выполняется на каждой итерации)

  • SDL_AppEvent() - работает в поступающими в приложение событиями

  • SDL_AppQuit() - завершает работу

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

Еще появился переносимый GPU API, т.е. может и в 3D c аппаратным ускорением.

Даже отрисовка текста теперь из коробки есть, правда, только для дебага.

Я так и не понял, что делает этот паттерн, чего нельзя было сделать без него?

Sign up to leave a comment.

Articles