This media is not supported in your browser
VIEW IN TELEGRAM
👌 Наконец-то проект починил, для решения проблемы пришлось перейти на Unity 6.
👾 Для тех, кто не шарит, это самая новая версия движка, которая релизнулась буквально пару недель назад.
👨💻 Поэтому в разработке игры есть некоторые продвижения.
🗺️ Написал скрипт, который делит один большой тайлмап на более мелкие - чанки, нужного мне размера.
🎮 Скоро покажу, как работает в игре подгрузка чанков.
🎥 Код уже написан и всё работает, но с записью процесса возникли проблемы.
👾 Для тех, кто не шарит, это самая новая версия движка, которая релизнулась буквально пару недель назад.
👨💻 Поэтому в разработке игры есть некоторые продвижения.
🗺️ Написал скрипт, который делит один большой тайлмап на более мелкие - чанки, нужного мне размера.
🎮 Скоро покажу, как работает в игре подгрузка чанков.
🎥 Код уже написан и всё работает, но с записью процесса возникли проблемы.
👏8🤯2
👾 Загрузка чанков готова.
🐢 Первый вариант подгрузки был очевидно прост, но очень ресурсозатратный — перебор всех чанков с проверкой, насколько близко игрок. ФПС от этого, мягко говоря, пострадал и качался где-то на уровне 1.
🗑️ Поэтому быстро отмёл эту идею и приступил к другой реализации.
📌 Суть в чем: теперь каждый чанк окружен коллайдером-триггером. Как только игрок входит в зону триггера — чанк активируется, выходит — рендер прекращается.
🏎️ Так сказать чутка добавил оптимизации, для начала сойдет.
🚶♂️ При перемещении по миру переход незаметен, потому что буферная зона коллайдера чуть больше самого чанка.
🎥 Первое видео, попытки отладить, найти подходящие параметры, второе видео более менее конечный вариант.
🐢 Первый вариант подгрузки был очевидно прост, но очень ресурсозатратный — перебор всех чанков с проверкой, насколько близко игрок. ФПС от этого, мягко говоря, пострадал и качался где-то на уровне 1.
🗑️ Поэтому быстро отмёл эту идею и приступил к другой реализации.
📌 Суть в чем: теперь каждый чанк окружен коллайдером-триггером. Как только игрок входит в зону триггера — чанк активируется, выходит — рендер прекращается.
🏎️ Так сказать чутка добавил оптимизации, для начала сойдет.
🚶♂️ При перемещении по миру переход незаметен, потому что буферная зона коллайдера чуть больше самого чанка.
🎥 Первое видео, попытки отладить, найти подходящие параметры, второе видео более менее конечный вариант.
❤6 1
💬 Хочу позвать вас в один интересный канал, где я тоже есть!
👾 Его цель — объединить всех девелоперов и их зрителей в одно большое, дружное комьюнити.
💻 Там сможете следить за интересными проектамии просто знакомиться с людьми, которые так же интересуются разработкой.
😏 Присоединяйтесь, обязательно(если интересно) -> тут
👾 Его цель — объединить всех девелоперов и их зрителей в одно большое, дружное комьюнити.
💻 Там сможете следить за интересными проектамии просто знакомиться с людьми, которые так же интересуются разработкой.
😏 Присоединяйтесь, обязательно
Telegram
Develop Community👨💻
Здесь люди делятся своими успехами от лица своего канала👨💻
Запрос на админа для дропа постов :
@pentinol_helpik_bot
Запрос на админа для дропа постов :
@pentinol_helpik_bot
✌️ Решено, стрим на этой неделе на Ютубе.
🎥 В какой день вам будет удобно?
🎥 В какой день вам будет удобно?
Final Results
47%
👾 Суббота
53%
🎮 Воскресенье
This media is not supported in your browser
VIEW IN TELEGRAM
🤔 Как думаете, чем я здесь занимаюсь?
🙃 Не обращайте внимания на ФПС. Запись+игра много ресурсов от ноута требует, а он не вывозит чутка)
Кодерские работы
✌️ Решено, стрим на этой неделе на Ютубе.
🎥 В какой день вам будет удобно?
🎥 В какой день вам будет удобно?
👾 В воскресенье, так в воскресенье, буду ждать вас и готовиться сам)
🤝1
⌛ В какое время будет удобно присутствовать на стримчанском (по МСК)?
Final Results
29%
13:00 - 15:00
24%
15:00 - 17:00
47%
17:00 - 19:00
Кодерские работы pinned «⌛ В какое время будет удобно присутствовать на стримчанском (по МСК)?»
Кодерские работы
👾 Optimization. 🇬🇧 Perfect English 🔥 Ставьте много (10) реакций расскажу что тут происходит и как я этого добился.
🔥 Подогрею ваш интерес, чтобы ставили реакции)
P.s. Молодцы, что набрали, я щас немного на учебе, как освобожусь дам вам инфу)
P.s. Молодцы, что набрали, я щас немного на учебе, как освобожусь дам вам инфу)
👾7 2
1️⃣ Полная отрисовка
В режиме полной отрисовки весь тайлмап всегда активен и постоянно отрисовывается, вне зависимости от того, находится ли игрок рядом или нет.
📊 Результат: FPS — 17.9, CPU загрузка — 56.0ms.
🏁 Итог: Способ не подходит, т.к. даже при пустой карте ФПС низкий
2️⃣ Частичный рендер — оптимизация первого уровня
Здесь карта остается активной, но рендерятся только те объекты, которые находятся рядом с игроком. Это снижает нагрузку за счет отключения рендеринга дальних объектов, которые игрок не видит.
🔹 Принцип работы: При удалении объектов от игрока (например, за пределами видимости) их рендеринг отключается, хотя сами объекты остаются активными. Такой подход уменьшает количество треугольников и вершин в кадре.
🔹 Недостатки: Хотя это снижает нагрузку на графический процессор, активные объекты по-прежнему используют память и CPU ресурсы, даже если они не рендерятся.
📊 Результат: FPS — 34.2, CPU загрузка — 29.2ms.
🏁 Итог: Уже получше, но можно еще добавить отимизации)
В режиме полной отрисовки весь тайлмап всегда активен и постоянно отрисовывается, вне зависимости от того, находится ли игрок рядом или нет.
📊 Результат: FPS — 17.9, CPU загрузка — 56.0ms.
🏁 Итог: Способ не подходит, т.к. даже при пустой карте ФПС низкий
2️⃣ Частичный рендер — оптимизация первого уровня
Здесь карта остается активной, но рендерятся только те объекты, которые находятся рядом с игроком. Это снижает нагрузку за счет отключения рендеринга дальних объектов, которые игрок не видит.
🔹 Принцип работы: При удалении объектов от игрока (например, за пределами видимости) их рендеринг отключается, хотя сами объекты остаются активными. Такой подход уменьшает количество треугольников и вершин в кадре.
🔹 Недостатки: Хотя это снижает нагрузку на графический процессор, активные объекты по-прежнему используют память и CPU ресурсы, даже если они не рендерятся.
📊 Результат: FPS — 34.2, CPU загрузка — 29.2ms.
🏁 Итог: Уже получше, но можно еще добавить отимизации)
❤4 1
3️⃣ Выборочная загрузка и рендеринг — максимальная оптимизация, до которой я додумался
В этом режиме активны и отрисовываются только чанки рядом с игроком, а остальные полностью отключены. Это решение дает лучший баланс производительности и использования ресурсов.
🔹 Принцип работы: Объекты вокруг игрока активируются и рендерятся, а когда игрок отдаляется, они деактивируются. При этом неактивные объекты не потребляют ресурсы, поскольку они полностью отключены.
🔹 Преимущества: Этот способ обеспечивает большую оптимизацию за счет меньшей нагрузки на CPU и GPU. Это отличный вариант для меня, лучше пока не придумал.
📊 Результат: FPS — 44.4, CPU загрузка — 22.5ms.
🛠 Оптимизация чанков: изнутри 🛠
Когда игрок приближается к тригеру чанка, мы активируем его рендеринг и включаем соседние чанки:
Когда игрок уходит, мы отключаем чанк и его ненужных соседей через отложенную деактивацию, чтобы избежать резких переходов:
⚙️ Как-то так и работает)
В этом режиме активны и отрисовываются только чанки рядом с игроком, а остальные полностью отключены. Это решение дает лучший баланс производительности и использования ресурсов.
🔹 Принцип работы: Объекты вокруг игрока активируются и рендерятся, а когда игрок отдаляется, они деактивируются. При этом неактивные объекты не потребляют ресурсы, поскольку они полностью отключены.
🔹 Преимущества: Этот способ обеспечивает большую оптимизацию за счет меньшей нагрузки на CPU и GPU. Это отличный вариант для меня, лучше пока не придумал.
📊 Результат: FPS — 44.4, CPU загрузка — 22.5ms.
🛠 Оптимизация чанков: изнутри 🛠
Когда игрок приближается к тригеру чанка, мы активируем его рендеринг и включаем соседние чанки:
tilemapRenderer.enabled = true;
public void ActivateNeighbour()
{
foreach (Chunk chunk in neighborChunks)
{
chunk.gameObject.SetActive(true);
}
}
Когда игрок уходит, мы отключаем чанк и его ненужных соседей через отложенную деактивацию, чтобы избежать резких переходов:
private IEnumerator DeactivateTime(float time)
{
yield return new WaitForSeconds(time);
tilemapRenderer.enabled = false;
DeactivateNeighbour();
}
⚙️ Как-то так и работает)
🔥4 1
Кодерские работы
3️⃣ Выборочная загрузка и рендеринг — максимальная оптимизация, до которой я додумался В этом режиме активны и отрисовываются только чанки рядом с игроком, а остальные полностью отключены. Это решение дает лучший баланс производительности и использования…
Вот здесь как раз видно, что активных чанков куда меньше.
LWT.apk
36.1 MB
⚙️ Ребят, вот вам пре пре пре альфа.
🎮 Скажите, у кого запускается игра, т.е. видно меню.
🐞 А то я протестировал на двух телефонах и на одном просто черный экран.
P.s. Если игра при нажатии на "Play" зависает, это не баг)
🎮 Скажите, у кого запускается игра, т.е. видно меню.
🐞 А то я протестировал на двух телефонах и на одном просто черный экран.
P.s. Если игра при нажатии на "Play" зависает, это не баг)
❤4
Pixel Dystopia
<unknown>
🎸 Прочувствуйте вайб битвы с боссом первого уровня.
👾 Босса ещё нет, а музыкальная атмосфера уже есть!
👾 Босса ещё нет, а музыкальная атмосфера уже есть!
🔥8
❗Завтра стрим в 18:00 по МСК❗
👋 Всем добрейший вечерок.
👨💻 Сегодня у меня прям нагруженный день, утром экзамен, а сейчас активная подготовка к стриму.
🎮 Уже выбрал игру для стрима, картинка это пасхалка)
☺️ Так что буду рад всех видеть и пообщаться с вами.
⚙️ Пойду дальше настраивать нужные программы.
🌐 Все ссылочки будут завтра.
👋 Всем добрейший вечерок.
👨💻 Сегодня у меня прям нагруженный день, утром экзамен, а сейчас активная подготовка к стриму.
🎮 Уже выбрал игру для стрима, картинка это пасхалка)
☺️ Так что буду рад всех видеть и пообщаться с вами.
⚙️ Пойду дальше настраивать нужные программы.
🌐 Все ссылочки будут завтра.
❤4 1 1