1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/Foldcc-Ice-creamView

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Введение

IceCreamView — что это? IceCreamView (далее ICView) — это набор инструментов для быстрой разработки пользовательского интерфейса (UI) для небольших игр на основе Unity3D.

Одновременно ICView представляет собой набор компонентов для разработки UI, организованных по принципу «контейнер + компонент + менеджер + таблица конфигурации». Цель фреймворка — позволить разработчикам сосредоточиться на игровой логике, а не на логике пользовательского интерфейса, и сократить время, затрачиваемое на разработку UI.

Код ICView обладает высокой степенью повторного использования и легко адаптируется к различным условиям. В некоторых случаях при создании стандартных страниц пользовательского интерфейса можно обойтись без написания дополнительного кода.

Структура фреймворка

Общая структура

IceCreamView 框架 структуры

ICView состоит из менеджера (Manager), таблицы конфигурации (Config), представления и модуля представления (View/ViewModule). Процесс работы с фреймворком включает в себя создание файла конфигурации, передачу контроллера и узла UIroot в контроллер во время инициализации игры для инициализации контроллера пользовательского интерфейса. Затем контроллер пользовательского интерфейса продолжает управление пользовательским интерфейсом.

О контроллере пользовательского интерфейса

В ICView все страницы управляются контроллером (GameViewManager). Контроллер предоставляет практически все методы, которые могут потребоваться при разработке небольших игр, и позволяет создавать несколько контроллеров для управления несколькими наборами Canvas пользовательского интерфейса. Они могут использоваться независимо друг от друга, например, в AR\VR-разработке.

О модулях и страницах

Каждый элемент пользовательского интерфейса в ICView можно рассматривать как модуль, такой как функция закрытия или перехода. Эти модули соединяются через соединитель (GameViewModuleConnector) и образуют полную страницу. Все модули имеют общий жизненный цикл, который определяет порядок выполнения модулей.

Вот жизненный цикл страницы/модуля:

Жизненный цикл IceCreamView

И страница (GameViewAbstract), и модуль (GameViewAbstractModule) имеют описанный выше жизненный цикл. Кроме того, модули предоставляют базовые функции модуля, но также позволяют настраивать модули. Для этого достаточно наследовать GameViewAbstractModule. Также разработчики могут напрямую наследовать GameViewAbstract для создания собственных страниц. Однако рекомендуется использовать компоненты для добавления желаемых функций и комбинировать их с другими компонентами для повышения их универсальности и гибкости. При использовании просто перетащите необходимые функциональные компоненты на предварительно созданные элементы пользовательского интерфейса.

О таблице конфигурации

Созданные элементы пользовательского интерфейса должны быть зарегистрированы в таблице конфигурации в формате .Asset. Не нужно вручную перетаскивать элементы пользовательского интерфейса на таблицу конфигурации. Можно выбрать все элементы пользовательского интерфейса и использовать функцию автоматического создания таблицы конфигурации в меню IceCreamView, чтобы автоматически добавить выбранные элементы в новый файл таблицы конфигурации. Таблица конфигурации сохраняется в текущем выбранном каталоге (обратите внимание: если в текущем каталоге уже есть таблица конфигурации с таким же именем, она будет перезаписана).

Ниже показано, как создать таблицу конфигурации:

Демонстрация автоматического создания таблицы конфигурации

А вот панель таблицы конфигурации:

Панель таблицы конфигурации

Использование

Пример: создание страницы справки

  • Создайте страницу пользовательского интерфейса.

HelpPanel

  • Добавьте функциональные модули. Поскольку странице справки нужны только функции закрытия и перехода, я добавляю только два базовых модуля. Нет необходимости писать новые модули, как показано ниже.

HelpPanelModels

Таким образом, простая страница справки готова. Используя этот метод, создайте ещё две страницы GamePanel и MainPanel. Окончательный эффект показан ниже:

IceCreamSimple.gif

Кроме того, вы можете использовать другой плагин пользовательского интерфейса для анимации (EasyAnimation), чтобы получить более красивый эффект. Фактический эффект выглядит следующим образом:

IceCreamSimple2

Несколько примеров часто используемых операций в коде:

  • Открыть определённую страницу:
viewManager.OpenView("GameHome");
  • Закрыть указанную страницу:
viewManager.CloseView("GameHome");
  • Получить страницу в игре:
viewManager.GetView<GameViewAbstract>("GameHome");

Планы на будущее

  • Интеграция модели представления MVVM и добавление слоя данных, предоставляя автоматическое создание реактивных свойств, устраняя необходимость обновления данных пользовательского интерфейса в модуле.
  • Более совершенный механизм динамической загрузки/выгрузки ресурсов.

Адрес

IceCreamView: описанная здесь структура пользовательского интерфейса [gitee]

EasyAnimation: быстрый инструмент для пользовательских анимаций.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/Foldcc-Ice-creamView.git
git@api.gitlife.ru:oschina-mirror/Foldcc-Ice-creamView.git
oschina-mirror
Foldcc-Ice-creamView
Foldcc-Ice-creamView
master