SkyLoader 71 Опубликовано 21 февраля (изменено) Универсальные 64-х битные компиляторы уровней Оригинальные компиляторы разработаны: GSC Game worldПравки компиляторов и сборка: SkyLoaderБлагодарности: Abramcumner, K.D. Состав компиляторов: Компилятор геометрии [ТЧ, ЧН, ЗП] Компилятор травы [ТЧ, ЧН, ЗП] Компилятор АИ-сетки [ТЧ, ЧН, ЗП] Сборщик спавна [ЗП] Основные изменения: Поддержка x64 Поддержка основных игр серии (за исключением форматов спавна) Все компиляторы объединены в одно приложение Интерфейс полностью переписан на WinForms Добавлено меню компилятора, в котором можно выбрать проект уровня, выставить определенные настройки и запустить компиляцию Добавлена система сохранения и загрузки настроек последних проектов Создаваемое количество потоков теперь не фиксировано, а зависит от количества ядер процессора Произведен переход на библиотеку DirectXTex на замену устаревшим FreeImage и nvDXT Убран просчет RGB и Sun компонентов освещения и оставлен только Hemi Проведена работа по распоточиванию некоторых фаз компиляции и распоточиванию кода сторонних библиотек Интегрирован Discord Rich Presence для возможности следить за статусом компиляции на удаленном ПК Добавлена возможность автоматически выключить ПК после компиляции Реализован прогресс бар на панели задач для отображения состояния текущей фазы компиляции при свернутом приложении Добавлены ключи для ускоренной компиляции уровней в целях тестирования Добавлены экспериментальные ключи для отключения некоторых фаз компиляции и установки параметров в обход параметров СДК Добавлены основные изменения прошлых компиляторов Расширен вывод информации по некоторым ошибкам Исправлены некоторые вылеты оригинальных компиляторов Для работы требуется установленный Microsoft Visual C++ 2017 Redistributable х64. Внимание: в данном компиляторе по умолчанию отключено запекание статического света и статических теней солнца. Для включения запекания этих компонентов необходимо использовать соответствующий ключ, указанный в описании. Спойлер Для компиляции геометрии уровня: -geometry -f имя_уровня -version название_версии (shoc/cs/cop) Для компиляции детейлов (травы): -details -f имя_уровня -version название_версии (shoc/cs/cop) Для компиляции АИ-сетки: -aispawn -f имя_уровня -version название_версии (shoc/cs/cop) Для сборки спавна: -aispawn -s имя_уровня1,имя_уровня2,имя_уровня3 -out all Спойлер -skipthm – не прерывать компиляцию при отсутствующих текстурах и файлах thm -removeinvalid – не прерывать компиляцию при найденных invalid faces и удалять их -skipinvalid – не прерывать компиляцию при найденных invalid faces и пропускать их -tex_rgba – не использовать сжатие для сохраняемых текстур -tex_bc7 – использовать BC7 сжатие для сохраняемых текстур (формат поддерживается только на DX11) -silent – автоматически закрыть приложение после завершения компиляции -sleep – выключить компьютер после завершения компиляции -nohemi – отключить запекание освещения. Значительно ускоряет компиляцию. Предназначен для тестирования геометрии -underground – компилировать уровень как подземный. Ускоряет компиляцию -static – запекать статическое освещение (не работает с ключом -nohemi) -cform – экспортировать только коллизию уровня -noise – отключить создание Progressive геометрии. Ускоряет компиляцию, но не создает упрощенную геометрию для уровня и Multiple Usage объектов -nosmg – не использовать группы сглаживания -notess – не тесселировать геометрию -noweld – отключить велдинг маленьких треугольников -nomerge – пропустить стадию Merging geometry -nostrip – отключить оптимизацию и стрипификацию геометрии -dx_opt – включить оптимизацию геометрии средствами D3DX optimizer вместо NvTriStrip -gi – включить фазу Radiosity -no_mt_mu – не запускать расчет освещения для Multiple Usage объектов параллельно основной компиляции -high – более высокий приоритет для потоков -saveobj_base – сохранить всю геометрию уровня в obj файлы (базовая развертка) -saveobj_lmap – сохранить всю геометрию уровня в obj файлы (лайтмап развертка) -saveobj_cform – сохранять всю коллизию уровня в obj файл -qual_draft – установить качество сцены в Draft (не влияет на выставленные шейдеры) -qual_high – установить качество сцены в High (не влияет на выставленные шейдеры) -ppm число – установить качество лайтмапов вместо значения в СДК -weld_dist число – установить Weld distance вместо значения в СДК -hemi_bias число – установить смещение позиции луча при запекании хеми (по умолчанию: 0.1, в оригинале: 0.001) Спойлер -skipthm – не прерывать компиляцию при отсутствующих текстурах и файлах thm -silent – автоматически закрыть приложение после завершения компиляции -sleep – выключить компьютер после завершения компиляции -nohemi – отключить запекание освещения -static – запекать статическое освещение (не работает с ключом -nohemi) Спойлер -draft – не просчитывать укрытия для АИ-сетки -verify – проверить АИ-сетку на ошибки -noverbose – не выводить информацию об одиночных нодах (при ключе -verify) -skipthm – не прерывать компиляцию при отсутствующих текстурах и файлах thm -silent – автоматически закрыть приложение после завершения компиляции -sleep – выключить компьютер после завершения компиляции Спойлер -help – вызов справки со списком всех ключей запуска -t число – установить количество потоков для многопоточных операций (не работает с ключом -tbb) -fsltx имя_файла – использовать свой ltx вместо fsgame.ltx. -log_name имя_файла – создать файл лога с данным именем. Полезно для компиляции локаций очередью -discord – включить Discord Rich Presence с выводом имени уровня и статуса компиляции -discord_s – включить Discord Rich Presence с выводом только статуса компиляции -tbb – использовать TBB многопоточность (не рекомендуется) Спойлер Ускоренная компиляция уровня для тестирования геометрии без запеченного освещения: start bin\compilers_sky_x64\xrCompiler.exe -geometry -f zaton -nohemi -noise start bin\compilers_sky_x64\xrCompiler.exe -details -f zaton -nohemi start bin\compilers_sky_x64\xrCompiler.exe -aispawn -f zaton -draft Компиляция подземного уровня, полностью закрытого nosun геометрией: start bin\compilers_sky_x64\xrCompiler.exe -geometry -f labx8 -underground Компиляция только коллизии: start bin\compilers_sky_x64\xrCompiler.exe -geometry -f zaton -cform Компиляция локаций очередью с последующим выключением ПК: start /wait bin\compilers_sky_x64\xrCompiler.exe -geometry -f zaton -log_name zaton_geometry -silent start /wait bin\compilers_sky_x64\xrCompiler.exe -details -f zaton -log_name zaton_detail -silent start /wait bin\compilers_sky_x64\xrCompiler.exe -aispawn -f zaton -log_name zaton_aimap -silent start /wait bin\compilers_sky_x64\xrCompiler.exe -geometry -f jupiter -log_name jupiter_geometry -silent start /wait bin\compilers_sky_x64\xrCompiler.exe -details -f jupiter -log_name jupiter_detail -silent start /wait bin\compilers_sky_x64\xrCompiler.exe -aispawn -f jupiter -log_name jupiter_aimap -silent -sleep Спойлер Спойлер Версия 1.1: Спойлер Изменено хранение загружаемых текстур, что уменьшило потребление оперативной памяти Добавлено автоматическое уменьшение размеров загружаемых текстур высокого разрешения до 1К, что тоже повлияло на уменьшение потребления памяти Уменьшен шанс появления черных треугольников при недостаточном значении Pixel per meter Добавлено отключение стрипификации и прогрессивов у высоколигональных мешей для пропуска вылетов "iNumVerts < 65535" и "OGF::Stripify" Добавлен ключ -noimpl для пропуска стадии LIGHT: Implicit Добавлен ключ -noresize для отключения уменьшения размеров загружаемых текстур высокого разрешения Исправлено возможное подвисание окна приложения Исправлено некорректное запекание освещения для некоторых террейнов Исправлено не добавление ключа формата при старте компиляции из меню Исправлена оригинальная ошибка распараллеливания на стадиях запекания освещения Исправлен вылет при отсутствии implicit текстур Google drive Yandex disk Версия 1.0: Google drive Yandex disk Спойлер Можно не устанавливать ключ -version. В таком случае выходной формат данных будет следующим: для уровня из ТЧ СДК – ТЧ формат, для уровня ЧН/ЗП СДК – ЗП формат. Для уровней, собранных ТЧ СДК, будет автоматически применяться ТЧ сглаживание, а значит нет необходимости использовать ключ -nosmg. На этапе загрузки .thm файлов сначала производится попытка открыть файл по пути $game_textures$ (gamedata\textures), при его отсутствии – по пути $textures$ (rawdata\textures). Это следует учитывать людям, работающим с ТЧ. Для частичного исправления часто встречающейся проблемы с черными полигонами было изменено смещение позиции лучей при запекании затенений от хемисферы. В связи с этим при моделировании геометрии зданий рекомендуется не создавать ту-сайд геометрию для стен (как, например, у кораблей на Затоне), а выдерживать определенную их толщину. В продакшен версии уровня не рекомендуется использовать ключ -skipthm, поскольку из-за отсутствующих текстур и файлов thm на поверхностях может неправильно запечься свет. Не следует выставлять Weld distance в ноль. Иногда это провоцирует создание кривых фейковых теней от некоторой геометрии. Лучше поставить небольшое значение, но больше нуля. В случаях, когда на уровне нужно поправить только коллизию уровня или расставить фейки для актора, можно воспользоваться ключом -cform. Будет компилироваться только коллижн-геометрия уровня без запекания освещения, тем самым значительно уменьшится время компиляции. Для анализа того, как компилятор изменил геометрию уровня под игру, можно воспользоваться ключами -saveobj_base, -saveobj_lmap и -saveobj_cform. Геометрия будет сохранена по пути temp\geom… в файлы с расширением obj для дальнейшего просмотра их в 3д редакторе. Также ключ -saveobj_lmap может помочь в ручном редактировании лайтмап текстур, если на них были обнаружены проблемы. Изменено 17 апреля пользователем SkyLoader 8 11 2 2 2 5 macron, SamArt, Pavel_Blend и 27 других отреагировали на это Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SamArt 266 Опубликовано 22 февраля (изменено) Вот это называется проставился на днюху. Спойлер Изменено 22 февраля пользователем SamArt Почётный носитель клейма: "Где модели?" Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Bashy 154 Опубликовано 22 февраля Очень круто! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
macron 179 Опубликовано 22 февраля (изменено) Потестировал на "Liberty City". Вылетает на стадии "Converting to OGFs". Команда: xrCompiler.exe -geometry -nohemi -removeinvalid -noise -f liberty_city Лог: https://disk.yandex.ru/d/qQ5uE-srHqA2qw Совет по исходникам компилятора от тов. Дизеля: https://www.gameru.net/forum/index.php?s=&showtopic=18879&view=findpost&p=1705693 UPD: чтобы не вылетало, помог параметр -notess UPD: чтобы нормально сглаживалось, помог параметр -nosmg UPD: чтобы обходить инвалиды, помог -skipinvalid А при -removeinvalid удалялись мелкие треугольники на высокодетализированных моделях, что не хорошо. UPD: чтобы не было глюков на воде и местами повышался fps, всегда добавляю -noise Изменено 23 февраля пользователем macron 1 1 DarkSnowder и Paracetamol отреагировали на это Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Graff46 132 Опубликовано 22 февраля Не ведутся работы по использованию просчетов на видеокарте в xrLC и xrDO? И создание фанатских модов — это не следствие популярности S.T.A.L.K.E.R., это причина по которой когда-нибудь появится на свет S.T.A.L.K.E.R. 2© С. Григорович. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Misery 386 Опубликовано 22 февраля Мучения облегчены 1 Zima отреагировал на это ...))))...)) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SkyLoader 71 Опубликовано 22 февраля 9 часов назад, macron сказал: Потестировал на "Liberty City". Вылетает на стадии "Converting to OGFs". Судя по логу, причина кроется в меше с 36к вершин и 71к фейсов - это много. Оригинальный компилятор тоже должен падать на таких объектах. По хорошему, такие большие меши надо разбивать в 3д редакторе, но можно пропустить этот вылет, используя ключ -nostrip П.С. Хотел написать про огромное количество инвалидов в логе, и что, возможно, много геометрии будет пожрано с ключом -removeinvalid, но ты уже написал про -skipinvalid Цитата Не ведутся работы по использованию просчетов на видеокарте в xrLC и xrDO? Некоторые наработки есть, но пока не до этого 1 1 Graff46 и macron отреагировали на это Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Graff46 132 Опубликовано 22 февраля Как гуи определяет список локаций? По относительным путям? И создание фанатских модов — это не следствие популярности S.T.A.L.K.E.R., это причина по которой когда-нибудь появится на свет S.T.A.L.K.E.R. 2© С. Григорович. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Bashy 154 Опубликовано 23 февраля Компилятор просто отличный. Если обычными компилями локация просчитывалась за 4-5 часов, то этим - за 40 минут Могло быть еще быстрее, потому что я помимо компиляции использовал фоновые приложения. Результат вот: Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
DarkSnowder 1 Опубликовано 27 февраля Хаюшки. Недавно услыхал об этом новом компиляторе, ну и решил его на подземной лабе заценить. Спойлер * Detected CPU: GenuineIntel Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz, F6/M158/S10 * CPU features: RDTSC, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AES, AVX, FMA3, RDRAND, AVX2 * CPU cores/threads: 12 * RAM: Total memory: 16 Gb X-ray Exogenesis engine [Universal level compiler edition] 'xrCore' build 4449, Feb 21 2022 Initializing File System... Using FileSystem ltx: fsgame.ltx FS: 44547 files cached 0 archives, 7576Kb memory used. Init FileSystem 0.927567 sec Initializing task sheduler... Task sheduler initialized with 11 threads and 1 task groups Startup time: 12:29:39, date: 27.2.2022 * New phase started: Reading project [l04u_labx18]... | | Input file version: 17 | | Output file version: 17 * Phase ended: Reading project [l04u_labx18]... - 00:00:00 * New phase started: Converting data structures... | Vertices... | | * vertices: 517038 | Faces... | | * faces: 869890 | Models and References | | * Loading model: 'statics\dead_body\dead_spetsnaz_8' | | * Loaded model: 'statics\dead_body\dead_spetsnaz_8' - v(1509/1509), f(2931/2931) | | * Loading model: '' | | * Loaded model: '' - v(0/0), f(0/0) FATAL ERROR [error]Expression : xr_strlen(m_name)&&m_vertices.size()&&m_faces.size() [error]Function : xrMU_Model::Load [error]File : f:\s.t.a.l.k.e.r.sources\x-ray_universal_compiler\src\utils\xrcompiler_light\xrmu_model_load.cpp [error]Line : 46 [error]Description : Incorrect MU model with name []! stack trace: 0033:000000008972BF89 xrCore.dll, xrDebug::fail() 0033:000000008002BCB6 xrCompiler_Light.dll, xrMU_Model::Load() 0033:00000000900FBE22 xrCompiler_Geometry.dll 0033:000000009011851D xrCompiler_Geometry.dll, xrCompileGeometry() Ключ компиляции: start bin\compilers_sky_x64\xrCompiler.exe -geometry -shoc -f l04u_labx18 -underground -removeinvalid Пробовал и через меню - всё равно вылет. Жалуется на какую-то модель, хотя стандартные компилы под ТЧ спокойно уровень запускают и не ругаются. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SkyLoader 71 Опубликовано 27 февраля (изменено) DarkSnowder, сдк от Yara? Подобные проблемы были при использовании его сдк, потому что в нём был добавлен экспорт групп сглаживания. Можно попробовать экспортировать уровень другим сдк. Изменено 27 февраля пользователем SkyLoader 1 DarkSnowder отреагировал на это Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
DarkSnowder 1 Опубликовано 27 февраля SkyLoader Мдя уж, и не думал что этот СДК такое выдать сможет. Самый функциональный СДК на мой взгляд под ТЧ, и не совместим с твоим компилятором. 1 macron отреагировал на это Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
1_A 84 Опубликовано 28 февраля Новые х64 компиляторы, новые надежды. Прежде использовал от K.D. и от XrOxygen, последние хорошо справлялись с драфт качеством компиляции и справлялись с АИ сеткой. В то время как K.D. с АИ сеткой не справлялись. В тоже время на высоком качестве только КД. Получалось собрать карту двумя разными компиляторами на выс, но не на одних. От Оксиджена к сожалению не справлялись с высоким качеством компиляции (собирало но на K.D. компиляторах быстрее и лучше). Build succesful! Time elapsed: 01:15:04 Довольно долго х2-3 (геометрия). Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
pirat 120 Опубликовано 28 февраля Очень понравился данный компилятор. Но есть одна неудобная вещь, связанная с меню этого компилятора: хотелось бы, чтобы при завершении компиляции уровня\травы\сетки меню не закрывалось. Просто, чтобы не открывать меню второй раз, для компиляции чего-то другого. Большое спасибо! 1 Graff46 отреагировал на это Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
1_A 84 Опубликовано 4 марта | Processing... Build succesful! Time elapsed: 85:54:32 Да, компиляторы хорошие, но как уже писал с геометрией дольше чем у других, в моем случае собрало без множества деревьев за 3 дня. С деревьями думаю все 4 дня, а это очень долго Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Diesel 19 Опубликовано 4 марта (изменено) Специально зарегистрировался. Уж очень интересна сея тема. Изменено 4 марта пользователем Diesel 1 macron отреагировал на это Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Graff46 132 Опубликовано 21 марта (изменено) SkyLoader Компилю локу с ключами -nohemi -skipinvalid. Среднее качество сборки в СДК. Получаю локацию разделенную примерно пополам, одна половина темная (как в тени) - вторая освещенная, имеется резкая граница. Пересобирал эту же локу компиляторами х64 с -norgb -nosun - собралось без затенений но дольше раз в 10. Спойлер Изменено 21 марта пользователем Graff46 И создание фанатских модов — это не следствие популярности S.T.A.L.K.E.R., это причина по которой когда-нибудь появится на свет S.T.A.L.K.E.R. 2© С. Григорович. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Diesel 19 Опубликовано 22 марта (изменено) 11 часов назад, Graff46 сказал: -nohemi Я точно не знаю, как Скай реализовал этот ключ, но точно знаю что вмешательство в хеми, это как раковую опухаль вырезать. Хеми - это и есть подложка для освещения солнцем. Если убрать хеми, то солнцу не куда будет проецироваться (кроме террейна и лайтимплисит материалов). Скай последний раз был 27 февраля на сайте, скоро месяц как нет в онлайн. Изменено 22 марта пользователем Diesel 1 Graff46 отреагировал на это Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Graff46 132 Опубликовано 23 марта Diesel Пересобрал локу Спойлер В итоге на террейне снова тень на пол локации Спойлер Дополнено 0 минут спустя -noise не может такое делать? И создание фанатских модов — это не следствие популярности S.T.A.L.K.E.R., это причина по которой когда-нибудь появится на свет S.T.A.L.K.E.R. 2© С. Григорович. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
macron 179 Опубликовано 24 марта 2 часа назад, Graff46 сказал: -noise не может такое делать? Вряд ли. Попробуй компилем SCS9 от тов. Дизеля. В SDK в свойствах проекта обязательно ставить hemi 0. https://cloud.mail.ru/public/x4UH/teuCxJeyW 1 Diesel отреагировал на это Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Diesel 19 Опубликовано 24 марта (изменено) 10 часов назад, Graff46 сказал: Пересобрал локу В итоге на террейне снова тень на пол локации Судя по скрину, похоже на баганутую текстуру альфы террейна в папке левел. Текстуру в папке левел, при желании, можно сделать вручную, но можно и не использовать вообще. Эта текстура служит для подчеркивания колора и детализации. Дополнено 50 минуты спустя 7 часов назад, macron сказал: Попробуй компилем SCS9 от тов. Дизеля Это специальный компилятор, для вырезания лайтмап и вертексного освещения, со специфическим сглаживанием геометрии. Это же проект "гипер-звук", в котором рекомендуется подстройка шейдеров, либо настройка енв-мода. Желательно все локации в проекте прогонять этим компилятором, иначе будет разношерстность геома. Дополнено 58 минуты спустя 10 часов назад, Graff46 сказал: -noise Возможно это способствует оптимизации, а на освещение он вообще не должен влиять. Изменено 24 марта пользователем Diesel Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
macron 179 Опубликовано 24 марта 9 часов назад, Diesel сказал: Возможно это способствует оптимизации, а на освещение он вообще не должен влиять. В либертисите с -noise местами повышался fps и исчезали глюки фейсов на воде. 1 Diesel отреагировал на это Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SkyLoader 71 Опубликовано 24 марта (изменено) Проблема с запеканием террейна действительно есть, но проявляется она далеко не на всех террейнах. Будет исправлено в следующей версии. Изменено 24 марта пользователем SkyLoader 1 Graff46 отреагировал на это Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SkyLoader 71 Опубликовано 8 апреля (изменено) Доступна версия 1.1 Спойлер Изменено хранение загружаемых текстур, что уменьшило потребление оперативной памяти Добавлено автоматическое уменьшение размеров загружаемых текстур высокого разрешения до 1К, что тоже повлияло на уменьшение потребления памяти Уменьшен шанс появления черных треугольников при недостаточном значении Pixel per meter Добавлено отключение стрипификации и прогрессивов у высоколигональных мешей для пропуска вылетов "iNumVerts < 65535" и "OGF::Stripify" Добавлен ключ -noimpl для пропуска стадии LIGHT: Implicit Добавлен ключ -noresize для отключения уменьшения размеров загружаемых текстур высокого разрешения Исправлено возможное подвисание окна приложения Исправлено некорректное запекание освещения для некоторых террейнов Исправлено не добавление ключа формата при старте компиляции из меню Исправлена оригинальная ошибка распараллеливания на стадиях запекания освещения Исправлен вылет при отсутствии implicit текстур Спойлер Google drive Yandex disk Изменено 8 апреля пользователем SkyLoader 2 2 2 exDeMODER, pirat, Graff46 и 3 других отреагировали на это Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Graff46 132 Опубликовано 8 апреля Что такое "Добавлен ключ -noimpl для пропуска стадии LIGHT: Implicit" как это влияет на локацию и когда это можно/нужно отключать? И создание фанатских модов — это не следствие популярности S.T.A.L.K.E.R., это причина по которой когда-нибудь появится на свет S.T.A.L.K.E.R. 2© С. Григорович. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты