Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
WebRTCMultiplayerPeer
Успадковує: MultiplayerPeer < PacketPeer < RefCounted < Object
Простий інтерфейс для створення односторонньої сітки, що складається з WebRTCPeerConnection, який сумісний з MultiplayerAPI.
Опис
Цей клас побудує повну сіточку WebRTCPeerConnection (одне підключення для кожного однолітка), яке можна використовувати як MultiplayerAPI.multiplayer_peer.
Ви можете додати кожен WebRTCPeerConnection через add_peer() або видалити їх через видалення_peer(). Пірс необхідно додати в WebRTCPeerConnection. STATE_NEW стан для створення відповідних каналів. Цей клас не створить пропозиції, не встановлюючи описи, він буде тільки обпилювати їх, і повідомляти з'єднання і відключення.
При створенні однолітків через create_server() або method[code створення_server] MultiplayerPeer.is_server_relay_supported() повернеться true, що дозволяє проводити реле міжряддя та пакету при підтримці впровадження MultiplayerAPI.
Примітка: При експорті на Андроїд, переконайтеся, що ввімкнути INTERNET дозвіл на експорт Android перед експортуванням проекту або за допомогою однієї кнопки розгортання. Інакше, мережевий зв'язок будь-якого роду буде заблокований Android.
Методи
add_peer(peer: WebRTCPeerConnection, peer_id: int, unreliable_lifetime: int = 1) |
|
create_client(peer_id: int, channels_config: Array = []) |
|
create_mesh(peer_id: int, channels_config: Array = []) |
|
create_server(channels_config: Array = []) |
|
void |
remove_peer(peer_id: int) |
Описи методів
Error add_peer(peer: WebRTCPeerConnection, peer_id: int, unreliable_lifetime: int = 1) 🔗
Додайте нового піра до мережі з заданим параметром peer_id. WebRTCPeerConnection має бути у стані WebRTCPeerConnection.STATE_NEW.
Буде створено три канали для надійного, ненадійного та впорядкованого транспортування. Значення unrelable_lifetime буде передано до опції "maxPacketLifetime" під час створення ненадійних та впорядкованих каналів (див. WebRTCPeerConnection.create_data_channel()).
Error create_client(peer_id: int, channels_config: Array = []) 🔗
Ініціалізуйте багатокористувацький вузол як клієнт із заданим параметром peer_id (повинен бути між 2 та 2147483647). У цьому режимі слід викликати метод add_peer() лише один раз та з параметром peer_id з параметра 1. Цей режим дозволяє методу MultiplayerPeer.is_server_relay_supported(), що дозволяє верхньому рівню MultiplayerAPI виконувати обмін вузлами та ретрансляцію пакетів.
За потреби можна вказати масив channels_config з параметром TransferMode, який буде використовуватися для створення додаткових каналів (WebRTC підтримує лише один режим передачі на канал).
Error create_mesh(peer_id: int, channels_config: Array = []) 🔗
Ініціалізація багатокористувацьких однолітків як сітчаста (тобто всі однолітки з'єднуються один з одним) з наведених peer_id (міститься між 1 і 2147483647).
Error create_server(channels_config: Array = []) 🔗
Іноземець мультиплеєра як сервер (з унікальним ідентифікатором 1). Цей режим дозволяє MultiplayerPeer.is_server_relay_supported(), дозволяючи верхній MultiplayerAPI шар, щоб виконати обмін і перекриття пакетів.
Ви можете додатково вказати каналів_config масив TransferMode який буде використовуватися для створення додаткових каналів (WebRTC тільки підтримує один режим передачі на канал).
Dictionary get_peer(peer_id: int) 🔗
Повернутися до словникової репрезентації однолітків з даними du_id з трьома ключами. "connection", що містить WebRTCPeerConnection на цей одноліток, "канали" масив трьох WebRTCDataChannel, і " підключено", що представляє, якщо з'єднання з'єднання підключено (всі три канали відкриті).
Dictionary get_peers() 🔗
Повертає словник, який ключі є однолітковими кришками та значеннями, що є репрезентацією, як у get_peer().
Повертаємо true, якщо надана аналог_id знаходиться на карті однолітків (не може бути підключений, хоча).
void remove_peer(peer_id: int) 🔗
Видаліть дует з наданою peer_id з сітки. Якщо був підключений одноліток, і для цього був представлений MultiplayerPeer.peer_connected, то MultiplayerPeer.peer_disconnected.