TGViewer
DenisMasterHerobrine | Уголок одного программиста... DenisMasterHerobrine | Уголок одного программиста... @dmhdev · 2.71K subscribers
Post #1107 3.91K
Делать было нечего, дело было вечером...

В один прекрасный день, я столкнулся с тем, что мне нужны структуры, причём нужно структуры вставлять в мир и причём огромные. Под огромными имею в виду не структуры на сотни или тысячи блоков, а на миллионы блоков. Немного поэкспериментировав, разочаровался в беспомощности кубача.

Не поверите, но при вставке структуры или попытке спавна таковой - захлёбывается очередь установки света. Буквально игра в один поток пытается поместить миллиарды операций и одну структуру оно обрабатывать будет дай бог в лучшем случае если полчаса. Меня это не устраивало и я начал думать, что мне делать с этим.

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

Пошёл искать в интернете, может кто-то что-то делал в этом направлении? Да, в интернете оказалось всего ОДНО существующее решение. Но оно мне не подошло, потому что оно конфликтует с частью модов. Да и реализация мне как-то не особо понравилась, почитал техническую записку от оригинального автора и это оказался почти тот же ванильный алгоритм, но получше. А потом это стало форком форка мода. Да, я не опечатался.

Так что, какие бы мне карты не сдала судьба, я решил идти ва-банк. Если это нормально не сделал никто, то почему бы не попытаться сделать самому?

Спустя долгое время. Не без множества итераций и бессонных ночей... У меня это получилось. И я решил поделиться этим с миром.

Встречайте, полноценный самостоятельный движок света Lucis!

Движок сам по себе спроектирован так, чтобы свет просчитывался максимально быстро, был потокобезопасным, легко масштабируемым и насколько возможно лёгким. Он по умолчанию быстрее ванильного решения в 8-12 раз и может легко масштабироваться и не устраивать гонки данных.

Доступен для версий 1.21.1, 26.1.2 и 26.2 для загрузчиков Fabric и NeoForge.
Крушите, ломайте, тестируйте на прочность, ищите баги. Буду рад любому фидбеку про движок и ваше мнение. Движок ещё и с открытым исходным кодом под лицензией LGPLv3, можете засрать за говнокод или закидать томатами в лицо, если хотите.

Мод даст больше производительности на сервере, но можно также и поставить на клиент.

Скачать мод:
CurseForge
Modrinth (на модерации, появится позже)
  • ❤ 76
  • 🔥 19
  • 🤣 7
  • 👍 3
More from @dmhdev
  1. Sep 21, 2026Для тех, кто застал мои стримы по Destiny 2, застал мои стримы в 2023 и 2024 годах. Разраб…
  2. Sep 20, 2026Ладно, вот реальное собрание.
  3. Sep 20, 2026Тем временем, переговоры в Парадизе. Потому что конфликт был не Парадиза.
  4. Sep 19, 2026Пойдём чисто поделаем заводы. Завозов не будет. Но это не точно. А может позавозить...? Да…
  5. Sep 14, 2026Не могу пройти мимо. Там Steam Frame анонсировали. Но 1059 долларов за базовое издание, 60…
  6. Sep 13, 2026А теперь немного вестей с полигона оптимизации.. Поскольку возникла надобность в тысячах о…
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 →