S.T.A.L.K.E.R.: New Project - Внедрение многопоточности

2025-05-02 16:42:07

> Давняя проблема с отсутствием многопоточности в оригинальном движке X-Ray сильно ограничивала модмейкеров в творчестве, вынуждая сокращать уровень детализации своих проектов в угоду приемлемому FPS. Говоря простыми словами, огромное количество сложных вычислительных задач игры «сливались в бутылочное горлышко», что значительно замедляло их совокупную обработку, и как следствие — заметно снижало FPS при в высоко детализованных сценах.

Однако в последние несколько лет многие программисты известных проектов вселенной STALKER в той или иной степени решили проблему путём глубокой модификации движка, создав возможность распределения задач по нескольким вычислительным потокам

История проблемы
Оригинальный движок X-Ray не обладал какой-либо значимой многопоточностью. В частности, движок игры располагал всего двумя потоками для подготовки и отрисовки кадра: основной, который выполнял ~95% всех задач, и вспомогательный, выполняющий небольшие периферийные задачи.

Оригинальный движок хорошо справлялся с отрисовкой большинства игровых сцен оригинальной трилогии. Однако для сложных и высоко детализированных модификаций, не говоря уже о масштабных аддонах, возможностей оригинального X-Ray было недостаточно.

Разработка системы многопоточности
Команда S.T.A.L.K.E.R.: New Project разработала собственный планировщик распределения и выполнения многопоточных задач, который способен правильно распределить задачи по имеющимся потокам, учитывая их загруженность и приоритеты задач. Так же была проведена очень трудоемкая и сложная работа по адаптации оригинального кода под возможность параллельного выполнения большого количества вычислительных задач.
Проделанная работа дала свои плоды и FPS значительно вырос. Разницу можно увидеть на скриншотах ниже
1) Без многопотока [FPS: 9] 2) Вкл. многопоточность только ориг. движка [FPS: 14] 3) Вкл. многопоточность для New Project [FPS: 73]

Таким образом благодаря системе многопоточности разработчикам удалось настолько сильно повысить производительность движка игры, что дало возможность реализовать все идеи по level-дизайну и геймплею без ущерба производительности.
Источник: S.T.A.L.K.E.R.: New Project

оригинальный X-Ray был достаточен для 2000х, понятно что он не тянет современные модификации с улучшенной графикой, ИИ и скриптами,, было бы полезно упомянуть, какие именно подсистемы теперь работают в потоках , например- ИИ, анимации, звуки, физика?
кстати в оригинале версии 1.0-1.6, включая ТЧ, ЧН, ЗП были однопоточными, а модернизированные версии движка OGSR, EFP, Anomaly, OP-2.2 используют многопоточность

2025-05-03 21:24:24

Только многопоточность там максимально условная. То, что движки 64-битные, ещё не значит, что потоки нормально будут использоваться

2025-05-30 21:57:15

Полноценного распределения нагрузки по ядрам как в движках типо Unreal engine или Decima engine конечно там нет. Несколько знаю  в отдельные потоки идут- аудио, физика, логика маркеров передвижения,  скрипты несложные могут входить, типо спавна, диалогов начальных, чисто разгрузить основной поток.  Практический весь AI и сюжетные геймплейные скрипты по прежнему в главном потоке. 
Улучшение есть, но кардинального прироста особо нет, согласен.

2025-05-31 09:59:05

однако хотел бы добавить, что в тех же Ogsr, Anomaly, Op 2.2 данная "условная" многопоточность даёт хоть и ограниченный, но реальный прирост произволдительности особенно в ситуациях, где можно частично разгрузить основной поток, по fps это очень заметно видно как в закрепленных скринах, то есть fps поднимается и до 50% что просто замечательно

2025-05-31 10:10:06
Вы не можете отправлять комментарии так, как не АВТОРИЗОВАНЫ
> Керчик-Перчик, программу, а то на медиагет сижу
2025-10-03 15:23:59
> Djetch, Или программу?0_0
2025-10-03 08:56:06
> Djetch, в смысле, сайт?
2025-10-03 08:55:45
Посоветуйте какой нибудь торрент
2025-10-03 08:12:33
А, кажется я понял, в чём подвох. один из них погиб, а Бродяга со мной говорить не хочет. Вот и получается...
2025-10-02 22:09:32
Со свободовцами они решили тоже не церемониться. охренеть! а что делать то😄?
2025-10-02 22:07:48
короче капец😄. хотел присоединить монолитовцев к долгу, так они их тут же атаковали. я даже охренеть не успел😆
2025-10-02 22:01:19
> ДедЯги975, ну я в лс кинул на всякий
2025-10-02 20:54:16
Что-то я слишком быстро нашёл золотую рыбку и пузырь. хотя я даже до юпитера не добрался
2025-10-02 17:52:49
> Leshenskiy, давай, гляну
2025-10-02 17:43:39
> Ognom, если у меня скрины где-нибудь остались (я на телефон фоткал), то скину в лс, всё поймёшь
2025-10-02 17:42:01
🤨.
2025-10-02 17:41:31
> Leshenskiy, да я в сетевую как правило не играю. а что там, если не секрет
2025-10-02 17:36:33
> Ognom, да я прекрасно знаю, что можно. Ты попробуй как-нибудь, только если на русофобский сервер наткнёшься, постарайся не умереть от кринжа
2025-10-02 17:35:05
когда используешь контекстное меню - не можешь ходить. Это когда в рюкзаке на предмете нажимаешь правую кнопку мыши
2025-10-02 17:28:34
> Leshenskiy, извини, ты про сетевую. в ванили вроде можно
2025-10-02 17:21:08
> Leshenskiy, там только если через документы
2025-10-02 17:20:45
> Ognom, я нашёл халяву, всю трилогию🤪
2025-10-02 17:10:02
> Ognom, а в ванили? Особенно ЧН
2025-10-02 17:08:55
> Leshenskiy, а её тут вроде как и нету
2025-10-02 17:07:40
Авторизация