Строительный блок счетов игроков
Используйте строительный блок Player Accounts Unity для добавления функции входа в проект, например, для отслеживания и сохранения прогресса пользователей в приложении. Дополнительные сведения об PLayer Accounts см. в документации Счета игроков.
Этот Building Block включает тестовую сцену, демонстрирующую процесс аутентификации игроков. Вы можете использовать скрипты в этом Building Block для аутентификации игроков в вашем собственном проекте. Дополнительные сведения см. в Добавить Building Block Пользователи в другую сцену.
Блок создания учетных записей игроков использует следующие Unity Gaming Services (UGS):
| Unity Игры ServiceTopic | Описание |
|---|---|
| Аутентификация | Назначает каждому игроку уникальный идентификатор. Чтобы использовать эти схемы аутентификации, (настройте поставщика удостоверений)[set-up-an-identity-provider]. Дополнительные сведения см. в разделе Аутентификация. |
| Сохранить облако | Хранит данные игрока и игровые данные для ваших игр и предоставляет классы доступа для управления чтением и записью данных игрока и защищённых игровых данных. Чтобы узнать больше, см. Сохранить облако. |
| Облачный код | Обеспечивает серверные полномочия, позволяющие писать в защищённые или приватные классы доступа. С помощью Cloud Code можно записывать игровые данные или защищённые данные игрока, а также читать приватные игровые данные. Чтобы узнать больше, см. Проверка подлинности облачного кода. |
Предварительные условия
Чтобы настроить проект для блока создания учетных записей игроков, следуйте инструкциям в:
- Следуйте инструкциям в разделе LiveOps Предварительные требования к строительным блокам.
- Установите Unity Строительный блок — Учетная запись игрока из Unity Asset Store.
- Следуйте инструкциям в Начало работы с Unity Учетными записями игроков.
Первоначальная настройка
Чтобы использовать все возможности тестовой сцены Учетные записи игроков, выполните шаги, описанные в этом разделе.
Настройка поставщика удостоверений
В тестовой сцене строительного блока «Учетные записи игроков» демонстрируются несколько методов входа в систему. Чтобы проект распознавал эти методы аутентификации, выполните следующие действия:
- Настройка поставщика имени пользователя и пароля.
- Настройка Unity Провайдера Учетных записей Игрока ID.
Развертывание модуля Cloud Code
Тестовая сцена использует модуль Cloud Code BlocksGameModule.ccmr и модуль Cloud Code для обновления глобального счета, который является результатом суммирования значений всех аутентифицированных игроков. Чтобы использовать этот модуль Cloud Code, разверните его:
- Следуйте инструкциям в разделе LiveOps Предварительные условия строительных блоков, чтобы настроить развертывание в проекте.
- Перейдите в Услуги > Развертывание.
- В окне Развертывание в разделе Blocks.CloudCode установите флажок BlocksGameModule.ccmr.
- Выбрать Развернуть выбранный.
Используйте тестовую сцену "Строительный блок учетных записей игроков"
В тестовой сцене строительного блока учетных записей игроков показаны следующие шаги в рабочем процессе учетной записи игроков:
- Вход: Использует Unity Расширяемый язык разметки (UXML) чтобы показать интерфейс входа, который аутентифицирует игроков. Аутентифицированные игроки могут обновлять и просматривать глобальный счёт. Подробнее см. Интерфейс тестовой сцены Player Accounts.
- Визуализация данных: Отображает данные игрока, которые декларируют метки в ассете
PlayerAccountScene.uxml. - Облачная интеграция: Отображает общий глобальный балл, которым управляет модуль
BlocksGameModule.ccmrCloud Code.
Чтобы открыть тестовую сцену строительного блока учетных записей игроков:
- В окне Project перейдите в Активы> Блоки > PlayerAccount > TestScenes.
- Щелкните правой кнопкой мыши объект
PlayerAccountSceneи выберите Открыть.
Чтобы использовать тестовую сцену строительного блока учетных записей игроков:
- Вход в режим воспроизведения.
- В игровом режиме выберите один из следующих вариантов входа в систему:
- Вход анонимно: Создает анонимные данные игрока для аутентификации пользователя. Более подробную информацию см. в Анонимная аутентификация.
- Войти с Unity: Использование Unity Чтобы узнать больше об этом методе аутентификации, см. Внешняя аутентификация. Чтобы использовать этот метод входа в систему, создать Unity Счета игроков ID провайдер.
- Войти с паролем: Принимает настраиваемое имя пользователя и пароль, соответствующие потребности. Чтобы использовать этот метод входа в систему, настройка поставщика имени пользователя и пароля.
- В новой сцене, которая загружается, выберите кнопку Increment Global Score, чтобы увеличить глобальный балл на один. Глобальный балл является результатом суммирования значений всех аутентифицированных игроков.
Примечание: Служба аутентификации хранит личность игрока в облаке.
Добавить строительный блок "Учетные записи игроков" в другую сцену
Чтобы добавить аутентификацию игроков из строительного блока Учетные записи игроков в новую сцену, выполните следующие действия: 1. Разверните модуль Cloud Code. 2. Перейдите в Активы > Блоки > Достижения > Префабы. 3. Выберите AchievementsPrefab, чтобы открыть его.
Любые изменения, которые вы делаете в Achievements.ach, влияют на AchievementsPrefab, когда вы вступаете в режим воспроизведения.
Ассеты пользовательского интерфейса Player Accounts можно добавить и в другую сцену. Подробнее см. Настройка пользовательского интерфейса Player Accounts.
Примечание: Чтобы создать новый файл конфигурации достижений, перейдите к Создать > Блоки > Конфигурация достижений.
Настройка стартовой сцены учетных записей игроков
Начальная сцена учетных записей игроков содержит следующие скрипты, которые вы можете изменить, чтобы изменить то, как аутентификация игроков работает в сцене:
- Скрипты интерфейса Player Accounts.
- Скрипты данных игроков в Учетных записях игроков.
Настройка пользовательского интерфейса Player Accounts
Строительный блок Player Accounts содержит ассеты Unity Extensible Markup Language (UXML) для отображения интерфейса тестовой сцены. О скриптах UXML см. Введение в UXML.
Чтобы настроить пользовательский интерфейс Player Accounts:
- Перейти к Окно > UI Toolkit > UI строитель.
- На панели инструментов Видовой проем выберите Blocks Runtime Theme.
- В панели Библиотека перейдите в Блоки > PlayerAccount.
- Выберите PlayerDataLabel и перетащите его на панель Hierarchy.
- Измените открытые свойства в панели Атрибуты.
Чтобы узнать больше о конструкторе UI, см. UI Builder.
Ассеты интерфейса Player Accounts
Блок создания учетных записей игроков содержит следующие ассеты Unity Extensible Markup Language (UXML), которые можно изменить или добавить в другую сцену.
| Название актива | Описание |
|---|---|
PlayerSignIn |
Отображает параметры аутентификации, которые вы можете использовать для анонимного входа, через веб-портал учетной записи игрока Unity или с помощью имени пользователя и пароля. Дополнительные сведения см. в разделе Аутентификация независимо от платформы. |
PlayerIdLabel |
Многоразовая метка, которая отображает и отслеживает проигрыватель ID с интеграцией буфера обмена. |
PlayerNameLabel |
Многоразовая метка, связанная с данными, которая отслеживает имя игрока. Вы можете изменить имя в поле UXML в тестовой сцене. |
PlayerDataLabel |
Многоразовая метка, загружающая данные Общедоступного, По умолчанию или Защищенного плеера в соответствии с назначенным атрибутом data-key. |
PlayerEditableDataLabel |
Специализированный PlayerDataLabel, который позволяет редактировать данные игрока (кроме Защищенных). |
PlayerLoadDataControl |
Элемент управления отладкой, который показывает все доступные ключи класса доступа по умолчанию и по требованию загружает значение одного из них для плеера. |
Скрипты Пользователей UXML используют следующие классы:
AuthenticationServiceиз пакета Аутентификация.ServiceObserver&Tиз пакета Services Core.
Скрипты данных игрока
Блок создания учетных записей игроков содержит скрипты, которые управляют данными игроков, такими как информация о входе в систему, и игровыми данными, такими как результаты. ServiceObserver<T> базовый класс из пакета Services Core, чтобы управлять временем жизни служб без ручного отслеживания.
Найдите следующие ассеты скрипта в Project окно: Активы > Блоки > PlayerAccount > Сценарии > Среда выполнения.
| Название актива | Описание |
|---|---|
AuthenticationObserver |
Обрабатывает события входа и состояния аутентификации и позволяет проекту регистрировать обратные вызовы. |
CloudDataContainer |
Отображает информацию, которую AuthenticationObserver хранит в тестовой сцене. Этот контейнер также управляет асинхронной загрузкой и привязкой данных проигрывателя, которые можно инстанционировать и получить доступ к ним в сценарии. |
GlobalScoreClient |
Файл модуля Cloud Code, который использует механизм блокировки записи для управления общими образцами данных глобального счета на уровне игры. |
Устранение неполадок
Если кнопка Увеличить Глобальный балл в тестовой сцене Учетные записи игроков не обновляет значение Глобального балла, следуйте инструкциям для развертывания модуля Cloud Code.
Дополнительные сведения об ограничениях чтения и записи для Cloud Save Data см. в документации Services API.
Дополнительные ресурсы
- Настройка имени пользователя и пароля
- Развертывание