За последние 24 часа нас посетили 22865 программистов и 1210 роботов. Сейчас ищут 667 программистов ...

Игра на ajax

Тема в разделе "JavaScript и AJAX", создана пользователем Dereck, 7 май 2019.

  1. Dereck

    Dereck Новичок

    С нами с:
    9 апр 2018
    Сообщения:
    19
    Симпатии:
    0
    Я подумываю сделать игру стрелялку через канвас что бы она была онлайн с другими игроками буду использовать ajax но вот сейчас задумываюсь вот о чем.
    В игре надо делать примерно 60 фпс а значит и запросов в базу должно быть 60 в секунду.
    Но по моему если делать частые запросы то они начинают друг друга останавливать.
    Если кто то уже делал игры подскажите как их делать? или дайте ссылку где можно все про это прочитать. игра будет активная и быстрая. так что и запросы в базу должны быстро идти.
    Как то же можно сделать их без флеш плеера.
     
  2. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.553
    Симпатии:
    631
    Есть такая
    --- Добавлено ---
    Это к базе данных
     
  3. Dereck

    Dereck Новичок

    С нами с:
    9 апр 2018
    Сообщения:
    19
    Симпатии:
    0
    хм)) я понял
    я просто не знаю как оно делается )) и подумал если игры с 60 фпс отправляют 60 запросов к базе в секунду то это не работает на скоко я знаю) просто может кто то делал что то подобное ) вот я и пытаюсь узнать как это все делается. что бы кординаты человечков не скакали от того что будет к примеру 1 запрос в секунду а были более плавными.
    --- Добавлено ---
    может есть какая нибудь книжечка с примерами как создавать такие игры)
     
  4. Vanchot

    Vanchot Активный пользователь

    С нами с:
    23 мар 2019
    Сообщения:
    104
    Симпатии:
    19
    Адрес:
    Ахерон (LV-426)
    Для быстрого отклика нужно устанавливать соединение на сокетах. А на серверной машие запросы должна обрабатывать программа-сервер, которая всегда работает и ожидает данные. Программа-сервер может быть одна, а может и нет. Но какая-то часть должна отвечать за создание соединений и приём/передачу данных (например, Node.js или программа на С++), другая часть - за расчеты в виртуальном мире (на С++, Java, C#). Обе части, если это не одна программа, должны иметь между собой прямую связь (скорей всего через SharedMemory, может быть, pipe). Только так можно добиться более-менее достаточной скорости передачи данных и обработки.
    Варианты с PHP и базами данных - это для игр-стратегий.
    Но самое сложное будет - организовать бесперебойную передачу данных, т.к. сеть не стабильна.
     
  5. Vanchot

    Vanchot Активный пользователь

    С нами с:
    23 мар 2019
    Сообщения:
    104
    Симпатии:
    19
    Адрес:
    Ахерон (LV-426)
    Для 60 fps нужно использовать UDP (датаграммный сокет), который браузеры не поддерживают.