<?xml version="1.0" encoding="utf-8" ?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:tt="http://teletype.in/" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/"><title>Тимур Таепов</title><subtitle>Создаю игры, используя AI. Основатель сообщества GDTalents и студии разработки игр Justforward.</subtitle><author><name>Тимур Таепов</name></author><id>https://teletype.in/atom/taepov</id><link rel="self" type="application/atom+xml" href="https://teletype.in/atom/taepov?offset=0"></link><link rel="alternate" type="text/html" href="https://blog.timur.ai/?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=taepov"></link><link rel="next" type="application/rss+xml" href="https://teletype.in/atom/taepov?offset=10"></link><link rel="search" type="application/opensearchdescription+xml" title="Teletype" href="https://teletype.in/opensearch.xml"></link><updated>2026-06-08T08:08:09.702Z</updated><entry><id>taepov:chatgpt_gamedev_guide</id><link rel="alternate" type="text/html" href="https://blog.timur.ai/chatgpt_gamedev_guide?utm_source=teletype&amp;utm_medium=feed_atom&amp;utm_campaign=taepov"></link><title>Как некодеру использовать ChatGPT для создания игр в Unity и Cocos Creator</title><published>2023-12-09T18:09:23.798Z</published><updated>2023-12-09T18:09:23.798Z</updated><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img1.teletype.in/files/4e/71/4e7184ed-e237-4fe8-ac8e-6f1484fe882e.png"></media:thumbnail><summary type="html">&lt;img src=&quot;https://img1.teletype.in/files/84/22/84226399-9133-4339-9a6a-e23dc8516289.png&quot;&gt;Это гайд для тех, кто хочет начать пользоваться ChatGPT для создания игр в движках со скриптами, например, в Unity или Cocos Creator.</summary><content type="html">
  &lt;p id=&quot;H1wg&quot;&gt;Это гайд для тех, кто хочет начать пользоваться ChatGPT для создания игр в движках со скриптами, например, в Unity или Cocos Creator.&lt;/p&gt;
  &lt;figure id=&quot;HS9H&quot; class=&quot;m_retina&quot; data-caption-align=&quot;center&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/84/22/84226399-9133-4339-9a6a-e23dc8516289.png&quot; width=&quot;896&quot; /&gt;
    &lt;figcaption&gt;Собачка разрабатывает игру с помощью ChatGPT&lt;/figcaption&gt;
  &lt;/figure&gt;
  &lt;blockquote id=&quot;kBBd&quot;&gt;☝️ Перед прочтением подпишись, пожалуйста, на мой телеграм-канал &lt;a href=&quot;https://t.me/timurtaepov&quot; target=&quot;_blank&quot;&gt;&amp;quot;Мастермайнд с Тимуром&amp;quot;&lt;/a&gt;, где я регулярно рассказываю про разработку игр с помощью AI. А еще вступай в наш уютный &lt;a href=&quot;https://t.me/gdevai&quot; target=&quot;_blank&quot;&gt;чатик GameDev AI&lt;/a&gt;, где мы обсуждаем разработку игр с применением AI-технологий и инструментов.&lt;/blockquote&gt;
  &lt;p id=&quot;ewmP&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;kvEd&quot;&gt;&lt;strong&gt;Дисклеймер&lt;/strong&gt;&lt;/p&gt;
  &lt;ul id=&quot;paHi&quot;&gt;
    &lt;li id=&quot;djuw&quot;&gt;Этот гайд для некодеров. Кодерам это вряд ли будет интересно.&lt;/li&gt;
    &lt;li id=&quot;VUvd&quot;&gt;Я не нашел гайдов и курсов по этой теме (кажется, таких еще нет), но получаю такие запросы в сообществе разработчиков игр.&lt;/li&gt;
    &lt;li id=&quot;veS9&quot;&gt;Информация и технологии в сфере искусственного интеллекта обновляется часто и быстро, поэтому будет обновляться и этот гайд. Последняя дата обновления – 9 декабря 2023 года.&lt;/li&gt;
    &lt;li id=&quot;ZE9R&quot;&gt;Данный гайд подходит как для Unity, так и для Cocos Creator. Я на личной практике использовал в обоих движках. В целом, подход достаточно универсален, так как речь идет про скрипты.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;sAYE&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;Kdht&quot;&gt;&lt;strong&gt;Содержание&lt;/strong&gt;&lt;/p&gt;
  &lt;nav&gt;
    &lt;ul&gt;
      &lt;li class=&quot;m_level_1&quot;&gt;&lt;a href=&quot;#8s4i&quot;&gt;&lt;/a&gt;&lt;/li&gt;
      &lt;li class=&quot;m_level_1&quot;&gt;&lt;a href=&quot;#YnZJ&quot;&gt;Кодеры VS некодеры&lt;/a&gt;&lt;/li&gt;
      &lt;li class=&quot;m_level_1&quot;&gt;&lt;a href=&quot;#Xyu7&quot;&gt;Цели использования ChatGPT&lt;/a&gt;&lt;/li&gt;
      &lt;li class=&quot;m_level_1&quot;&gt;&lt;a href=&quot;#OB1O&quot;&gt;Какую версию использовать? &lt;/a&gt;&lt;/li&gt;
      &lt;li class=&quot;m_level_1&quot;&gt;&lt;a href=&quot;#ws5W&quot;&gt;Как вообще это работает?&lt;/a&gt;&lt;/li&gt;
      &lt;li class=&quot;m_level_1&quot;&gt;&lt;a href=&quot;#n6U7&quot;&gt;Забывчивый ChatGPT&lt;/a&gt;&lt;/li&gt;
      &lt;li class=&quot;m_level_1&quot;&gt;&lt;a href=&quot;#A2Yj&quot;&gt;Мастер-документ&lt;/a&gt;&lt;/li&gt;
      &lt;li class=&quot;m_level_1&quot;&gt;&lt;a href=&quot;#4KNd&quot;&gt;Модульный подход к скриптам&lt;/a&gt;&lt;/li&gt;
      &lt;li class=&quot;m_level_1&quot;&gt;&lt;a href=&quot;#odc9&quot;&gt;Примеры из практики&lt;/a&gt;&lt;/li&gt;
      &lt;li class=&quot;m_level_1&quot;&gt;&lt;a href=&quot;#iGSQ&quot;&gt;Разочарование года –– Unity Muse&lt;/a&gt;&lt;/li&gt;
      &lt;li class=&quot;m_level_1&quot;&gt;&lt;a href=&quot;#BCX1&quot;&gt;Будущее с AI&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/nav&gt;
  &lt;p id=&quot;x277&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;vvBi&quot;&gt;Я не программист и никогда не кодил игры сам. У меня обычно были иные роли. Хотя простые штуки все равно приходилось делать. Например, интегрировать какой-то плагин или что-то пофиксить.&lt;/p&gt;
  &lt;p id=&quot;sIdc&quot;&gt;Программирование я пробовал освоить, но дальше базовых моментов не ушло. Полноценный скрипт с нуля я написать не могу.&lt;/p&gt;
  &lt;p id=&quot;p0xr&quot;&gt;Уже год как в жизнь людей серьезно ворвались инструменты искусственного интеллекта, особенно ChatGPT. А это значит, что для нас, для некодеров, открываются потрясающие возможности в разработке игр.&lt;/p&gt;
  &lt;h3 id=&quot;8s4i&quot;&gt;&lt;/h3&gt;
  &lt;h3 id=&quot;YnZJ&quot;&gt;Кодеры VS некодеры&lt;/h3&gt;
  &lt;p id=&quot;HTvA&quot;&gt;У кодеров и некодеров немного разное восприятие AI-инструментов для разработки. В некотором смысле, разные пути, которые особо не пересекаются.&lt;/p&gt;
  &lt;p id=&quot;ghV2&quot;&gt;Кодеры уже умеют создавать программную архитектуру продукта и писать код. AI они используют, по сути, для ускорения написания фрагментов кода. Эдакий Т9 для программистов. Им не нужно спрашивать у ChatGPT о том, какие именно скрипты для игры им понадобятся и как все это организовать. Особенно мидлам и сеньорам в этих моментах AI скорее будет мешать, чем помогать.&lt;/p&gt;
  &lt;p id=&quot;U4Za&quot;&gt;Для некодеров же все иначе. AI –– это не столько автозаполнение фрагментов кода, сколько полноценный ментор, который никогда не устанет что-то объяснять и рассказывать обо всем, обо всех мелочах. Или иначе можно сказать, что это тысяча джунов в помощниках, которые достались некодеру почти бесплатно, нужно только организовать их работу. &lt;/p&gt;
  &lt;p id=&quot;bKMO&quot;&gt;&lt;/p&gt;
  &lt;h3 id=&quot;Xyu7&quot;&gt;Цели использования ChatGPT&lt;/h3&gt;
  &lt;p id=&quot;ubsl&quot;&gt;На самых ранних стадиях желательно понять цель использования ChatGPT. Глобально можно выделить две цели или два пути:&lt;/p&gt;
  &lt;ol id=&quot;F9eE&quot;&gt;
    &lt;li id=&quot;WTRK&quot;&gt;Научиться кодить с ChatGPT&lt;/li&gt;
    &lt;li id=&quot;vHUL&quot;&gt;Использовать ChatGPT как постоянного ассистента без глубокого погружения в программирование&lt;/li&gt;
  &lt;/ol&gt;
  &lt;p id=&quot;tbuT&quot;&gt;От выбранного пути будет зависеть подход к ежедневному использованию ChatGPT.&lt;/p&gt;
  &lt;p id=&quot;pNol&quot;&gt;Для первого пути будет характерно регулярное ревью того, что генерит ChatGPT. То есть нужно будет с определенной периодичностью просить AI объяснить скрипт целиком, либо какие-то отдельные функции или куски кода. Чат очень хорошо поясняет каждый элемент и логику, что делает обучение достаточно увлекательным и эффективным, потому что можно быстро сгенерить что-то работающее и понять, как это работает, на своем личном проекте.&lt;/p&gt;
  &lt;p id=&quot;NwOx&quot;&gt;Определенно ChatGPT позволяет оптимизировать кривую обучения. По сути, это обучение написанию скриптов на стероидах.&lt;/p&gt;
  &lt;p id=&quot;80g8&quot;&gt;Если совсем с нуля изучать скриптинг для Unity или Cocos Creator без AI, то нужно слишком большой объем информации обработать и изучить на старте. Так как с нуля совсем ничего непонятно. С чего начать, за что браться. Как преобразовать идею игры в какую-то архитектуру и тем более в конкретные скрипты? &lt;/p&gt;
  &lt;p id=&quot;eyYe&quot;&gt;А ChatGPT сразу предложит неплохой вариант архитектуры и подходящие методы под игровую логику. И не нужно гуглить сложные кастомные запросы под свой кейс. Можно моментально получить очень релевантный ответ или решение через чат.&lt;/p&gt;
  &lt;p id=&quot;2NtI&quot;&gt;Я пока склоняюсь ко второму пути и воспринимаю скрипт как кусочек архитектуры проекта или как ноду. Я должен понимать, для чего нужен этот элемент в проекте, его назначение, немного вникнуть в составную часть, но не погружаться слишком глубоко и не разбирать код вплоть до каждой скобки. &lt;/p&gt;
  &lt;p id=&quot;kilr&quot;&gt;И тем не менее немного подучить синтаксис и основы языка не помешает. Это позволит получше разгребать куски кода, которые генерит чат. Просто, чтобы скрипт совсем не казался набором иероглифов или размытым изображением, в котором невозможно выделить составляющие.&lt;/p&gt;
  &lt;p id=&quot;VwEh&quot;&gt;&lt;/p&gt;
  &lt;h3 id=&quot;OB1O&quot;&gt;Какую версию использовать? &lt;/h3&gt;
  &lt;p id=&quot;E6eA&quot;&gt;Есть бесплатная версия чата и подписка за $20 в месяц.&lt;/p&gt;
  &lt;figure id=&quot;RXEu&quot; class=&quot;m_column&quot; data-caption-align=&quot;center&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/88/18/88186fd9-e81d-4b0b-81ff-8f4bfaefbb5f.png&quot; width=&quot;2838&quot; /&gt;
    &lt;figcaption&gt;Тарифные планы ChatGPT&lt;/figcaption&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;7buh&quot;&gt;Я сначала использовал версию 3.5 ChatGPT, и там вообще все грустно. Выдает плохой код и очень плохо что-либо объясняет.&lt;/p&gt;
  &lt;p id=&quot;xiCl&quot;&gt;Перешел на подписку и 4 версию ChatGPT. Вау! Она оказалась очень бодрой. Как реальный ментор все расскажет и покажет, все сделает, что нужно. Пишет код лучше намного, чем версия 3.5.&lt;/p&gt;
  &lt;p id=&quot;m3fp&quot;&gt;4 и 3.5 версии просто небо и земля. 3.5 версия пыталась все в одном скрипте делать и не получилось нормально дебажить ошибки. А 4 версия сразу разбивает задачу на несколько скриптов и дебажит хорошо. Выдает кучу гипотез, как проблему в принципе можно решить, и помогает пройти по всем этапам. Ощущение помощи реального человека.&lt;/p&gt;
  &lt;p id=&quot;fCjf&quot;&gt;4 версия имеет более актуальные данные. Иными словами, она больше знает, чем 3.5. Это особенно критично при использовании движка Cocos Creator, так как в последнее время у него было много важных обновлений.&lt;/p&gt;
  &lt;p id=&quot;YqZo&quot;&gt;&lt;/p&gt;
  &lt;h3 id=&quot;ws5W&quot;&gt;Как вообще это работает?&lt;/h3&gt;
  &lt;p id=&quot;4TAG&quot;&gt;Возможно ли собрать прототип из одного запроса? Насколько далеко можно зайти в создании проекта без глубокого погружения в программирование?&lt;/p&gt;
  &lt;p id=&quot;KW0i&quot;&gt;К сожалению, по одному запросу пока невозможно собрать полноценный прототип игры со всеми скриптами. Взаимодействие с чатом это итеративный и глубокий процесс. Чем сложнее проект, тем больше итераций и веток возникнет при разработке игры.&lt;/p&gt;
  &lt;p id=&quot;CLhb&quot;&gt;Желательно начинать с самых простых моментов, например, с кор-механики, и постепенно наслаивать и усложнять. Это необходимо, чтобы не запутаться самому и выстраивать рабочий продукт, а не груду неработающих скриптов.&lt;/p&gt;
  &lt;p id=&quot;QCr5&quot;&gt;У чата можно спрашивать абсолютно все, не только генерацию непосредственно кода. Он расскажет, как выстроить архитектуру игры и прочие моменты вплоть до игрового баланса. &lt;/p&gt;
  &lt;figure id=&quot;7qrI&quot; class=&quot;m_column&quot; data-caption-align=&quot;center&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/0c/fc/0cfce25c-f01f-4131-b0af-7d97af76e942.png&quot; width=&quot;1722&quot; /&gt;
    &lt;figcaption&gt;Здесь ChatGPT подробно рассказывает про геймплей игры, которую я взял за референс для создания клона&lt;/figcaption&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;rnx9&quot;&gt;&lt;/p&gt;
  &lt;h3 id=&quot;n6U7&quot;&gt;Забывчивый ChatGPT&lt;/h3&gt;
  &lt;p id=&quot;avbq&quot;&gt;Несмотря на то, что ChatGPT умненький и крутой, особенно 4 версия, он забывчивый, как древний старик.&lt;/p&gt;
  &lt;p id=&quot;n7Ru&quot;&gt;Выяснилось, что начатый диалог он способен вести, учитывая контекст, но со временем забывает, что было ранее. То есть он перестает учитывать то, что обсуждалось какое-то время назад или в прошлой сессии.&lt;/p&gt;
  &lt;p id=&quot;a9d4&quot;&gt;А я-то рассчитывал на то, что в одном диалоге можно долго вести разработку игры и он будет запоминать абсолютно все наши ходы и итерации. Реальность оказалась более суровой. Но это не беда.&lt;/p&gt;
  &lt;p id=&quot;3cqX&quot;&gt;Каждую новую сессию можно подгружать актуальные скрипты и таким образом напоминать контекст, чтобы двигаться дальше. Да, муторно, но в целом — рабочий вариант для небольшой игрушки.&lt;/p&gt;
  &lt;p id=&quot;xMXt&quot;&gt;Кстати, я попробовал все равно ссылаться на скрипты, которые были в прошлых сессиях взаимодействия. Попросил у чата воспроизвести их. И он просто местами выкинул куски кода. По сути, &amp;quot;забыл&amp;quot; о них.&lt;/p&gt;
  &lt;p id=&quot;7y6u&quot;&gt;Таким образом, невозможность сохранения контекста проекта при долгосрочной разработке –– это ключевой недостаток для разработки игр через ChatGPT. Как следствие, необходимо придумывать костыли по напоминанию архитектуры и параметров проекта в каждую сессию. Для этого я формирую и использую мастер-документ по проекту.&lt;/p&gt;
  &lt;p id=&quot;4bdo&quot;&gt;Есть и позитивный момент –– с недавних пор чат принимает на вход большие массивы данных, что позволяет делать мастер-документ достаточно объемным.&lt;/p&gt;
  &lt;p id=&quot;BY9W&quot;&gt;&lt;/p&gt;
  &lt;h3 id=&quot;A2Yj&quot;&gt;Мастер-документ&lt;/h3&gt;
  &lt;p id=&quot;dnGi&quot;&gt;То, что ChatGPT плохо держит контекст проекта будет решено, либо уже решается каким-то плагином и я этого не знаю. Либо в перспективе появятся мостики между движками и ChatGPT, откуда чат будет забирать полную актуальную информацию о проекте. Это вообще будет идеально.&lt;/p&gt;
  &lt;p id=&quot;ujYm&quot;&gt;А пока можно иметь один документ, через который поддерживать актуальный контекст всего проекта с чатом.&lt;/p&gt;
  &lt;p id=&quot;DJnH&quot;&gt;Этот документ исключительно моя выдумка, я не брал как референс что-либо и не встречал пока шаблонов для таких документов. Поэтому пока расскажу о том, как я организовал ведение этого документа в личной практике.&lt;/p&gt;
  &lt;p id=&quot;gsmD&quot;&gt;Я веду мастер-документы по проектам в Notion целиком на одной страничке, чтобы разом можно было закинуть всю информацию в ChatGPT для актуализации контекста в любой момент. Он содержит тексты и скрипты.&lt;/p&gt;
  &lt;p id=&quot;JTle&quot;&gt;Мастер-документ можно сформировать какой угодно, опираясь на свои потребности. В качестве опорной точки можно использовать мои наработки.&lt;/p&gt;
  &lt;p id=&quot;IP0s&quot;&gt;Структура мастер-документа:&lt;/p&gt;
  &lt;ul id=&quot;ZskB&quot;&gt;
    &lt;li id=&quot;iH1M&quot;&gt;обращение к ChatGPT&lt;/li&gt;
    &lt;li id=&quot;SMdq&quot;&gt;общая информация про проект&lt;/li&gt;
    &lt;li id=&quot;UPjA&quot;&gt;описание геймплея&lt;/li&gt;
    &lt;li id=&quot;Nx9H&quot;&gt;прогресс разработки в движке&lt;/li&gt;
    &lt;li id=&quot;iT4V&quot;&gt;скрипты и код&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;8uEk&quot;&gt;&lt;strong&gt;Обращение к ChatGPT&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;ldQb&quot;&gt;Здесь важно передать краткое послание чату, о чем этот документ. Обычно, после сообщения чату, он пытается сразу предложить решение. Поэтому в данном абзаце я делаю оговорку о том, что не нужно сразу предлагать решение, а нужно подождать моего следующего сообщения, где я уже поставлю задачу.&lt;/p&gt;
  &lt;p id=&quot;70fI&quot;&gt;В моем документе это выглядит примерно так:&lt;/p&gt;
  &lt;blockquote id=&quot;3DDF&quot;&gt;I’m developing a game in Cocos Creator using TypeScript. This is a document with the project scope and details. Review it and wait for the next step in the next message from me.&lt;/blockquote&gt;
  &lt;p id=&quot;o1W6&quot;&gt;&lt;strong&gt;Общая информация про проект&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;myw9&quot;&gt;Это общая информация про игровой проект. Здесь не слишком подробно, можно иметь верхнеуровневое описание, например, так:&lt;/p&gt;
  &lt;blockquote id=&quot;a1b6&quot;&gt;&lt;strong&gt;Game Concept&lt;/strong&gt;: &amp;quot;Last Pocket&amp;quot; is a puzzle game inspired by the concept of an 8-ball pool. It&amp;#x27;s designed to challenge your strategic prowess and quick thinking without requiring prior knowledge of billiards or pool. &lt;strong&gt;Gameplay Mechanics&lt;/strong&gt;: In the game, you arrange wooden planks with a tap, creating mazes of reflections and angles to guide the ball towards victory. This involves managing ten distinct elements that add unique twists to each level, enhancing the puzzle-solving aspect of the game.&lt;/blockquote&gt;
  &lt;p id=&quot;He30&quot;&gt;&lt;strong&gt;Описание геймплея&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;5DKz&quot;&gt;Более подробное описание механики и игровых элементов, чтобы у чата было больше понимания, из чего состоит проект. В идеале иметь хорошо прописанный геймдизайн-документ (ГДД).&lt;/p&gt;
  &lt;p id=&quot;5Z9N&quot;&gt;Этот блок может содержать примерно следующие пункты:&lt;/p&gt;
  &lt;ul id=&quot;MVIj&quot;&gt;
    &lt;li id=&quot;L5KA&quot;&gt;Objective&lt;/li&gt;
    &lt;li id=&quot;re10&quot;&gt;Game Elements&lt;/li&gt;
    &lt;li id=&quot;RLcv&quot;&gt;Gameplay Mechanics&lt;/li&gt;
    &lt;li id=&quot;h7rL&quot;&gt;Challenges and Strategy&lt;/li&gt;
    &lt;li id=&quot;VzHu&quot;&gt;User Interface&lt;/li&gt;
    &lt;li id=&quot;UZ7i&quot;&gt;Programming Considerations&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;mvJ6&quot;&gt;&lt;strong&gt;Прогресс разработки в движке&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;AaMS&quot;&gt;Так как документ содержит полную информацию о проекте, а непосредственно в движке может быть реализована еще только часть, будет не лишним показать прогресс того, что уже добавлено и внедрено. У меня это выглядит примерно так в одной из версий документа по проекту в Cocos Creator.&lt;/p&gt;
  &lt;p id=&quot;UjPf&quot;&gt;Scene building progress:&lt;/p&gt;
  &lt;ul id=&quot;YLiB&quot;&gt;
    &lt;li id=&quot;bZzy&quot;&gt;Assets added&lt;/li&gt;
    &lt;ul id=&quot;W8CO&quot;&gt;
      &lt;li id=&quot;OFqC&quot;&gt;Background&lt;/li&gt;
      &lt;li id=&quot;cgjA&quot;&gt;Ball&lt;/li&gt;
      &lt;li id=&quot;5cpu&quot;&gt;Cue&lt;/li&gt;
    &lt;/ul&gt;
    &lt;li id=&quot;lXT5&quot;&gt;Scripts added&lt;/li&gt;
    &lt;ul id=&quot;SfBg&quot;&gt;
      &lt;li id=&quot;iqG5&quot;&gt;Ball&lt;/li&gt;
      &lt;li id=&quot;JGCb&quot;&gt;PlayerInput&lt;/li&gt;
    &lt;/ul&gt;
    &lt;li id=&quot;F9oP&quot;&gt;Nodes added&lt;/li&gt;
    &lt;ul id=&quot;J44G&quot;&gt;
      &lt;li id=&quot;WagM&quot;&gt;Background&lt;/li&gt;
      &lt;li id=&quot;Evd5&quot;&gt;Camera&lt;/li&gt;
      &lt;li id=&quot;uNic&quot;&gt;Ball&lt;/li&gt;
      &lt;li id=&quot;ag3b&quot;&gt;Cue&lt;/li&gt;
      &lt;li id=&quot;JOFr&quot;&gt;PlayerInput&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;etQo&quot;&gt;&lt;strong&gt;Скрипты и код&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;XO3O&quot;&gt;Это, пожалуй, самая важная часть мастер-документа, которая содержит актуальный набор скриптов и их содержание.&lt;/p&gt;
  &lt;p id=&quot;W7KA&quot;&gt;Можно сделать либо просто набор скриптов, либо сначала список и их предназначение, а уже потом сами скрипты.&lt;/p&gt;
  &lt;p id=&quot;jNcD&quot;&gt;Если делать сначала список скриптов, то выглядеть это может примерно так (привожу только часть списка):&lt;/p&gt;
  &lt;p id=&quot;IKHS&quot;&gt;&lt;strong&gt;Game Manager Script&lt;/strong&gt;&lt;/p&gt;
  &lt;ul id=&quot;cV2h&quot;&gt;
    &lt;li id=&quot;RoNk&quot;&gt;&lt;strong&gt;Purpose&lt;/strong&gt;: Manages the overall game state, including level progression, score tracking, and game settings.&lt;/li&gt;
    &lt;li id=&quot;kRgA&quot;&gt;&lt;strong&gt;Key Functions&lt;/strong&gt;:&lt;/li&gt;
    &lt;ul id=&quot;ydEd&quot;&gt;
      &lt;li id=&quot;3AO8&quot;&gt;Initialize and terminate game levels.&lt;/li&gt;
      &lt;li id=&quot;KLDR&quot;&gt;Keep track of player progress and scores.&lt;/li&gt;
      &lt;li id=&quot;cvkw&quot;&gt;Manage game settings (sound, difficulty, etc.).&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;q6Fn&quot;&gt;&lt;strong&gt;Level Manager Script&lt;/strong&gt;&lt;/p&gt;
  &lt;ul id=&quot;Gxl4&quot;&gt;
    &lt;li id=&quot;9ok6&quot;&gt;&lt;strong&gt;Purpose&lt;/strong&gt;: Handles the loading and setup of individual levels.&lt;/li&gt;
    &lt;li id=&quot;wTsD&quot;&gt;&lt;strong&gt;Key Functions&lt;/strong&gt;:&lt;/li&gt;
    &lt;ul id=&quot;ZQHN&quot;&gt;
      &lt;li id=&quot;cNik&quot;&gt;Load level data (layout, obstacles, ball start position, etc.).&lt;/li&gt;
      &lt;li id=&quot;spUI&quot;&gt;Set up the game environment for each level.&lt;/li&gt;
      &lt;li id=&quot;N0mR&quot;&gt;Manage level-specific rules and conditions.&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;wqlI&quot;&gt;&lt;strong&gt;Player Input Script&lt;/strong&gt;&lt;/p&gt;
  &lt;ul id=&quot;OaVY&quot;&gt;
    &lt;li id=&quot;68ed&quot;&gt;&lt;strong&gt;Purpose&lt;/strong&gt;: Processes player inputs, such as taps or swipes.&lt;/li&gt;
    &lt;li id=&quot;K2Zw&quot;&gt;&lt;strong&gt;Key Functions&lt;/strong&gt;:&lt;/li&gt;
    &lt;ul id=&quot;qhG4&quot;&gt;
      &lt;li id=&quot;JamT&quot;&gt;Detect and interpret player taps or drag gestures.&lt;/li&gt;
      &lt;li id=&quot;UN3s&quot;&gt;Trigger actions like placing or rotating obstacles.&lt;/li&gt;
      &lt;li id=&quot;nna8&quot;&gt;Handle user interface interactions.&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;xTzR&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;L0Cs&quot;&gt;После списка идут уже непосредственно скрипты.&lt;/p&gt;
  &lt;p id=&quot;XL3I&quot;&gt;В Notion можно делать специальные блоки для хранения кода, в которых можно выбрать язык программирования.&lt;/p&gt;
  &lt;figure id=&quot;Ej3W&quot; class=&quot;m_column&quot; data-caption-align=&quot;center&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/00/69/0069464c-6c2e-4e67-86f1-c97c63931ec8.png&quot; width=&quot;1680&quot; /&gt;
    &lt;figcaption&gt;Добавление блока для TypeScript в Notion&lt;/figcaption&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;dSuu&quot;&gt;Итоговый результат выглядит примерно так (фрагмент).&lt;/p&gt;
  &lt;figure id=&quot;35Oq&quot; class=&quot;m_column&quot; data-caption-align=&quot;center&quot;&gt;
    &lt;img src=&quot;https://img1.teletype.in/files/cc/93/cc9346d1-ad13-421c-b9cc-df89e7b0c407.png&quot; width=&quot;1522&quot; /&gt;
    &lt;figcaption&gt;Скрипт PlayerInput в мастер-документе в Notion.&lt;/figcaption&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;lXOj&quot;&gt;&lt;/p&gt;
  &lt;p id=&quot;P7Ag&quot;&gt;Так же я веду версионность мастер-документа, чтобы легче было откатываться к прошлой версии, потому что в ходе итераций много чего меняется и далеко не всегда получается отладить возникающие ошибки.&lt;/p&gt;
  &lt;figure id=&quot;Sofh&quot; class=&quot;m_custom&quot; data-caption-align=&quot;center&quot;&gt;
    &lt;img src=&quot;https://img4.teletype.in/files/38/3a/383ae6d4-a3c9-4344-b383-aee8c86212a8.png&quot; width=&quot;328.17509727626464&quot; /&gt;
    &lt;figcaption&gt;Версионность мастер-документа&lt;/figcaption&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;NVNa&quot;&gt;&lt;/p&gt;
  &lt;h3 id=&quot;4KNd&quot;&gt;Модульный подход к скриптам&lt;/h3&gt;
  &lt;p id=&quot;1NzT&quot;&gt;Одно из самых важных в разработке игры с ChatGPT –– не перегружать один скрипт большим количеством функций. Желательно дробить как можно мельче, но в разумных пределах. Это не что-то особенное именно для взаимодействия с AI, это достаточно общее правило и в целом для программирования. Просто при взаимодействии с AI оно принимает особую значимость, потому что есть риск того, что ChatGPT будет менять то, что итак уже хорошо работает и не требует модификации на самом деле.&lt;/p&gt;
  &lt;p id=&quot;6DAy&quot;&gt;&lt;/p&gt;
  &lt;h3 id=&quot;odc9&quot;&gt;Примеры из практики&lt;/h3&gt;
  &lt;p id=&quot;bQ26&quot;&gt;Это пару примеров из моей практики в самом начале использования ChatGPT для разработки игр в Unity и Cocos Creator. Хочу этими примерами продемонстрировать то, что может сделать некодер за очень короткий промежуток времени.&lt;/p&gt;
  &lt;p id=&quot;ioGk&quot;&gt;😂 Не показывайте это кодерам. Для них это очень простенькие задачи и мало кто из них помнит свои навыки до того, когда они умели кодить. Поэтому реакция может быть очень разная.&lt;/p&gt;
  &lt;p id=&quot;RUxs&quot;&gt;&lt;strong&gt;Unity&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;JbQy&quot;&gt;Пример прототипа, который был собран за два часа в Unity. Содержит базовую сцену и несколько скриптов. Это набросок кор-механики игры про парковку, где нужно передвигать автомобили свайпами.&lt;/p&gt;
  &lt;figure id=&quot;NoD2&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/zZY3RCypAEo?autoplay=0&amp;loop=0&amp;mute=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;Gqfw&quot;&gt;&lt;strong&gt;Cocos Creator&lt;/strong&gt;&lt;/p&gt;
  &lt;p id=&quot;66jH&quot;&gt;Для погружения в движок Cocos Creator решил реализовать простейшую флаппи-механику. Доделывать я ее, разумеется, не буду. За первые четыре часа взаимодействия с движком и ChatGPT я успел:&lt;/p&gt;
  &lt;ul id=&quot;YuKn&quot;&gt;
    &lt;li id=&quot;Id63&quot;&gt;обсудить с ChatGPT архитектуру и последовательность действий &lt;/li&gt;
    &lt;li id=&quot;DXRF&quot;&gt;осмотреться в движке&lt;/li&gt;
    &lt;li id=&quot;Eskj&quot;&gt;собрать базовую сцену игры&lt;/li&gt;
    &lt;li id=&quot;kNUf&quot;&gt;итеративно реализовать пару базовых скриптов, чтобы хоть немного было играбельно&lt;/li&gt;
  &lt;/ul&gt;
  &lt;figure id=&quot;V1Il&quot; class=&quot;m_column&quot;&gt;
    &lt;iframe src=&quot;https://www.youtube.com/embed/TvhIrtVNAp0?autoplay=0&amp;loop=0&amp;mute=0&quot;&gt;&lt;/iframe&gt;
  &lt;/figure&gt;
  &lt;p id=&quot;MEcb&quot;&gt;&lt;/p&gt;
  &lt;h3 id=&quot;iGSQ&quot;&gt;Разочарование года –– Unity Muse&lt;/h3&gt;
  &lt;p id=&quot;wUwe&quot;&gt;Помимо ChatGPT существует и AI-решение непосредственно от Unity, которое буквально недавно стало доступно по подписке. Это набор AI-инструментов для разработки игр под названием &lt;a href=&quot;https://unity.com/products/muse&quot; target=&quot;_blank&quot;&gt;Muse&lt;/a&gt;. Там можно работать с кодом и графикой. Узнав о том, что можно уже взять подписку и пользоваться, я выстроил гигантские надежды, что это настоящая революция. Предвкушению не было предела.&lt;/p&gt;
  &lt;p id=&quot;dzCd&quot;&gt;Дальше –– разочарование. Потому что половина того, что там есть, сырая. А сам чат &amp;quot;просто чтобы был&amp;quot;. При этом Muse никак не решает проблему с контекстом ведения проекта в ChatGPT, хоть и является нативным инструментом от создателей движка.&lt;/p&gt;
  &lt;ul id=&quot;3Fwd&quot;&gt;
    &lt;li id=&quot;60HM&quot;&gt;Нет никакой интеграции AI с проектом в Unity, то есть чат не в курсе, что за проект, и в удобном виде ему об этом никак не рассказать.&lt;/li&gt;
    &lt;li id=&quot;7j77&quot;&gt;Не сохраняется контекст разработки проекта во времени. То есть чат &amp;quot;забывчивый&amp;quot;.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;p id=&quot;RYjL&quot;&gt;По сути, это тот же ChatGPT, но только урезанный. Просто какая-то бутафория. Просто, чтобы было.&lt;/p&gt;
  &lt;p id=&quot;efF3&quot;&gt;Возможно, интеграция чата непосредственно с файлами игровых проектов в будущем будет. Но пока похоже на бесполезную штуку, которая еще и стоит дороже, чем подписка на ChatGPT. Благо Unity Muse дает бесплатные 15 дней и можно потом ничего не платить.&lt;/p&gt;
  &lt;p id=&quot;fbof&quot;&gt;Пока на Muse можно не тратить время и деньги. ChatGPT-4 на голову выше.&lt;/p&gt;
  &lt;p id=&quot;NzVJ&quot;&gt;&lt;/p&gt;
  &lt;h3 id=&quot;BCX1&quot;&gt;Будущее с AI&lt;/h3&gt;
  &lt;p id=&quot;z0gF&quot;&gt;Чем больше я использую AI-инструменты в работе, тем больше склоняюсь к тому, что в будущем почти каждый будет оператором AI.&lt;/p&gt;
  &lt;p id=&quot;uVAu&quot;&gt;Как произошло со смартфоном. Этот девайс теперь является продолжением человека.&lt;/p&gt;
  &lt;p id=&quot;GWb7&quot;&gt;Не нужно будет знать и понимать детали, можно будет оперировать на более высоком уровне понятий и интеллектуальных объектов.&lt;/p&gt;
  &lt;p id=&quot;9iJK&quot;&gt;Многое для человека будет в формате black box и это будет совершенно ОК.&lt;/p&gt;
  &lt;p id=&quot;JGvy&quot;&gt;У меня есть убеждение, что знать синтаксис и понимать, как работает тот или иной метод внутри, просто не нужно будет.&lt;/p&gt;
  &lt;p id=&quot;ZUiG&quot;&gt;Безусловно, это спорный тейк и в основном кодеры со мной не согласны. Сейчас действительно AI-инструменты для этого слабоваты и не могут держать контекст крупных проектов.&lt;/p&gt;
  &lt;p id=&quot;GS4h&quot;&gt;Но дайте этому годик и все может значительно продвинуться вперед.&lt;/p&gt;
  &lt;p id=&quot;8A3b&quot;&gt;А далее чипирование и все дела! :) Я, кстати, готов буду в первых рядах стать пользователем. В какой-то момент человек без чип-тюнинга будет неконкурентен на рынке.&lt;/p&gt;
  &lt;p id=&quot;reoB&quot;&gt;&lt;/p&gt;
  &lt;hr /&gt;
  &lt;blockquote id=&quot;m2Bt&quot;&gt;🙏 Спасибо за внимание к гайду. Если гайд показался полезным, поделись с друзьями и коллегами. &lt;/blockquote&gt;
  &lt;p id=&quot;1NTO&quot;&gt;&lt;strong&gt;Полезные ссылки&lt;/strong&gt;&lt;/p&gt;
  &lt;ul id=&quot;elod&quot;&gt;
    &lt;li id=&quot;HhbT&quot;&gt;Мой телеграм-канал &lt;a href=&quot;https://t.me/timurtaepov&quot; target=&quot;_blank&quot;&gt;&amp;quot;Мастермайнд с Тимуром&amp;quot;&lt;/a&gt;, где я регулярно рассказываю про разработку игр с помощью AI. &lt;/li&gt;
    &lt;li id=&quot;Xx0G&quot;&gt;Наш уютный &lt;a href=&quot;https://t.me/gdevai&quot; target=&quot;_blank&quot;&gt;чатик GameDev AI&lt;/a&gt;, где мы обсуждаем разработку игр с применением AI-технологий и инструментов.&lt;/li&gt;
  &lt;/ul&gt;

</content></entry></feed>