Всем привет! Меня зовут Григорий Дядиченко, я технический продюсер.
Сегодня я хотел бы поговорить о протоколе HTTP, о серверах и о простой реализации Http-сервера, встроенного в Unity. Если вам это интересно, добро пожаловать под кат!
Что ж, начнем с задачи, на примере которой мы все разберем.
В этой статье мы разберем только часть Unity. Предположим, вы делаете какой-то интерактивный стенд или на какой-то крупной конференции демонстрируете свою игру издателю.
Если игра на ПК, то можно победить, управляя ею с помощью геймпада и подключая его или используя джойстик.
Чтобы человеку было удобно играть, и он не закрывал экран ноутбука, играя в свою лучшую игру.
Но есть интересная альтернатива.
Сделайте геймпад из телефона пользователя! В этом случае, если у вас есть опыт в веб-разработке, вы можете удобно собрать там контакты.
Все, что вам нужно, это ноутбук, Wi-Fi роутер, геймпад в виде веб-приложения и http-сервер, подключенный к unity. Важный: в условиях реальной выставки, будь то с блютуз-геймпадом или с подобным решением, нужно помнить, что устройств и шума может быть много.
Поэтому он может работать нестабильно, но обычно это происходит, когда таких роутеров много.
В общем, если у вас на выставке есть свой Wi-Fi, то к нему проще подключиться, так как это локальная сеть, запросов очень мало.
И во-первых, это не создаст особой нагрузки на сеть, во-вторых, не создаст радиопомех, и в-третьих, вполне возможно, что к ней уже будет подключен потенциальный игрок и ему не нужно будет давать ему логин и пароль.
Итак, с «почему» мы определились, хотя случай не единственный, теперь поговорим о «что».
HTTP-протокол
В современном мире любой разработчик должен знать этот протокол, в идеале имея на его основе множество знаний.
REST API, GraphQL, GRPC и так далее.
В общем, не хочу повторяться и тратить время на описание самого протокола; проще говоря, все сделано отлично В этой статье .
Но было важно упомянуть его.
HTTP-сервер на Unity
Если принять во внимание простейшую и низкоуровневую реализацию HTTP-сервера в Unity, то сразу можно вспомнить класс HttpListener .И реализовывать все с его помощью.
Итак, для начала все начинается с подключения и определения порт .
Во всяком случае, в любом браузере любой существующий сайт по умолчанию стучит в 80 порт .
То есть, если сервер развернут на 80 порту, а IP вашего ПК (его можно посмотреть через ipconfg в cmd) 192.168.1.24, например.
Тогда ссылка в браузере будет выглядеть так http://192.168.1.24 , если развернуть сервер, скажем, на порту 10021, то он уже будет выглядеть так http://192.168.1.24:10021 .
Чтобы начать «слушать» порт », создайте такой Моноповедение Сорт: Пример
Теги: #Разработка игр #брандмауэр #C++ #unity #.public class HttpServer : MonoBehaviour {
NET #http #cors #http-server #unity3d #unity #http
-
Музыкальный И Видеоархив Billboard
19 Oct, 24 -
Мид, Джордж Герберт
19 Oct, 24 -
Обход Графа В Ширину (Bfs) И В Глубину (Dfs)
19 Oct, 24 -
Russian Ai Cup 2017 — История 11 Мест
19 Oct, 24