<?xml version="1.0" encoding="utf-8" ?><rss version="2.0" xmlns:tt="http://teletype.in/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>// TODO: blog name</title><generator>teletype.in</generator><description><![CDATA[Технологии, программирование и всё такое.]]></description><image><url>https://img2.teletype.in/files/93/7f/937f046c-f322-4495-b1af-a4d292ee8530.png</url><title>// TODO: blog name</title><link>https://teletype.in/@todo_blog</link></image><link>https://teletype.in/@todo_blog?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=todo_blog</link><atom:link rel="self" type="application/rss+xml" href="https://teletype.in/rss/todo_blog?offset=0"></atom:link><atom:link rel="next" type="application/rss+xml" href="https://teletype.in/rss/todo_blog?offset=10"></atom:link><atom:link rel="search" type="application/opensearchdescription+xml" title="Teletype" href="https://teletype.in/opensearch.xml"></atom:link><pubDate>Sat, 04 Apr 2026 07:05:22 GMT</pubDate><lastBuildDate>Sat, 04 Apr 2026 07:05:22 GMT</lastBuildDate><item><guid isPermaLink="true">https://teletype.in/@todo_blog/flutter-has-no-gaems</guid><link>https://teletype.in/@todo_blog/flutter-has-no-gaems?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=todo_blog</link><comments>https://teletype.in/@todo_blog/flutter-has-no-gaems?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=todo_blog#comments</comments><dc:creator>todo_blog</dc:creator><title>Flutter: Игорь тонет или нет?</title><pubDate>Mon, 07 Mar 2022 16:27:29 GMT</pubDate><media:content medium="image" url="https://img4.teletype.in/files/b8/20/b820e9d5-4706-494e-9304-9794235057f0.png"></media:content><category>программирование</category><description><![CDATA[<img src="https://img2.teletype.in/files/92/2f/922fc987-1c91-4181-a47b-611ccf904a88.png"></img>Flutter – замечательное кросс-платформенное решение для разработки приложений различной сложности. Однако, в контексте игр, по словам самих разработчиков, оно уступает таким фреймворкам как Unity и Unreal Engine (особенно если речь идёт о сложных 3д-проектах). ]]></description><content:encoded><![CDATA[
  <figure id="DGiv" class="m_column">
    <img src="https://img2.teletype.in/files/92/2f/922fc987-1c91-4181-a47b-611ccf904a88.png" width="1280" />
  </figure>
  <p id="7xsW">Flutter – замечательное кросс-платформенное решение для разработки приложений различной сложности. Однако, в контексте игр, по словам самих разработчиков, оно уступает таким фреймворкам как Unity и Unreal Engine (особенно если речь идёт о сложных 3д-проектах). </p>
  <blockquote id="AjBT">While you can create simple 2D games using Flutter, for complex 2D and 3D games, you’d probably prefer to base your app on a cross-platform game engine technology like Unity or Unreal. They have more domain-specific features like physics, sprite and asset management, game state management, multiplayer support and so on. <br /><br />– <a href="https://www.raywenderlich.com/books/flutter-apprentice/v2.0/chapters/1-getting-started#toc-chapter-007-anchor-001" target="_blank">https://www.raywenderlich.com/books/flutter-apprentice/v2.0/chapters/1-getting-started#toc-chapter-007-anchor-001</a></blockquote>
  <figure id="LNL6" class="m_retina">
    <img src="https://img2.teletype.in/files/93/f6/93f6735e-6878-4e4a-9b58-6ba5b309c2d6.jpeg" width="640" />
    <figcaption>Персонаж Дрейк из игры Uncharted, ставшей мемом из-за «мыльной» графики в играх на консолях того времени и малого количества игр по мнению «ПеКа-бояр».</figcaption>
  </figure>
  <p id="FtVh">Тем не менее, для Flutter существует довольно функциональная библиотека для создания 2д-игр под названием <a href="https://pub.dev/publishers/flame-engine.org/packages" target="_blank">Flame</a>. Её возможностей будет достаточно для создания 2д-платформеров, файтингов, визуальных новелл и т.п.. Ознакомиться с возможностями движка можно <a href="https://examples.flame-engine.org/#/Animations_Group%20animation" target="_blank">по этой ссылке</a>.</p>
  <p id="RSiF">Лично я, в данный момент, занимаюсь разработкой каркаса для визуальных новелл (меню, интерфейс, декорации, персонажи и прочие ключевые элементы для игры этого жанра). По задумке, этот каркас можно будет брать за основу и быстро привносить фантазии и мечты авторов в жизнь. Пока всё в зачаточном состоянии. Может быть, позже расскажу о проекте подробнее. </p>
  <figure id="Bx4N" class="m_column">
    <img src="https://img2.teletype.in/files/9c/d2/9cd281c7-7235-4380-8123-2921c02f8934.png" width="956" />
    <figcaption>Фрагмент игрового процесса из тестового проекта по вселенной Phoenix Wright: Ace Attorney на движке Flame. Реализованы декорации, движения и анимации персонажа, а так же диалоговое окно.</figcaption>
  </figure>
  <p id="QSCS"></p>
  <p id="QlOx">Также для Flutter есть мощный инструмент под названием <a href="http://rive.app" target="_blank">Rive</a>. Он позволяет делать качественные анимации и «зашивать» в них логику. Это будут не просто «гифки», а нечто, обладающее «машиной состояний» (state machine). Создаваемые анимации будут опираться на ваш код и переменные в нём. Доступны типы переменных bool (истина/ложь), num (числа), а также <a href="https://qna.habr.com/q/322262" target="_blank">триггеры</a>. </p>
  <figure id="aLip" class="m_column">
    <img src="https://img2.teletype.in/files/d3/e0/d3e042f4-6cef-40f4-9032-ae2fbae2ef4f.png" width="1314" />
    <figcaption>Демонстрация проектов, созданных с помощью инструментов Rive. Можете самостоятельно ознакомиться с ними на <a href="http://rive.app" target="_blank">официальном сайте</a>, пролистав немного вниз.</figcaption>
  </figure>
  <p id="wYDV">В вашем арсенале доступны инструменты анимирования с помощью временной ленты и расстановки ключей (вы определяете, в каком состоянии будет находиться объект в заданное время). Его можно разбить на составные части и перемещать их в пространстве с помощью костей, отвечающих за взаимосвязанное движение всех элементов «скелета».</p>
  <figure id="yIih" class="m_original">
    <img src="https://img1.teletype.in/files/4b/c5/4bc5b9fb-25d0-4fea-8ef8-1f63802fc308.png" width="1920" />
    <figcaption>Интерфейс проекта</figcaption>
  </figure>
  <figure id="3yu6" class="m_column">
    <iframe src="https://www.youtube.com/embed/TZSbVLSIU34?autoplay=0&loop=0&mute=0"></iframe>
    <figcaption>Небольшое промо-видео с демонстрацией проектов, выполненных с использованием <a href="https://ru.wikipedia.org/wiki/%D0%A0%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B2%D0%B0%D1%8F_%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%BA%D0%B0" target="_blank">растровой графики</a>.</figcaption>
  </figure>
  <p id="0gPM">Несмотря на то, что Flutter не назовёшь специализированным решением для разработки игр, не всё так грустно, как могло бы быть.<br /><br />Связка Flutter+Flame вам подойдёт, если:<br />– Вы уже умеете писать проекты на Dart/Flutter, но у вас нет опыта разработки в Unity или Unreal Engine;<br />– Вы разрабатываете 2D, а не 3D проект (с 3D во флаттере пока грустновато и изменений в ближайшей перспективе не предвидится);<br />– Вам хочется углубиться в различные детали и ньюансы разработки игр, так как придётся реализовывать много функционала, изначально доступного на заточенных под игры фреймворках, но не доступного в связке Flutter+Flame. </p>

]]></content:encoded></item></channel></rss>