Version: 2017.3
Сведения о State Synchronization
Загрузка уровня по сети

Network Instantiate

(For new projects, you should use the new networking system introduced in 5.1. This information is for legacy projects using the old networking system.)

Функция Network.Instantiate обеспечивает простой способ создания экземпляра префаба на всех клиентах, по эффекту схожий с Object.Instantiate для одного клиента. Создающий клиент будет контролировать объект (т.е. класс ввода Input будет доступен из скриптов, запущенных на экземпляре клиента), но изменения будут отображаться по всей сети.

Список аргументов для Network.Instantiate():

static function Instantiate (prefab : Object, position : Vector3, rotation : Quaternion, group : int) : Object


Как и с Object.Instantiate, первые три параметра описывают создающийся префаб с его желаемой позицией position и вращением rotation. Параметр group (группа) позволяет определять подгруппы объектов, чтобы контролировать фильтрацию сообщений и может быть выставлен равным нулю, если фильтрации не требуется (см.ниже Communication Groups).

Технические детали

Если расписать подробно, что в действительности происходит, то выяснится, что создание объектов по сети строится вокруг вызова RPC, содержащего идентификатор для префаба вместе с позицией и другими деталями. Этот вызов RPC всегда помещается в буфер, подобно иным вызовам RPC, так что созданные объекты появятся и у новых клиентов, когда они подключатся. См. страницу RPC для большей информации о буферизации.

Communication Groups

Communication groups (Коммуникационные группы) могут быть использованы для выбора клиентов, которые будут получать индивидуальные сообщения. Например, два подключенных игрока могут находиться в различных областях игрового мира и даже не иметь возможности встретиться. Следовательно, нет никакого смысла в передаче состояния игры между клиентами этих двух игроков, однако вам всё ещё может быть необходима возможность создания чата между ними. В этом случае, сетевое создание новых объектов не требуется передавать для объектов, определяющих ход игры, но не для объектов, осуществляющих функцию чата, поэтому их следует поместить в различные группы.

Сведения о State Synchronization
Загрузка уровня по сети
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961