reckfellENGINE

ENetMultiplayerPeer

Транспорт многопользовательской игры поверх ENet/UDP.

На этой странице
class ENetMultiplayerPeerReckfellSharpНаследует MultiplayerPeer

Создаёт серверное или клиентское соединение ENet и подключается к MultiplayerApi. CreateClient начинает подключение; завершение определяется состоянием/сигналами API. Серверный peer имеет ID 1, клиентские ID временные и не заменяют аккаунты.

Режим передачи и каналы выбираются под тип данных. Reliable не является долговременным подтверждением результата после разрыва. ENet не добавляет автоматически авторизацию, шифрование, NAT traversal или правила серверной игры.

Практическое руководство.

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Конструкторы1

ENetMultiplayerPeerКонструктор
# ENetMultiplayerPeer
C#
public ENetMultiplayerPeer();

Свойства1

HostСвойство
# Host
C#
public ENetConnection Host { get; }

Базовый ENetConnection создается после ENetMultiplayerPeer.CreateClient и ENetMultiplayerPeer.CreateServer.

Методы7

AddMeshPeerError
# AddMeshPeer
C#
public Error AddMeshPeer(int peerId, ENetConnection host);

Добавьте новый удаленный узел с указанным peer_id, подключенный к указанному ENetMultiplayerPeer.Host. Примечание: ENetMultiplayerPeer.Host должен иметь ровно одного узла в состоянии ENetPacketPeer.PeerState.Connected.

Параметры
ИмяТипПо умолчанию
peerIdint—
hostENetConnection—
Возвращает Error
CreateClientError
# CreateClient
C#
public Error CreateClient(string address, int port, int channelCount = 0, int inBandwidth = 0, int outBandwidth = 0, int localPort = 0);

Начинает подключение к ENet-серверу. Error.Ok не означает ConnectedToServer. Согласуйте количество пользовательских каналов и обрабатывайте неудачу/разрыв.

Параметры
ИмяТипПо умолчанию
addressstring—
portint—
channelCountint0
inBandwidthint0
outBandwidthint0
localPortint0
Возвращает Error
CreateMeshError
# CreateMesh
C#
public Error CreateMesh(int uniqueId);

Инициализируйте этот MultiplayerPeer в режиме сетки. Предоставленный unique_id будет использоваться как уникальный идентификатор локальной одноранговой сети после назначения в качестве MultiplayerApi.MultiplayerPeer. В конфигурации сетки вам нужно будет вручную настроить каждый новый одноранговый узел с помощью ENetConnection перед вызовом ENetMultiplayerPeer.AddMeshPeer. Хотя этот метод более продвинут, он позволяет лучше контролировать процесс подключения (например, при работе с Проскок NAT) и лучше распределять сетевую нагрузку (которая в противном случае была бы более обременительной для сервера).

Параметры
ИмяТипПо умолчанию
uniqueIdint—
Возвращает Error
CreateServerError
# CreateServer
C#
public Error CreateServer(int port, int maxClients = 32, int maxChannels = 0, int inBandwidth = 0, int outBandwidth = 0);

Создаёт ENet-сервер на UDP-порту. Адрес привязки задайте до вызова. Порт 0 позволяет ОС выбрать свободный порт; предел клиентов не является авторизацией.

Параметры
ИмяТипПо умолчанию
portint—
maxClientsint32
maxChannelsint0
inBandwidthint0
outBandwidthint0
Возвращает Error
GetHostENetConnection
# GetHost
C#
public ENetConnection GetHost();
Возвращает ENetConnection
GetPeerENetPacketPeer
# GetPeer
C#
public ENetPacketPeer GetPeer(int id);

Возвращает ENetPacketPeer, связанный с указанным id.

Параметры
ИмяТипПо умолчанию
idint—
Возвращает ENetPacketPeer
SetBindIPvoid
# SetBindIP
C#
public void SetBindIP(string iP);

Задаёт локальный адрес привязки до создания соединения. 127.0.0.1 доступен только с той же машины; для внешнего размещения нужен отдельный выбор интерфейса/маршрута.

Параметры
ИмяТипПо умолчанию
iPstring—
Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.