TGViewer
Kozlov Dev - Разработка игр Kozlov Dev - Разработка игр @kozlovdev · 4.1K subscribers
Post #827 1.54K
🔥 Структуры и проблема с поворотом

Всем привет! Сегодня хочу рассказать про жёсткий баг, на который наткнулся при реализации поворота структур.

✔️ Чтобы структуры выглядели разнообразнее, нужно уметь размещать их в разных направлениях.
Сам поворот реализовать несложно: мы просто переставляем данные массива местами в зависимости от направления и готово.

😭 Но если в структуре используются блоки, у которых есть состояние направления (ступеньки, лестницы, сундуки, кровати и т. д.), то они начинают ломаться, потому что при повороте мы не меняем их мета данные.

🙂 Раньше мета блока у меня хранилось в 1 байте (для оптимизации): я делил его на биты и упаковывал туда всё, что нужно. Например для блока двери в первом бите хранил открыта или закрыта дверь, далее два бита были на поворот от 0 до 3, следующий бит был на то какая часть двери верх или низ и т.д. Но из-за этого было сложно работать с метой блока из вне, чтобы ее подредактировать на тех же поворотах

😍 После большого рефакторинга я избавился от «байтовой меты» и перенёс систему на отдельные состояния. Теперь можно легко добавлять новые состояния блока и получать к ним доступ по ключу.

👍 И уже благодаря этой системе я могу быстро определить, есть ли у блока состояние направления, и при повороте структуры менять его вместе с блоком. Из-за этого все «поворотные» блоки начинают корректно располагаться внутри структуры.

P.S Прикрепил скрины бага структур, а так же примеры конфигурации состояний блока в компонентах двери и ступеньки 📌
  • 🔥 20
  • ❤ 6
  • 👍 6
  • 🤯 1
More from @kozlovdev
  1. Sep 23, 2026Новости по Сloud. 👨‍💻 Так как мы работаем с тестировщиками, у них появляются потребности…
  2. Sep 19, 2026😎 Стартуем эвент SCREENSHOT SATURDAY! ❗️ Переходите в наш Game Dev чатик 🔜 ссылка, делит…
  3. Sep 16, 2026На прошлой недели созванивались с тестерами по поводу аналитики в Cloud. 👀 Кто не в курсе…
  4. Sep 12, 2026😎 Стартуем эвент SCREENSHOT SATURDAY! ❗️ Переходите в наш Game Dev чатик 🔜 ссылка, делит…
  5. Sep 9, 2026Post #1052
  6. Sep 5, 2026😎 Стартуем эвент SCREENSHOT SATURDAY! ❗️ Переходите в наш Game Dev чатик 🔜 ссылка, делит…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →