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

    @koronabora
    Человек
    Найдите у себя 2 компа, из одного сервер сделайте, а на другой - клиент. Пусть пока по локальной сети работают. Потом можете сделать так, чтобы оба по вайфаю работали и поставить рядом, но далеко от роутера. Будет эмуляция реальной сети с задержками и потерей пакетов.
    Ответ написан
    Комментировать
  • Где можно взять исходные коды rgp игр?

    @koronabora
    Человек
    Только эту игру врятли выложат. И с учетом того, что франшизу собираются развивать.

    А так - да, даже cry engine выложили, и тоже на github. Но это движок, не игра. Игру выложат только очень старую, т.к. игра - это уровни, модели, скрипты, тексты и звуки. У всего этого есть правообладатели и только переведя этот контент под свободную лицензию, можно выложить.
    Ответ написан
  • С чего начать погружение в 3д движки?

    @koronabora
    Человек
    Учите с++ и начинайте писать свой простой 2д движок с использованием opengl. За основу возьмите какой-нибудь готовый с открытыми исходниками. У готового возьмите общую архитектуру программы - что как работает, как работает главный цикл и все остальное. Дальше уже, худо-бедно написав, придет какое-то простое понимание.

    А дальше можно будет редакторами и 3д заморачиваться.

    Java - не для игровых движков.
    Ответ написан
    Комментировать
  • Как сделать мультиплеер в игре?

    @koronabora
    Человек
    Поддерживаю предыдущего ответившего. Мультиплеер - достаточно сложная вещь. Лучше сначала посмотреть как ее сделали другие, а потом уже браться за свой.
    Ответ написан
    Комментировать
  • Как реализованы порталы в игре Portal?

    @koronabora
    Человек
    1) Изображение портала - это рендер в текстуру с камеры которая висит в середине другого портала.
    2) При коллизии модели игрока с порталом - спавним копию во втором портале. Ту модель из двух, которая оказывается с обратной стороны портала (за порталом или внутри) - убиваем. Камеру вешаем к оставшейся модели.
    3) Вопросы коллизий и отбрасывания граней моделей при просмотре с камеры внутри портала решать также нужно в каждом конкретном случае.
    Как-то так.
    Ответ написан
    Комментировать
  • Что необходимо знать программисту геймплея в видеоиграх?

    @koronabora
    Человек
    C++

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

    Пласт знаний - огромный.
    Ответ написан
    Комментировать
  • Какие игровые движки существуют для Python?

    @koronabora
    Человек
    Python не совсем подходит для игр. Если хочется простоты, то нужно выбрать язык с поддержкой lua. А если по-серьезному, то с++.
    Ответ написан
    Комментировать
  • С чего начать OpenGL?

    @koronabora
    Человек
    1) Если стоит задача просто разработать программу: использовать готовый движок Ogre.
    2) Если стоит задача изучить Opengl с нуля, то лучше взять библиотеки отсюда: https://www.opengl.org/sdk/libs/
    Ответ написан
  • Можете подсказать абстрактную структуру игры?

    @koronabora
    Человек
    Если знаний на эту тему нет, рекомендую взять готовый движок и уже по туториалам пройтись. Сразу появится представление, так очень сложно и долго давать правильный развернутый ответ.
    Ответ написан
    Комментировать
  • Какой стек современных/актуальных/развивающихся/востребованных технологий для разработки серъёзных игр(с большим бюджетом) под Windows?

    @koronabora
    Человек
    Надо понимать, какая игра и для чего используется. Если серьезная работа с графикой, то это чаще всего С++ с разными библиотеками, от физики, до звука и подгрузки скриптов. Из графических API используют DirectX, сейчас Vulkan подоспел. Вообще, большие фирмы допиливают свой движок, который у них уже давно есть, а маленькие покупают чужой. У каждого движка свою плюсы и минусы, где-то дописывают сетевую часть.

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

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

    Общие компоненты примерно такие:
    1) Ядро, обеспечивающие game loop и обработку событий, подготовку сцены, сохранение прогресса игры, первичную загрузку
    2) SDK для разработки мира и скриптов, хранение ресурсов, система патчей
    3) Рендер. Все, что касается отрисовки и подготовки мира к отрисовке.
    4) Звук
    5) Физика
    6) Графический интерфейс, конфигурационные файлы
    7) Защита от пиратства
    8) Система модификаций (у разработчиков свое SDK чаще всего)
    9) AI
    10) Система скриптов и "проигрывания" сюжета
    11) Сетевая часть
    И еще всякие разные интересные мелочи.

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

    @koronabora
    Человек
    Если сингл - то берут имеющийся в наличии движок. Все приличные (не Unity) написаны на C++. Lua использутся для скриптов и, редко, для hud (индикаторы на экране). Часто используют свой скриптовый язык.

    Если хотите глянуть внутри, есть несколько вариантов:
    1) Приятный код: ищите на трекерах утекшие исходники gamebryo
    2) Современный и труъ вырвиглазный с\с++ код - качайте cry engine
    3) Всего понемногу: Unreal Engine.

    Мне больше всего, в свое время, понравился вариант 1

    Мультиплеер: также c++.

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