𝐑𝐨𝐨𝐭𝐓𝐨𝐨𝐥 𝐁𝐥𝐨𝐠
194 subscribers
570 photos
48 videos
5 files
60 links
ニャン
Download Telegram
Йееу, аппарат на оценочку

⚡А фото в реке ждите в RootTool Blog+
❤7⚡2🕊1
Да что эта ваша штука под названием сон... У меня дедлайны

Но кстати, я все успел прям в срок :)

(И Акира с такой же грустью смотрит на время..)

А кто думал, что проект загнулся? Нее. Раньше я мог показывать какие-то простые/базовые механики, а сейчас боюсь все стало таким классным, что лучше придержим это ) 👀
❤6🤔1🫡1
This media is not supported in your browser
VIEW IN TELEGRAM
[Владелец канала получил некритические серьезные повреждения мозга]
🥰7
Такс, немного проясню ситуацию:
Я живой. Мы живы. Проект существует.

В первую очередь хотелось бы наконец-то поздравить наш блог уже с 50-ю подписчиками! Для меня большая честь видеть всех вас тут, в своем скромном канальчике про программирование

Во вторых спустя почти 7 дней прокрастинации после школы (вытянул литературу и английский язык из балла 2.3 в 3-ку за год, ура.......), и отдохнув в лесу я наконец могу рассказать что происходит сейчас в проекте - а тут есть о чем рассказать

Сделаю полный редизайн постов, чтобы было что вспомнить. Надеюсь начинающим программистам это будет полезно (та и вы не стесняйтесь спрашивать у меня под постами..)

И под конец заспойлерю - будет немало кода и много рассказа про разные компоненты и классы в проекте, поэтому от объективной критики я не откажусь =)
❤6🔥1🤝1
APS_WorldSettings

Родительский класс: AWorldSettings

Описание: Родительский класс является актором (первая буква говорит, что это актор и он хранится на уровне). Родительский класс находится на каждом уровне. Его нельзя настроить через viewport, а доступ к нему происходит от окна "World Settings"

Как понятно из названия, он хранит лишь настройки для каждого уровня (а.к.а. World), а настраивается через окно в самом движке. Конкретно мой класс добавляет пару постоянных опций, по типу "Включен ли Солвер Ган? Фонарик? Загрузчик уровней?", а также через него настраивается состояние Discord Rich Presence (это та штука в дискорде, показывающая во что играет твой кент сейчас)

Так как я работаю не один, то для команды добавлено предупреждение, что отключение загрузчика уровня может повлечь за собой серьезные баги при переходе между уровнями.
А вот нечего было отключать, работает не трогай ;]
(P.S. Отключение загрузчика полезно для быстрого теста определенного уровня, без необходимости ждать пока он прогрузится)

Функции:
- Хранения параметров для данного уровня (и для последующего доступа к ним извне)
- Обновление состояния Discord Rich Presence.
- Настройка фоновой музыки на уровне (плейлист из нескольких аудиофайлов, запущенных поочерёдно)

Особенности: После создания класса и успешной компиляции, в настройках проекта (Project Settings) есть графа "World Settings Class", если все сделано правильно - то кроме стандартного класса World Settings, можно выбрать собственный/кастомный класс. Затем перезапустите движок и бинго!

Про что рассказать в следующий раз?
❤‍🔥4🔥1💋1
Лайфхак №0
Упрощенный способ вызов анимаций через код

Знаете то осознание, когда нужно написать код для какой-нибудь кнопки, выдвижному ящику, дверной ручке или окну, а голову лезят идеи использовать Animation Blueprint, State Machines и десятки костылей?


Так вот, т.к. я ленивая жэпа это долго, то есть такой интересный способ:
- Будем использовать USkeletalMeshComponent, в котором уже есть необходимые инструменты для запуска анимаций (Закреп 1)
- Выставляем анимацию и запускаем (Закреп 2)

И результат на закрепе 3

Всем спасибо, хорошего дня!

Но это старый вариант - анимация будет вечно перезапускаться и странно себя вести если не доиграет (А я напомню - мы тут без сверхъестественного Animation Blueprint), так что введем небольшой хотфикс (Закреп 4):
- Перед заменой анимации на новую, с текущей анимации сохраняем позицию (на каком кадре)
- Заменяем анимацию на новую, выставляем ей скорость-направление
- И после (перед запуском) выставляем сохраненную позицию на новой анимации (Т.К. При выставлении новой анимации, позиция сбрасывается в 0, то есть в начало анимации)
- А затем можно и запустить проигрывание анимации

Как видно - новый вариант гораздо приятнее на глаз (Закреп 5), и реализуется без всяких Animation Blueprint и State Machines (Вот бы я знал это год назад, еще в Демо, эх...)

Я так заюзал почти во всех элементах игры, где нужен вызов простых анимаций (Панели, двери, кнопки и т.д.)

Но а так как я тот еще редкий вид активно-прокрастинирующих, то анимации на Солвер Гане тоже работаю через код - если новый формат постов приживется, то как-нибудь расскажу про это =]
🔥4
Абсолютно неожиданна ночная поездка на велосипеде

А потом спрашивают, почему я такой сонный :D
❤‍🔥8😁2😴1🆒1