TGViewer
Flutter Pulse Flutter Pulse @flutterpulse · 1.01K subscribers
Post #3135 98
👣 Как встроить Unity игру во Flutter приложение

Flutter — это король интерфейсов, навигации и бизнес-логики. Но когда дело доходит до 3D, сложной физики или AR, он пасует. Зато здесь на сцену выходит Unity.

Многие команды мечтают объединить эти два мира: красивую Flutter-оболочку и мощную Unity-сцену внутри. Раньше это было болью: ручной экспорт библиотек, бесконечная правка
settings.gradle

, написание
method channels

и отдельная
UnityPlayerActivity

. Хрупко, долго и страшно обновлять.

Но времена меняются! Появился Game Framework — современный инструмент (преемник
flutter_unity_widget

), который автоматизирует весь этот процесс. Это CLI и SDK, которые превращают Unity-сцену в обычный Flutter-виджет с типобезопасным обменом сообщениями.

Как это работает?

1️⃣ Устанавливаем CLI через Homebrew:
brew tap xraph/tap
brew install game-cli

2️⃣ Добавляем пакеты в
pubspec.yaml

:
  gameframework: ^0.0.3
  gameframework_unity: ^0.0.4

3️⃣ Инициализируем плагин в
main()

:
UnityEnginePlugin.initialize();

4️⃣ Экспортируем Unity-проект одной командой:
game export unity --platform android,ios

5️⃣ Синхронизируем с Flutter-проектом:
game sync unity --platform android,ios

Эта команда сама подключает Gradle-модуль для Android и iOS-framework. Никакого ручного редактирования конфигов!

Unity как виджет

После синхронизации ваша 3D-сцена становится обычным виджетом:
GameWidget(
  engineType: GameEngineType.unity,
  onEngineCreated: (controller) => _controller = controller,
  onMessage: _onMessage,
  config: const GameEngineConfig(
    fullscreen: false,
    runImmediately: true,
    unloadOnDispose: true,
  ),
)

Обмен сообщениями

Flutter может отправлять команды в Unity:
await _controller?.sendMessage(GameManager, SetSpeed, 2.5);
await _controller?.sendJsonMessage(GameManager, UpdateScore, {
  score: 100,
  stars: 3,
});

А Unity может отправлять данные обратно через небольшой мост на C#. В Flutter эти сообщения приходят в обработчик
onMessage

.

Интеграция перестала быть рутиной. Проект бесплатный и с открытым исходным кодом. Если вы хотите добавить 3D или AR в свое приложение — обязательно посмотрите на этот инструмент! 🚀

Полную новость читайте здесь.

FlutterPulse — канал о мире Flutter!

#flutter #dart #FlutterPulse #FlutterPulseNews #hardworkerFlutter #unity #gamedev
More from @flutterpulse
  1. Sep 29, 2026Обзор пакетов на тему Machine Learning, OCR & Computer Vision google_mlkit_commons 0.13.0…
  2. Sep 29, 2026Добавляем 3D в игру на Flame, не переписывая её 3D-графика в 2D-играх без переписывания ко…
  3. Sep 29, 2026Обновлённые пакеты за последние 24 часа liquid_glass_widgets 1.8.0 Пакет для эффекта «жидк…
  4. Sep 29, 2026photo post
  5. Sep 28, 2026Обновлённые пакеты за последние 24 часа lightweight_barcode_scanner 1.0.0 Лёгкий офлайн-ск…
  6. Sep 28, 2026photo post
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →