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

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Большая сложность - в доверии к вашему сервису. Ведь вы крутите шансами на сервере, как хотите. Где гарантия, что вы не крутанёте втихую эти шансы в сторону увеличения ваших доходов, обдурив тем самым доверчивых пользователей?

    Это не считая юридических сложностей.
    Ответ написан
    Комментировать
  • GameDev в России? Расскажите о нем?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    В России, как и везде, нет профессии "разработчик игр". Разве что ты одиночка, тогда можно так сказать, но тогда шансы выпустить игру у тебя 0.001%

    В разработке игр участвуют: .... много кто. Да кто угодно. Программисты, художники, менеджеры разных форматов (проджект менеджеры, продюсеры, всякие лиды, HRы и т.д.). Выбирай. :)
    Ответ написан
    Комментировать
  • Какие есть (все) варианты/способы/виды создания игр?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Вот все игровые движки.

    Но дело в том, что можно создать свой движок с нуля. А ещё можно взять существующий движок с открытым исходным кодом и изменить его под свои идеи. Поэтому вариантов бесконечное множество. И перечислить их все не представляется возможным.

    Учитывая ваш вопрос, вам понадобится потратить минимум 1 год на профильное обучение в области разработки игр, прежде чем браться за организацию создания вашей игры. Возможно, после обучение вы вообще откажетесь от этой затеи.
    Ответ написан
    2 комментария
  • Как сделать процедурную генерацию для 2d рогалика на löve2d?

    dollar
    @dollar Куратор тега Lua
    Делай добро и бросай его в воду.
    Двигать их во все стороны до тех пор, пока они не перестанут перекрывать друг друга.

    Чтобы не перебирать всех со всеми, я бы сделал тепловую карту в виде двумерного массива, каждая ячейка которого хранила бы число прямоугольников над ней. Но не факт, что так оптимальнее по скорости будет. Как идея.
    Ответ написан
    5 комментариев
  • Как сделать прокрутку уровня в love 2d?

    dollar
    @dollar Куратор тега Lua
    Делай добро и бросай его в воду.
    • Хранить горизонтальное смещение в отдельной переменной.
    • Каждый тик прибавлять к нему число, когда scrollLeft = true.
    • Все игровые объекты рисовать с учётом этого смещения.
    Ответ написан
    8 комментариев
  • Как управлять альфа каналом?

    dollar
    @dollar Куратор тега Lua
    Делай добро и бросай его в воду.
    love.graphics.setBlendMode("alpha")
    love.graphics.setColor(1, 1, 1, 0.5)
    Ответ написан
  • Какие сайты, выполненные в виде игры, вы знаете?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Информационные сайты (компаний) - информационные прежде всего. Поэтому их не выгодно делать в виде игры. Что если пользователь не пройдёт на второй уровень? Доступ к разделу будет закрыт? Кроме того, игра банально отвлекает от получения информации.

    Ещё на заре развития Интернета было время, когда умельцы делали сайты со всякими свистелками, выезжающими меню и т.д. Вскоре стало ясно, что это нужно лишь создателям таких сайтов для повышения ЧСВ, а к пользе и удобству для посетителей отношения не имеет.

    Хотя есть немногочисленные сайты, которые делают ставку на вау-эффект и необычную подачу информации. Однако подача - это не игра, а способ оформления. То есть там нет механик.
    Ответ написан
    Комментировать
  • В чем можно сделать прототип 3D игры?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Если в игре есть логика, то без программирования не получится.

    Когда вам говорят "без программирования", то лукавят, потому что визуальный конструктор для восприятия сложнее, а не проще, чем текстовая программа (грамотно написанная). По сути там всё то же - логические И/ИЛИ/НЕ, арифметика, функции и пр.

    Прототип 3D игры можно делать на любом 3D игровом движке, на бумаге, и даже в Blender.
    Но лучше всё же в Unity, это отличный инструмент для прототипирования.
    Ответ написан
    Комментировать
  • Почему js не обработал столкновение?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Потому что код плохо написан.
    Из-за этого высока вероятность бага.

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

    На самом деле даже без других людей это правило тоже важно. Потому что вы-сегодня и вы-завтра - это два разных человека. И чем дальше во времени, тем больше разница. Через месяц или, скажем, через полгода вы уже сами не сможете разобраться в своем коде. Что такое x? А что значит aex? Будут примерно такие вопросы. Что делает функция game, за что отвечает? Ведь по названию не понятно, а комментариев нет. Где главный цикл игры? Только после полного прочтения кода и долгих попыток разобраться, удастся понять логику структуры кода, но в таком случае проще заново написать с нуля.

    Вам нужно обратить внимание в первую очередь на:
    • то, как вы называете переменные и функции (нужно осмысленно)
    • наличие комментариев, помогающих понять код


    Начните с этой статьи в Википедии, и если захотите продолжить в том же направлении, то закончите какой-нибудь книгой по теме. Есть много таких книг, достаточно прочитать хотя бы одну. Например, "Совершенный код" (Макконнелл) или "Рефакторинг" (Фаулер).
    Ответ написан
    Комментировать
  • Какой JS фреймворк выбрать для разработки игр?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Ответ написан
    Комментировать
  • Какую программу для разработки игр 2d для Android и iOS на языке Lua выбрать?

    dollar
    @dollar Куратор тега Lua
    Делай добро и бросай его в воду.
    Unity + MoonSharp

    Кроссплатформенные игры, очевидно, делать лучше на Unity. И важно понимать, зачем вам Lua. Надеюсь, не для галочки и не затем, что вы его просто знаете. В любом случае, Lua прикручивается практически к чему угодно, в том числе к Unity в виде лучшей (имхо) реализации с названием MoonSharp.
    Ответ написан
    2 комментария
  • Возможно ли портировать десктопную игру на движке RenPy в веб? Может используя Django/Flask их альтернативы?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Если вы хотите протащить игру на все платформы, то лучше переписать её на Unity. Он поддерживает 24 платформы, включая веб (WebGL).

    Так как у вас визуальная новелла, то сложностей не должно возникнуть, там же не много механик, по сути один лишь сплошной контент. Кроме того, есть удобный Fungus как раз для этих целей, на его создание разработчиков вдохновили RenPy и Twine.

    Так что Unity + Fungus будет идеальным решением.
    Ответ написан
  • Почему медленно работает игра на c++?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Возможно, между получением времени и сбрасыванием таймера проходит дополнительное время, которое вы не учитываете?

    Попробуйте заменить это:
    float time = clock.getElapsedTime().asMicroseconds();
    clock.restart();

    На это:
    float time = clock.restart().asMicroseconds();
    Ответ написан
  • Будет ли правильно делать всю игру через UI?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Можно, но зачем?

    Например, зум предполагает наличие камеры, по всей видимости. Или если там нужно будет ходить по комнате, которая не умещается на экране, то это нужны координаты комнаты и координаты перса и камеры относительно комнаты. Почему бы не задействовать возможности, которые уже есть, в соответствии с их предназначением?

    Хотя, если это что-то очень очень простое типа визуальной новеллы, то вполне вариант, почему бы и нет.
    Ответ написан
    Комментировать
  • Какие возможности у движков GameMaker и Construct?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Слабые возможности.

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

    Кроме того, когда вы решите оптимизировать свою игру, то окажется, что это тоже сложно или невозможно.
    Ответ написан
    Комментировать
  • Почему у меня характеристика компа подходят для срелней графики в Rust,но на минималках до 10 проседает, а максимум это 50?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Потому что игра Rust очень требовательна к ресурсам.
    А в минимальных требованиях в Steam разработчики пишут, что сами хотят написать, так что могут спокойно завысить или занизить.

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

    Наиболее близкий ответ, имхо, - слабая оптимизация игры. Но это пальцем в небо.
    Ответ написан
    2 комментария
  • Game-dev путь. Что мне делать?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Не достаточно быть программистом, чтобы сделать хорошую игру.
    Нынче (в 2020 году) в одиночку игры практически никто не делает.

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

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

    С чего начать, спрашиваешь? Начни, например, с того, чтобы понять, кто такой геймдизайнер. Через месяц, когда поймешь, что это такой человек в проекте, который просто бумажки перебирает (утрирую), у тебя будет вся жизнь впереди, чтобы им стать. Это лишь один(!) из путей войти в game-dev с хорошим бэкграундом. Ну а так можно и через тестеры попробовать, и через ПМы... Ну и через программиста тоже можно, только немного странно, потому что если соскочить на другую роль, то на программирование времени не останется, и 90% опыта улетит в трубу, а если остаться программистом, то тема игр тебя будет касаться лишь косвенно. Такие дела, брат.

    Любой может отыграть 10000 часов во всевозможные игры, но далеко не каждый может сделать это с вниманием и любовью к своему делу, имея четкую цель.
    Ответ написан
    Комментировать
  • Какой принцип работы Fastconnect'а для samp?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Можно, если на игровом сервере присутствует несовершенство, которое можно эксплуатировать для быстрого подключения к серверу. Сложность в том, чтобы найти эту уязвимость и понять её. И ещё сложность в том, чтобы знать C++. Если две эти сложности преодолены, то не вижу проблемы в том, чтобы написать свой fastconnect на языке C++.
    Ответ написан
    Комментировать
  • Математика в игровой разработке?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Зависит от того, кем ты хочешь стать в рамках разработки игр.

    Например, если геймдизайнером, то в подавляющем большинстве случаев достаточно школьной математики и знания Excel. Ещё понимание теории вероятностей пригодится, но без фанатизма.

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

    А если программистом, то надеюсь, ты не собираешься в одиночку клепать свой движок, потому что для этого нужна веская причина, а не просто желание где-то самореализоваться.
    Ответ написан
  • Как лучше организовать план обучения сразу нескольким технологиям?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Ответ в форме мини-теста. :)
    Тест из одного вопроса
    Какова цель обучения?
    • Хочу разрабатывать игровые движки просто так, ради интереса.
    • Хочу разрабатывать игровые движки ради зарабатывания денег.
    • Хочу зарабатывать деньги, а игровые движки это прибыльная сфера.
    • Хочу зарабатывать деньги.
    • Хочу иметь крутую работу, чтобы меня ценили и уважали, а гейдев это круто.
    • Хочу сделать нормальный движок, потому что возможностей UE4 явно мало.
    • Хочу сделать наконец-то нормальный движок, потому в UE4 всё не правильно.
    • Хочу как-то сделать движок лучше, чем UE4 (пока не знаю, в чём именно, но лучше).
    • Хочу исправить пару недостатков UE4 ценой кроссплатформенности, она мне не нужна.
    • Хочу просто делать игры на своём движке, а не на чьём-то ещё.
    • Хочу всё знать про игры про игры со стороны разработчика, а не игрока.
    • Другое
    Ответ написан