• Как организовать рисование объектов?

    k12th
    @k12th
    console.log(`You're pulling my leg, right?`);
    Есть вариант сделать классы ResourceManager и Renderer Singleton'ами и использовать их в любом нужном месте, тогда проблем не будет, но я читал много аргументов против такого метода.


    Вместо синглтонов стоит использовать Dependency Injection.

    А еще посоветую вот такую книжку: gameprogrammingpatterns.com
    Ответ написан
    Комментировать
  • Тупиковое и медленное развитие, лекарство?

    Konstantin18ko
    @Konstantin18ko
    Стоматолог
    Хочешь быстро выкачивать в продакшен? Вруби режим Vanille. Пиши, параллельно свой проект. Зацепись за один язык как основной и дальше учи всё в нем вдоль и поперёк. Затем, как всё выучишь, хватай самый сложный фраемворк и от сложного к простому начинаешь разбирать. Это мой подход.
    Для наглядной статистики: я врач, у меня 8 часовой рабочий день. С сентября 2016 начал изучать PHP и JavaScript. С 1 января по 9 января 2017 пишу програму которая помогала мне писать истории больных. Сейчас программа пользуется популярностью и ей пользуется вся ординаторская. Сейчас проект переписывается на Symfony 3.
    Что мне понадобилось: время после работы, интернет.
    Ответ написан
    22 комментария
  • Как организовать рисование объектов?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Ну, если у вас чисто 2D движок, то, например, как-то так:
    Базовый класс для 2D игровых сущностей:
    class GameObject2D : public GameObject {
    public:
      const Sprite& getSprite() const { return sprite; };
    private:
      Sprite sprite;
    }

    Игрок:
    class Player : public GameObject2D {
    // его особенные методы
    }

    Renderer:
    class Renderer {
    public:
      void drawScene(const Scene& scene)
      {
        auto& visibleObjects = scene.getVisibleObjects();
    
        for(auto& gameObject : visibleObjects) {
          drawSprite(gameObject->getPosition(), gameObject->getSprite());
        }
      }
    }
    Ответ написан
    2 комментария
  • Где оставлять лицензии к используемым в проекте библиотекам?

    BBmike
    @BBmike
    авторское и исключительное право соблюдается не тогда, когда файл с лицензией кладется в нужную папку, а тогда, когда Вы точно следуете всем ограничениям и разрешениям, полученным от правообладателя.
    Ответ написан
    Комментировать
  • Где оставлять лицензии к используемым в проекте библиотекам?

    @balamut108
    Py
    По большому счету без разницы где Вы положите файлы с описанием лицензий. Главный вопрос состоит в том, какая лицензия на весь проект и не противоречит ли она лицензиям на библиотеки, например, в части коммерческого использования. А вообще, лицензии вроде GNU GPL никакой юридической силы на территории РФ не имеют. Они могут рассматриваться лишь как некое безакцептное соглашение с правообладателем и неопределенным кругом лиц (разработчиков), определяющих "правила" использования ПО и библиотек. Тут даже больше вопрос этики, как ты хочешь чтобы использовали твое ПО. Кто-то против коммерции, кому-то пофиг на это.
    Ответ написан
    7 комментариев