Об этом проекте
ET — это открытый игровой фреймворк, объединяющий клиент (на базе Unity3D) и сервер, причём серверная часть разработана на C# .NET Core. Отличается высокой эффективностью разработки, производительностью, общим кодом для клиента и сервера, а также完善的 механизмом горячего обновления.
ET10 (Чжаоцзюнь) — это новое поколение AI-нативного фреймворка, специально созданного для эпохи AI-кодирования. Он сочетает распределённую MMO-архитектуру, среду выполнения Fiber Actor, облачную серверную инфраструктуру, рабочий процесс с горячей перезагрузкой, автоматизированное игровое тестирование, AI-навыки (harness), мост для Unity и архитектуру, управляемую анализатором. Это позволяет AI безопасно разрабатывать, тестировать и поддерживать сложные онлайн-игровые проекты.
Основные функции включают:
- Многопроцессорная и многопоточная архитектура Actor, поддержка создания волокон (Fiber) для использования многоядерных процессоров
- Написание синхронного кода с помощью async/await корутин, избегая ада обратных вызовов
- Нулевое потребление GC, сериализация MemoryPack, высокопроизводительный сетевой уровень
- Поддержка KCP, быстрый сетевой отклик, бесшовное переключение между TCP, UDP и WebSocket
- Защита от атак с помощью программной маршрутизации
- Разработка на C# для обеих сторон, общий код для фронтенда и бэкенда
- Мощный компилятор-анализатор, обеспечивающий соответствие кода стандартам ET
- Поддержка горячего обновления клиента через hybridclr
- Горячая перезагрузка во время выполнения, без необходимости перезапуска процесса при разработке
- Полноценное демо, включающее синхронизацию состояний и предсказательный откат для синхронизации кадров
- Механизм разработки роботов, общий клиентский логический код, снижение трудозатрат
- Механизм AI-разработки, проще в использовании, чем деревья поведения
- Фреймворк модульного тестирования, каждый тест — это полноценная игровая среда
- Элегантная структура программы, разделение данных и методов
- Опыт разработки "всё в одном", при выпуске можно отдельно публиковать сервер
- Визуализация данных клиента и сервера (макрос ENABLE_VIEW)
- Поддержка WebGL и мини-игр WeChat
ET10 включает несколько пакетов: cn.etetet.harness (AI-навыки и анализатор), cn.etetet.unitybridge (команды управления Unity), cn.etetet.test (тестовый фреймворк), cn.etetet.behaviortree (деревья поведения), cn.etetet.servicediscovery (обнаружение сервисов), cn.etetet.conditionexpr (условные выражения), cn.etetet.spell (система навыков и баффов), cn.etetet.aspire (интеграция с .NET Aspire).
ET9 (Сиши) перешёл на модель пакетов, поддерживая настраиваемую интеграцию пакетов; ET8 (Дяочань) ввёл многопоточную многопроцессорную архитектуру и концепцию волокон; ET7 (Ифэй) объединил клиент и сервер, поддерживая программную маршрутизацию; ET6 (Фэнцзе превратилась в Ифэй) реализовал полное горячее обновление клиентской логики.
Фреймворк ET успешно применялся в нескольких коммерческих MMO-проектах, таких как «Тысячелетняя романтика» (6000 одновременных игроков на одном сервере), «Выбор клятвы богов», «Опасная зона» и других, что подтверждает его способность к разработке крупных игр.
Открытая версия использует лицензию ET License, предназначенную только для обучения, без права вторичной модификации открытого кода. Для коммерческого использования требуется покупка лицензии (цена 4999 юаней).
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.