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

OSCHINA-MIRROR/SaiTingHu-HTFramework

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

Unity HTFramework

HTFramework — это быстрый фреймворк на основе Unity, который объединяет в себе модульность требований, возможность повторного использования кода, практичность и удобство, высокую степень интеграции функций, унифицированные стандарты кодирования и расширяемость.

Среда

  • Unity версия: 2022.3.34.
  • .NET API версия: .NET Framework.

Стандарты кодирования

Кодирование и проверка кода следуют этому стандарту HTCODINGSTANDARD.

Описание модулей

  • AspectTrack — модуль, основанный на идее аспектно-ориентированного программирования (AOP), который представляет собой ориентированный на аспекты программный код для отслеживания методов. Он может отслеживать каждый вызов метода, блокировать метод перед вызовом или изменять его входные параметры и возвращаемые значения! Может использоваться для регистрации вызовов, мониторинга работы системы и других нужд.
  • Audio — менеджер всех аудиофайлов в проекте, предоставляющий единый интерфейс для воспроизведения, приостановки и остановки различных аудиоресурсов.
  • Controller — инкапсулирует управление главным героем, управление основной камерой и т. д., что упрощает большое количество повторяющегося кода.
  • Coroutiner — диспетчер сопрограмм. Сопрограммы, запущенные через диспетчер сопрограмм, будут находиться под его контролем. Через CoroutinerTracker можно просматривать состояние выполнения сопрограммы, время выполнения и перезапускать или завершать любую сопрограмму.
  • CustomModule — фреймворк включает в себя множество часто используемых модулей. Если вы хотите добавить свой собственный модуль, вы можете сделать это через CustomModule. Пользовательский модуль имеет тот же жизненный цикл, что и встроенный модуль.
  • DataSet — пользовательский набор данных. Любой набор данных, требующий хранения, может быть определён как пользовательский набор данных, включая предварительно настроенные файлы конфигурации, динамические данные, созданные во время выполнения, и различные данные, полученные из бэкэнда.
  • Debug — модуль отладки с встроенным отладчиком времени выполнения Debugger. Можно контролировать некоторые общие данные и среду выполнения программного обеспечения или выполнять некоторые расширенные операции, такие как поиск всех игровых объектов в сцене (аналогично функции Hierarchy в редакторе) и поиск всех компонентов игрового объекта (аналогично функции Inspector в редакторе).
  • ECS — система «сущность-компонент». Эта ECS не является ECS от Unity и не обязательно приведёт к повышению производительности. Она основана на концепции ECS и построена поверх существующего компонента Unity. Разработка с использованием модели ECS может помочь избежать сложных иерархий наследования в будущем, повысить скорость и качество разработки, а также стабильность проекта.
  • Entity — менеджер сущностей. Все объекты в сцене, кроме пользовательского интерфейса, должны быть абстрагированы как сущности. В сочетании с FSM они могут стать хорошим сочетанием.
  • Event — позволяет определить все операции как конкретные глобальные события и управлять бизнес-логикой, подписываясь на события и генерируя их.
  • Exception — обработчик исключений. Когда в любом месте программы возникает неизвестное или необработанное исключение, оно будет перехвачено здесь, записано в файл журнала и поддерживается на платформе ПК, чтобы открыть указанную программу или отправить журнал по указанному адресу электронной почты при возникновении исключения.
  • FSM — имитирует бизнес-логику, которую можно абстрагировать как конечный автомат, например, анимацию персонажей, искусственный интеллект монстров и любые независимые логические сущности.
  • Hotfix — облегчённая структура горячего обновления, реализованная с помощью C# рефлексии. Разработку очень удобно, и после извлечения исходного кода фреймворка из GitHub можно создать среду горячего обновления одним щелчком мыши. Затем можно использовать C# для обычной разработки. В настоящее время он поддерживает динамическое исправление любых методов во внешней библиотеке в среде горячего обновления без необходимости повторной публикации проекта.
  • Input — определяет любой ввод как виртуальный ввод, который затем вызывается модулем ввода для унифицированного вызова. Это оптимальное решение для кроссплатформенного ввода.
  • Instruction — система команд, которая может компилировать и выполнять произвольный код команды во время выполнения для достижения максимальной скорости исправления программы.
  • Main — основной модуль фреймворка, обеспечивающий доступ к другим модулям и поддерживающий быструю настройку сценариев, указание глобальных основных классов данных, авторизацию проектов и настройку глобальных параметров.
  • Network — клиентский сетевой модуль, использующий один канал связи для каждого канала. Каждый канал поддерживает протоколы TCP/UDP и может определять формат сообщений для каждого канала, что может удовлетворить некоторые распространённые коммуникационные среды.
  • ObjectPool — пул объектов, специально предназначенный для типа GameObject. Может повторно использовать любой объект GameObject для уменьшения накладных расходов системы при частом создании и удалении объектов.
  • Procedure — поток является основным модулем фреймворка и самым основным модулем. Он пронизывает весь фреймворк от начала до конца. Когда жизненный цикл фреймворка начинается и заканчивается, он завершается в потоке. Кроме того, это усиленная версия конечного автомата. Когда потоки переключаются между несколькими потоками до окончательного потока, это означает завершение всей системы.
  • ReferencePool — пул объектов, который можно использовать для любого ссылочного типа (кроме GameObject). Может повторно использовать любые ссылочные типы объектов для уменьшения накладных расходов системы при частом создании и удалении объектов.
  • Resource — менеджер загрузки ресурсов, в основном используемый для асинхронной загрузки динамических ресурсов. Можно выполнять пользовательские операции во время загрузки или после завершения загрузки. Сейчас он в основном поддерживает режимы загрузки ресурсов, пакеты активов и адресаты. Например, модуль пользовательского интерфейса автоматически вызовет диспетчер ресурсов для загрузки объектов пользовательского интерфейса.
  • StepMaster — редактор шагов. На самом деле StepEditor — это просто встроенный инструмент фреймворка. Его первоначальное назначение — решать ряд громоздких линейных задач. Чтобы реализовать визуализацию и снизить сложность будущих изменений, конечно, его также можно использовать в качестве контроллера процесса.
  • TaskMaster — редактор задач. Можно настраивать точки задач, устанавливать условия достижения задач и объединять несколько точек задач в содержание задачи. Используя серию задач содержания, можно завершить дизайн роли.

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

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

Введение

Unity HTFramework, a rapid development framework of client based on Unity. Развернуть Свернуть
MIT
Отмена

Обновления

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

Участники

все

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

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