❓ Каков же результат сегодняшнего дня?
⚙️ Изучение FSM прошло отлично, я понял судь данного паттерна и то, как его можно использовать на практике.
🔧 Хотел рассказать его принцип, но лучше дам вам норм уроки)
😅 А ещё хотите забавный факт, вчера я сам чуть ли не создал подобие машины состояний, не зная этот паттерн.
🧠 Т.е. логика моего мышления привела примерно к тому, что из себя представляет шаблон "Состояние", но додумать до конца немного не хватило ума.
👨💻 Я создал класс, который регистрировал имеющиеся состояния (контекст), правда у меня в роли состояний были куротины (конкретные состояния), далее наследовался от этого класса и в наследниках создавал состояния и регистрировал их.
👾 Вроде реализация была частично рабочей, но использование уже проверенного паттерна будет куда полезнее и проффесиональней.
А вот и полезные материалы:
На русском здесь.
На английском здесь, а вот здесь сказано, как переиспользовать FSM с соблюдением принципа DRY.
P.s.
Дополнение ;)
#образовач
⚙️ Изучение FSM прошло отлично, я понял судь данного паттерна и то, как его можно использовать на практике.
🔧 Хотел рассказать его принцип, но лучше дам вам норм уроки)
😅 А ещё хотите забавный факт, вчера я сам чуть ли не создал подобие машины состояний, не зная этот паттерн.
🧠 Т.е. логика моего мышления привела примерно к тому, что из себя представляет шаблон "Состояние", но додумать до конца немного не хватило ума.
👨💻 Я создал класс, который регистрировал имеющиеся состояния (контекст), правда у меня в роли состояний были куротины (конкретные состояния), далее наследовался от этого класса и в наследниках создавал состояния и регистрировал их.
👾 Вроде реализация была частично рабочей, но использование уже проверенного паттерна будет куда полезнее и проффесиональней.
А вот и полезные материалы:
На русском здесь.
На английском здесь, а вот здесь сказано, как переиспользовать FSM с соблюдением принципа DRY.
P.s.
Дополнение ;)
#образовач
🏆 2 день марафона.
👨💻 Сегодня углубился в две темы ScriptableObject и Object pool. Обе темы лёгкие, так что их понимание не заняло много времени.
📄 ScriptableObject - это функционал Unity, который позволяет создавать скрипты, которые хранят в себе данные, звучит как-то скучно, но их смысл куда больше, чем может показаться.
👾 Object Pool - это уже шаблон, которые подразумевает переиспользование заранее заготовленных объектов с целью экономии памяти.
👨💻 Также произвёл большую работу по внедрению FSM, а точнее переписывание моего прошлого кода, под данный шаблон и времени потратил на это прилично.
📋 Ещё решил добавить к своим состояниям параметры (отдельные классы), чтобы расширить возможности врагов.
P.s.
💬 По секрету, у меня тут есть канальчик, куда я для себя скидываю полезные штуки по геймдеву, там есть материал, по которому я изучал темы.
#образовач
👨💻 Сегодня углубился в две темы ScriptableObject и Object pool. Обе темы лёгкие, так что их понимание не заняло много времени.
📄 ScriptableObject - это функционал Unity, который позволяет создавать скрипты, которые хранят в себе данные, звучит как-то скучно, но их смысл куда больше, чем может показаться.
👾 Object Pool - это уже шаблон, которые подразумевает переиспользование заранее заготовленных объектов с целью экономии памяти.
👨💻 Также произвёл большую работу по внедрению FSM, а точнее переписывание моего прошлого кода, под данный шаблон и времени потратил на это прилично.
📋 Ещё решил добавить к своим состояниям параметры (отдельные классы), чтобы расширить возможности врагов.
P.s.
💬 По секрету, у меня тут есть канальчик, куда я для себя скидываю полезные штуки по геймдеву, там есть материал, по которому я изучал темы.
#образовач
🏆 3 день марафона.
👁️ Сегодня разобрался с паттерном Observer, для тех кто не знает, он позволяет объектам следить за изменениями состояния другого объекта.
🔧 Реализовывать данный шаблон можно по разному, главное понять его смысл.
📖 Если что я рассмотрел два варианта.
⚙️ Первый, использовал класс Subject, который хранит наблюдателей.
⚙️ Второй вариант с использованием event (встроен в C#), который как мне кажется более лаконичный.
❗ Если вы уже работали с данным шаблоном и понимаете о чем я сказал выше.
❓ Хочу у вас спросить какой способ является лучше по вашему мнению или может есть какой-то более продвинутый алгоритм?
🧠 Ознакомится с уроками по данной теме можете здесь.
🖼️ Обновил аву чата.
P.s.
Я как-то ранее работал с этим паттерном при создании лаунчера, но сейчас решил более серьезно в это вникнуть.
#образовач
👁️ Сегодня разобрался с паттерном Observer, для тех кто не знает, он позволяет объектам следить за изменениями состояния другого объекта.
🔧 Реализовывать данный шаблон можно по разному, главное понять его смысл.
📖 Если что я рассмотрел два варианта.
⚙️ Первый, использовал класс Subject, который хранит наблюдателей.
⚙️ Второй вариант с использованием event (встроен в C#), который как мне кажется более лаконичный.
❗ Если вы уже работали с данным шаблоном и понимаете о чем я сказал выше.
❓ Хочу у вас спросить какой способ является лучше по вашему мнению или может есть какой-то более продвинутый алгоритм?
🧠 Ознакомится с уроками по данной теме можете здесь.
🖼️ Обновил аву чата.
P.s.
Я как-то ранее работал с этим паттерном при создании лаунчера, но сейчас решил более серьезно в это вникнуть.
#образовач
👋 Недавно я познакомился с крутым чуваком по имени Андрей. Он, недавно начал свой путь в IT и решил вести Telegram-канал. У него другое направление — фронтенд разработка и мне самому интересно следить за его прогрессом.
Кому интересен фронтенд, давайте поддержим молодого бойца 💪
Что тебя ждет на его канале:
🎥 Видео о каждом дне его учебы: делится прогрессом и трудностями на пути к новой профессии
🎮 Мемы и новости о мире программирования
💬 Советы и мотивация для начинающих разработчиков
https://t.me/it_s_null9
Кому интересен фронтенд, давайте поддержим молодого бойца 💪
Что тебя ждет на его канале:
🎥 Видео о каждом дне его учебы: делится прогрессом и трудностями на пути к новой профессии
🎮 Мемы и новости о мире программирования
💬 Советы и мотивация для начинающих разработчиков
https://t.me/it_s_null9
Telegram
IT вокруг меня 🌐
🔹Fullstack-разработка🔹
Веду дневник про IT в реальном времени:
🔸Путь от обучения до работы и своих SaaS продуктов
🔸Делюсь ошибками, победами, инструментами, AI, вайбкодингом
Ютюб: @IT_s_null9
Фриланс/Веб-проекты на заказ ЛС: @drown1
Веду дневник про IT в реальном времени:
🔸Путь от обучения до работы и своих SaaS продуктов
🔸Делюсь ошибками, победами, инструментами, AI, вайбкодингом
Ютюб: @IT_s_null9
Фриланс/Веб-проекты на заказ ЛС: @drown1
👌5
🏆 4 день марафона.
🎥 Сегодня углубился в изучение анимаций, а конкретно узнал как работают слои, маски, Blend tree, ранее ими не пользовался.
📽️ Посмотрел почти часовой ролик и понял, что ранее использовал только базовые возможности аниматора, ну что же буду исправляться.
🤓 А ещё чтобы не кормить вас одной теорией (это может надоесть) в выходные буду уже конкретно применять все полученные знания в игре.
📖 Возможно ещё начну расскрывать какие-то детали игры (типа сюжета).
🙃Как вам зомби-девочка, испытывал на ней возможности анимаций Unity.
😪 На этом всё.
🧠Как всегда весь материал здесь.
#образовач
🎥 Сегодня углубился в изучение анимаций, а конкретно узнал как работают слои, маски, Blend tree, ранее ими не пользовался.
📽️ Посмотрел почти часовой ролик и понял, что ранее использовал только базовые возможности аниматора, ну что же буду исправляться.
🤓 А ещё чтобы не кормить вас одной теорией (это может надоесть) в выходные буду уже конкретно применять все полученные знания в игре.
📖 Возможно ещё начну расскрывать какие-то детали игры (типа сюжета).
🙃Как вам зомби-девочка, испытывал на ней возможности анимаций Unity.
😪 На этом всё.
🧠Как всегда весь материал здесь.
#образовач
🤝7 1 1
🏆 5 день марафона.
💾 Сегодня тоже углубился в то, без чего не обойдется любая игра, а именно сохранение.
⚙️ И не просто с использованием PlayerPrefs, а изучил сериализацию данных в json либо бинарный вид.
👍 Штука оказалась очень полезной и делается довольно просто.
😅 По крайней мере раньше я думал что нужно будет самому преобразовывать (сериализовывать) данные в json, а оказывается можно использовать уже готовые языковые конструкции, что очень упрощает жизнь.
😏 Новости по игре совсем скоро)
📖 Кому нужно, то инфа тут.
#образовач
💾 Сегодня тоже углубился в то, без чего не обойдется любая игра, а именно сохранение.
⚙️ И не просто с использованием PlayerPrefs, а изучил сериализацию данных в json либо бинарный вид.
👍 Штука оказалась очень полезной и делается довольно просто.
😅 По крайней мере раньше я думал что нужно будет самому преобразовывать (сериализовывать) данные в json, а оказывается можно использовать уже готовые языковые конструкции, что очень упрощает жизнь.
😏 Новости по игре совсем скоро)
📖 Кому нужно, то инфа тут.
#образовач
🏆 6 день марафона.
😅 И сегодня я чутка запоздал с новостью (у меня так вообще 2 часа ночи)
👨💻 Просто решил сделать тг бота, для упрощения некоторых действий.
🧠 Ну а кроме этого я соблюдаю правила текущего марафона и изучаю что-то полезное.
⚙️ Сегодня изучил принцип Dependency Injection.
😌 Завтра выходной, так что буду заниматься игрой и постепенно внедрять туда всё, что изучил за прошедшее время.
📖 Почитать и посмотреть про DI.
#образовач
😅 И сегодня я чутка запоздал с новостью (у меня так вообще 2 часа ночи)
👨💻 Просто решил сделать тг бота, для упрощения некоторых действий.
🧠 Ну а кроме этого я соблюдаю правила текущего марафона и изучаю что-то полезное.
⚙️ Сегодня изучил принцип Dependency Injection.
😌 Завтра выходной, так что буду заниматься игрой и постепенно внедрять туда всё, что изучил за прошедшее время.
📖 Почитать и посмотреть про DI.
#образовач
🏆 7 день марафона.
🧠 Сегодня просто повторял изученное за прошедшую неделю.
🤬 А ещё получил дохреналион ошибок прямо в лицо.
🥴 И вообще не могу понять почему переменная становится null, уже и проверку сделал, а ей всё равно.
👨💻Буду завтра разбираться.
❗ Либо если кто-то знает почему так, то буду рад выслушать вас по этому поводу.
🧠 Сегодня просто повторял изученное за прошедшую неделю.
🤬 А ещё получил дохреналион ошибок прямо в лицо.
🥴 И вообще не могу понять почему переменная становится null, уже и проверку сделал, а ей всё равно.
👨💻Буду завтра разбираться.
❗ Либо если кто-то знает почему так, то буду рад выслушать вас по этому поводу.
🤔8 1
😀 Ну наконец-то я избавился от ошибки, а стоило просто перестать наследоваться от Mono behaviour в классе EnemyData.
👨💻 Сейчас приступил к созданию нового врага, конкретно пишу состояния для него, т.к. они уже отличаются от состояния патрульного.
😅 Но проверить не могу, т.к. юнька зависла, не стоило мне переписывать код во время запуска игры.
👨💻 Сейчас приступил к созданию нового врага, конкретно пишу состояния для него, т.к. они уже отличаются от состояния патрульного.
😅 Но проверить не могу, т.к. юнька зависла, не стоило мне переписывать код во время запуска игры.
👾9 1
❓ Так в чем же скрывалась ошибка?
2️⃣ Во первых два раза вызывать Random.Range(), как-то глупо.
♾️ Во вторых выполнение того кода вызывало бесконечный цикл из-за чего игра и юнька у меня жёстко зависали.
😢 Из-за этого я сегодня большую часть дня потратил на поиск этой ошибки.
👨💻 Но также я обновил мой код, таким образом, чтобы врагу можно было добавлять нужные параметры.
⚙️ _data.AddProperty(/*сюда кидаю экземпляр нужных свойств*/);
🙃 Тот шарик, который меняет свои размеры, новый враг поведение на видео тестовое, чтобы проверить не накосячил ли я где-то.
2️⃣ Во первых два раза вызывать Random.Range(), как-то глупо.
♾️ Во вторых выполнение того кода вызывало бесконечный цикл из-за чего игра и юнька у меня жёстко зависали.
😢 Из-за этого я сегодня большую часть дня потратил на поиск этой ошибки.
👨💻 Но также я обновил мой код, таким образом, чтобы врагу можно было добавлять нужные параметры.
⚙️ _data.AddProperty(/*сюда кидаю экземпляр нужных свойств*/);
🙃 Тот шарик, который меняет свои размеры, новый враг поведение на видео тестовое, чтобы проверить не накосячил ли я где-то.
👾 Поговаривают, что в городе появился новый враг...
Когда-то он был лишь одним из многих сторожевых дронов, но во время производства что-то пошло не так. 💥 Надпись на корпусе "404 Error" говорит сама за себя — данные стерлись, оставив его в замешательстве, но не без защиты. 🛡️ Теперь этот сентинел — смесь робота, паука и спрута — патрулирует город, следя за каждым шагом тех, кто осмелится приблизиться. 🚶♂️🚶♀️
🕷️ Его щупальца, словно живые, двигаются с невероятной точностью, а сенсоры-датчики служат его глазами, отслеживая каждое движение вокруг. 👀 От его атаки не так просто уйти, но у него есть одна слабость, о которой ходят слухи. 🔍 Во время сборки ему поставили дефектную батарею — и теперь сентинел вынужден постоянно искать источник энергии. ⚡ Этот сбой делает его зависимым от частой подзарядки, и это единственный шанс остановить его. ⏳
❓ Будешь ли ты готов воспользоваться этой возможностью, когда придёт момент? 🤔
#враг #анонс
Когда-то он был лишь одним из многих сторожевых дронов, но во время производства что-то пошло не так. 💥 Надпись на корпусе "404 Error" говорит сама за себя — данные стерлись, оставив его в замешательстве, но не без защиты. 🛡️ Теперь этот сентинел — смесь робота, паука и спрута — патрулирует город, следя за каждым шагом тех, кто осмелится приблизиться. 🚶♂️🚶♀️
🕷️ Его щупальца, словно живые, двигаются с невероятной точностью, а сенсоры-датчики служат его глазами, отслеживая каждое движение вокруг. 👀 От его атаки не так просто уйти, но у него есть одна слабость, о которой ходят слухи. 🔍 Во время сборки ему поставили дефектную батарею — и теперь сентинел вынужден постоянно искать источник энергии. ⚡ Этот сбой делает его зависимым от частой подзарядки, и это единственный шанс остановить его. ⏳
❓ Будешь ли ты готов воспользоваться этой возможностью, когда придёт момент? 🤔
#враг #анонс
This media is not supported in your browser
VIEW IN TELEGRAM
👀 На анонс вы посмотрели, а вот и демонстрация его ИИ.
🖌️ Пока что это просто белый пузырь, но как-то только враг будет отрисован, сразу добавлю.
🔋 Как вы уже поняли Сентинелу нужна подзарядка и это его ключевая фишка, он может разрядиться пока гонится за вами, либо пока охраняет свою территорию.
🟢 Поле возле него добавил, для демонстрации того, как он ищет ближайшую станцию подзарядки, в игре такого поля разумеется не будет.
👾 Также для данного врага вижу много разных возможностей например он может возвращаться не только на изначальную точку после зарядки, но и искать точку для охраны подобно тому, как ищет станцию подзарядки.
👨💻А и ещё понял, что мне придется для врагов делать алгоритм поиска кратчайшего пути.
😅 Потому что сейчас они двигаются напрямую к заданной точке и это как бы не совсем корректно.
🖌️ Пока что это просто белый пузырь, но как-то только враг будет отрисован, сразу добавлю.
🔋 Как вы уже поняли Сентинелу нужна подзарядка и это его ключевая фишка, он может разрядиться пока гонится за вами, либо пока охраняет свою территорию.
🟢 Поле возле него добавил, для демонстрации того, как он ищет ближайшую станцию подзарядки, в игре такого поля разумеется не будет.
👾 Также для данного врага вижу много разных возможностей например он может возвращаться не только на изначальную точку после зарядки, но и искать точку для охраны подобно тому, как ищет станцию подзарядки.
👨💻А и ещё понял, что мне придется для врагов делать алгоритм поиска кратчайшего пути.
😅 Потому что сейчас они двигаются напрямую к заданной точке и это как бы не совсем корректно.
Кодерские работы
👀 На анонс вы посмотрели, а вот и демонстрация его ИИ. 🖌️ Пока что это просто белый пузырь, но как-то только враг будет отрисован, сразу добавлю. 🔋 Как вы уже поняли Сентинелу нужна подзарядка и это его ключевая фишка, он может разрядиться пока гонится за…
🤯 Мне пришла гениальная мысль.
💪 Станции подзарядки могут давать баффы для сентинелов.
🔋 Допустим подзарядился и объем батареи увеличился, либо скорость/здоровье увеличилось, но работает только одноразово.
💪 Станции подзарядки могут давать баффы для сентинелов.
🔋 Допустим подзарядился и объем батареи увеличился, либо скорость/здоровье увеличилось, но работает только одноразово.
🤩5
👾 Я вас услышал, один из баффов уже добавил, он прибавляет продолжительность работы для батареи.
⚙️ Так же думаю реализовать разные уровни зарядных станций, чтобы не только разные эффекты накладывались, но и разная эффективность была.
🔋 На втором видео враг сам себя развлекает)
⚙️ Так же думаю реализовать разные уровни зарядных станций, чтобы не только разные эффекты накладывались, но и разная эффективность была.
🔋 На втором видео враг сам себя развлекает)
👾5 4