Ответы пользователя по тегу Разработка игр
  • Как создать GUI для игрового редактора?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Если C++, то Qt
    Ответ написан
    Комментировать
  • Почему C++ лучше для игрового движка, а не Java?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Из-за производительности, именно для движка лучше подходит C++, т.к. позволяет писать максимально эффективно и без тормозного сборщика мусора. А Java подходит для игровой логики, где не нужна производительность, но будет очень кстати язык, в котором сложнее выстрелить себе в ногу.
    Ответ написан
    4 комментария
  • Можно ли создавать игры на пиратской версии движка?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Многие программы оставляют данные о лицензии в исполняемых файлах(и ты их вероятно никогда не найдёшь), а это значит, что есть риск быть пойманным, и в зависимости от страны, где ты находишься, наказание может быть достаточно серьёзным.
    Если для себя будешь делать, то ничего с тобой не будет, пока об этом не знают, если собираешься куда-либо выкладывать(или что ещё хуже продавать), лучше не надо.
    Ответ написан
    Комментировать
  • Как сделать навигатор для игры?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Для начала нужно нормально составить вопрос, указать, какие используются технологии и что конкретно необходимо(возможно вы удивитесь, но не все играли в GTA5). Если вам нужно находить маршрут до точки, то используйте алгоритмы поиска пути, их много, гуглите.
    Ответ написан
    Комментировать
  • Разработка игр в свободное время, и основная работа как front-end или 3D-Artist?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Если есть сильное желание создавать игры, я бы посоветовал всё таки найти ту работу, которая даст вам опыт в создании игр. Ну либо ту, где не будет большой нагрузки, будет оставаться свободное время и будет хватать денег на жизнь. Ну и конечно хорошо было бы найти команду единомышленников, таких же людей, которые очень сильно хотят создавать игры и что-то умеют.
    Ответ написан
    1 комментарий
  • Зачем нужны другие инструменты, если есть UE4 / Unity?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    1 Не всегда нужна вся та мощь движка
    2 Иногда, очень редко, может не хватать гибкости движка
    3 Разработчики могут хорошо знать свой инструмент, но плохо UE/Unity
    4 Нежелание покупать движок или отдавать часть дохода создателям движка
    5 Эффективность, свой движок или другой узкоспециализированный может быть более эффективным
    И ещё тысячи других причин.
    Ответ написан
    Комментировать
  • Как организовать рисование объектов?

    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 комментария
  • Что нужно знать для создания 2D движка?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Немного физики, школьный курс математики + линейная алгебра(для начала хватит цикла статей на хабре "линейная алгебра для разработчиков игр"), знание языка C# или C++ на достаточном уровне ну и много других мелочей.
    Ответ написан
    Комментировать
  • Как реализовать ресурс, который будет восполняться с течением времени?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Вот тут весьма подробно расписано: unitylore.com/articles/timers-in-unity
    Ответ написан
    Комментировать
  • Как можно реализовать проверку подлинности данных на игровом сервере?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Шифрование + авторизация + проверка данных на "реальность", т.е. если максимальная скорость машины 100 км/ч, а от клиента приходит результат, что он за секунду проехал 1000км, то тут явно что-то не так. Но даже в таком случае есть шанс, что программу реверснут и будут посылать левые результаты, можно вынести весь игровой процесс на сервер, но, думаю, в вашем случае это не подойдёт. На 100% защититься от читеров в принципе невозможо, ибо есть вероятность, что напишут бота к вашей игре.
    Ответ написан
    Комментировать
  • Какую технологию применить для 2d рисования?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Я посоветую Qt.
    Ответ написан
    3 комментария
  • Как просто и наименее затратно потренироваться с мультиплеером в играх?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    У себя на компе можешь поднять по адресу 127.0.0.1, если же хочешь, чтобы он был доступен из вне, то нужен белый ip адрес. Ну и конечно ты можешь поискать, где есть бесплатные vps, amazon, например, предлагает год на тест. Им правда нужна карта для проверки, я использовал виртуальную киви, на которую положил доллар, amazon его снял и положил обратно. Но меня там в итоге всё равно забанили, т.к я заходил с крымского IP :(
    Ответ написан
    Комментировать
  • Возможно ли разрабатывать игру из-под разных платформ?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    В общем случае не нужна, в частных может быть нужна. Если вы используете движок вроде unreal, то получаете кросплатформерность из коробки. Если же пишите свой движок, то определённый код будет платформозависимым(рендер, общение с ОС и прочее) и придётся либо писать вариант для каждой ОС, что-то типа:
    #if defined WINDOWS
    // do something
    #elif defined LINUX
    // do something else
    #endif

    Либо брать готовые решения(фреймворки и библиотеки), в которых это уже сделали за вас
    Ответ написан
    Комментировать
  • Почему сменная не получает данные из другого скрипта?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Когда ты пишешь такой код, где-то в мире умирает котёнок, не будь извергом!
    if (oppAcc == true) {
    можно просто
    if (oppAcc) {
    и что такое oopAcc? Что такое mfb, cfb? Пиши нормально.
    playerInfo.skin = 999;
    Почему скин 999? Что такое 999? id? Почему не enum? Ну ладно, это мелочи. Что этот код по покупке делает в update? Читаем документацию https://docs.unity3d.com/ScriptReference/MonoBehav... update вызывается в каждом кадре, у вас будет покупаться очень много вещей, пока переменная oppAcc будет true. Также что вот этот код делает в update?
    void Update () {
            gold = 10000;
            crystals = 10000;
      }

    Возможно проблема в этом. А может и ещё где-то.
    Ответ написан
  • Какой движок лучше для начинающих - Unity 3D или gamemaker studio 2?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    GameMaker не пробовал, но судя по тому, что на нём нет нормальных игр, можно сделать вывод, что изучать его не лучшая идея. На unity же есть и 2D и 3D и не только от инди разработчиков.
    На счёт сложности, попробовал недавно unity и ничего сложного не увидел, просто читай документацию, смотри туториалы и гугли.
    Тот же Unity 3D, как редактор кода предлагает VS или монодевелоп. И два языка программирования - JS и CSharp.
    А хочется один язык и один редактор. Причина - уроки, информация. Тут на CSharp, там на JS...

    Так и используйте один язык и один редактор. Советую C#, т.к. по нему инфы намного больше, да и сам язык лучше.
    Ответ написан
    2 комментария
  • Где можно взять исходные коды rgp игр?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    На github
    Ответ написан
    Комментировать
  • С чего начать погружение в 3д движки?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Не добавляйте такое в репозиторий :) https://github.com/danmoop/My-first-JFrame-button-...
    А по теме. С вашим уровнем знаний создать что-то крутое будет сложно, но попробовать стоит. Для начала вам нужно забыть про редактор, сделайте движок, поверьте, можно программировать не только мышкой, это даже удобнее и быстрее. Язык можете выбрать любой, но если цель сделать эффективно - то C++, я бы посоветовал тот, который лучше всего знаете. Также посоветую начать с 2D. Почитайте про паттерны, про архитектуру приложений и сделайте ядро движка, не стесняйтесь использовать готовое, например Box2D для физики. Гуглите, изучайте, спрашивайте на форумах по разработке игр. Удачи!
    Ответ написан
  • Имитация 3D в 2D?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Вероятно у объектов есть z параметр, задающий "глубину", т.е. номер слоя и соответственно его порядок отрисовки, а корзина состоит из двух объектов.
    Ответ написан
    Комментировать
  • Как создать игровой 3д движок?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Научись сначала программировать не мышкой. Тебе нужен опыт в создании движка или же GUI редактора? Если второе, то бери Qt(C++/python), Winforms/WPF(C#) и прикручивай к какому-нибудь опенсорсному движку. Если первое, то начни именно с движка, т.е. с архитектуры, подумай, какие части будешь писать сам, какие позаимуствуешь(есть куча опенсорсных библиотек, которые ты можешь использовать).
    Ответ написан
    Комментировать
  • Как нужно изучать JS в unity?

    devalone
    @devalone
    ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
    Никак, учи C#
    Ответ написан
    Комментировать