Перейти к содержанию

Deathman

Разработчики
  • Публикаций

    1 232
  • Зарегистрирован

  • Посещение

  • Победитель дней

    5

Весь контент Deathman

  1. Я тебе большу скажу - OGSR это такая беспросветная клоака, что он даже на I5 2400f + RX580 выдает 2фпс. А все почему? Потому что нет у людей понимания того как делать надо или как устроена та или иная вещь, начиная от Shadow map 16*16к, вместо многокаскадной системы и нормальной фильтрации, до передачи BOOL в шейдеры через float4 константу, чтобы в рилтайме проверять то, что можно проверить препроцессом, и что вообще по большому счету проверять и регулировать в шейдерах никогда не нужно. Над ним гении работают Дополнено 1 минуту спустя Кстати на счет Рико на аве - OGSR это буквально бездна, в которую опускаться не нужно Дополнено 4 минуты спустя Проблема не в процессоре, а в том, кто и как работает над модом. Какие решения в нем применены, какой уровень знания и понимания у человека, который реализовывал ту или иную вещи и как это по итогу будет работать в совокупности. А самое главное - заботится ли вообще автор о том, чтобы оптимизировать свое творение под наиболее широкий диапазон устройств, для того чтобы заинтересовать как можно более широкую аудиторию Дополнено 5 минуты спустя RX580 сейчас на авито стоит 5-6к рублей, и думаю дешевле начать копить и купить ее, чем кучу раз носить в ремонт R290 Дополнено 7 минуты спустя ._. VRAM можно заменять точно также, как и любые другие BGA микросхемы. Нельзя заменять VRAM только на чиплетных видеокартах с HBM памятью, где видеопамять находится на одной подложке с GPU Дополнено 13 минуты спустя ._. Не может быть конфликта между xrCDB и xrEngine - винда бы тупо не запустила тебе xrEngine или что ты там запускал. Light Leaking происходит из-за особенностей геометрии, настроек освещения, подаваемых на вход рейтрейсеру в xrLC и самом алгоритме трассировки лучей в xrLC, а не мифическом конфликте библиотеки и исполняемого файла. А первый рендер вырезают все кому не лень потому что "А зачем пытаться что-то улучшать или исправлять если сломал, если можно просто вырезать" Дополнено 17 минуты спустя Да не должно быть все наоборот в ситуации с OGSR. x64 ничего не дает - он дает возможность использовать больше чем 4 гигабайта оперативной памяти и увеличивает порог возможного использования постоянной памяти, изменение разрядности не дает буста к кадрам, буст к кадрам даст оптимизация кода, разбивка задач на потоки и нормальные решения в плане графики если речь идет и про видеокарту тоже Дополнено 19 минуты спустя Хоть один понимающий суть происходящего человек в этом треде... Дополнено 23 минуты спустя Выглядит оно ужасно потому что люди не умеют в графику от слова совсем, не умеют в художественное построение картины из эффектов, даже в их нормальную реализацию, они тупо докинули SSS мод, который является тупо набором готовых реализаций и прототипов различных эффектов, которые нужно самому вписывать в свой проект и самому местами доделывать, чего они конечно же не сделали и делать не будут и сидят радуются.
  2. Я делаю АО через блендер чтобы на АО было затенение, созданное самой геометрией, ну и также про то что текстуры должны быть в линейном цветовом пространстве я знаю, просто тогда было в приоритете хотя бы наличие чего-то на выходе. А нормали я запекаю с АО при помощи конвертации их из DX формата в OGL, усиления при помощи карты высот, поднятой на 2, чтобы привести ее из диапазона [0;1] в диапазон [1;2] и запекания не Ambient occlusion, а diffuse, с выходом с роды АО в ноду диффуз, затем я артефакты от запекания исправляю в режиме Texture paint прямо в блендере
  3. Ну и ладно в принципе, и без dds отлично
  4. @xrModder, работаю уже не в первый раз с этим конвертером и у меня есть мысли на счет его улучшения. Работаю с тч и так как у меня прогон текстур, перетаскиванием на exe не работает, я беру листы текстур из textures.ltx и вручную формирую текст для батника. Что если сделать так, чтобы конвертер сам смотрел пул текстур в textures.ltx, находящийся в секции [types], проверял какие из этих текстур имеют значение 2 ($bump-test = 2) и весь этот список автоматом прогонял через алгоритм? Дополнено 2 минуты спустя Кстати дополнительно было бы нереально классно сделать опционально задаваемые параметры для текстур на выходе, вроде формата (D3DFMT), а также было бы также нереально круто сделать его двусторонним конвертером - и формировать glossy/height/normal из bump/bump# и наоборот прогонять все эти три текстуры в bump/bump#, что было бы очень удобно при конверте сетов текстур с какого-нибудь квикселя Дополнено 15 минуты спустя Баг нашел - если у файла не указано расширение, алгоритм не видит текстуру как текстуру и пишет что файл не найден. Попробуй использовать функцию fix_texture_name от оригинальной игры. Ей просто на вход приходит имя и она с именем сама работает. Думаю ты сам знаешь какие расширения указывать у себя void fix_texture_name(LPSTR fn) { LPSTR _ext = strext(fn); if( _ext && (0==stricmp(_ext,".tga") || 0==stricmp(_ext,".dds") || 0==stricmp(_ext,".bmp") || 0==stricmp(_ext,".ogm"))) *_ext = 0; } Дополнено 18 минуты спустя А совсем забыл про strext // return pointer to ".ext" IC char* strext (const char* S) { return (char*) strrchr(S,'.'); } Дополнено 21 минуты спустя Надеюсь малое количество поддерживающих комментариев под публикацией не заставили тебя разочароваться и прекратить работу, по крайней мере в публичном поле. Если все же заставило то понимаю тебя, ибо сам столкнулся с похожим весной при публикации NSPX
  5. Вот! Вот что действительно мне нужно было знать! Спасибо огромное, разветка действительно находится где-то в Детто Берендетто, а не в координатах текстуры Дополнено 19 минуты спустя Я буквально руками передвинул этот кусок развертки и все заработало! Дополнено 28 минуты спустя Я знаю на чем я теперь буду продолжать учиться моделированию - я буду переделывать оригинальные модели сталкера, вместо создания своих уровней, а потом буду из этих моделей собирать лучшее окружение для имеющихся уровней, потому что это просто жесть
  6. Окей, на развертку баллона и не только баллона я посмотрел и был просто шокирован тем насколько это ад, но в случае оружия дело обстоит иначе и вот пример запеченого AO для АК74, сделанного с той же развертки и той же геометрии
  7. Во-первых если речь про те что у меня уже есть то то что у меня их буквально штук десять Во-вторых если речь про те что на скрине из блендера с баллоном и АК - они рассчитываются неправильно. В ситуации с АК74 АО на развёртке выглядит так, как будто оно снимается с другой геометрии, это я показал на скрине только с разверткой
  8. Ну вот - касательно того как у нас в игре работает. У нас AO два типа. Это AO из геометрического буфера - LightMap AO + Realtime Ambient, и Постпроцесс AO. И так вот. Суть в том что моя платформа - тч, а в тч Realtime Ambient это тупо заливка сплошным цветом и при такой заливке сплошным цветом либо переносить алгоритм из чистого неба, что у меня сделать не получилось, либо же добавлять к этой заливке Baked AO, что кстати визуально выглядит лучше и не затрачивает производительность на расчет. Вот вам демонстрация вывода AO из геометрического буфера. На оружии как раз уже расчитанное AO Никитой Тимониным
  9. Во-первых - все что касается бекенда AO у меня уже есть, у меня AO можно подкинуть отдельной текстурой с префиксом и она автоматически подхватится, а можно засунуть в z канал карты нормалей, так как он у меня все равно реконструируется математикой. Вся моя проблема только в блендере - я пока еще не умею им уверенно пользоваться. Во-вторых у меня есть план использования AO. Я их запекаю для уже имеющихся в игре моделей, для которых используется одна текстура на весь меш, как пример оружие, визуалы сталкеров и пропы, у которых не запорота развертка и которую не нужно переделывать вместе с текстурой. В-третьих - да, я использую Cycles, иначе никак. В Evee нет возможности запечки
  10. Сталкер считает АО только в реальном времени, в экранном пространстве, или же как "Hemi", но используя только вершины и актуальную освещенность сцены силами процессора, перехватить эти данные и запечь в текстуру по развёртке объекта не представляется возможным. А я ввел в игру запечённый свет для того чтобы заполнить пробелы в освещении в первую очередь динамических моделей на всех рендерах и для того чтобы детализировать освещение при выключенном АО. Ну и также прикол заключается в том что человек с ником Никита Тимонин при помощи блендера уже запекал хорошее АО для оружия и я не могу понять как он это делал Дополнено 1 минуту спустя Кстати на скрине видно что блендер смог запечь хоть что-то, а у меня он как-будто в момент запечки обрабатывает совершенно другую геометрию
  11. Мне вот очень интересно - а почему под всякими темами с релизами иногда даже таких себе модов актива до одного места, а под такой важной и полезной утилитой как эта тишина полная? Ни оценок, ни комментариев
  12. Мне лично как 3D пакет блендер намного ближе и функциональнее чем другие, но в некоторых случаях он ставит меня в тупик подобными проблемами. Во всех видеоуроках что на русскоязычном, что на зарубежном Ютубе запечка это тупо мем "Хоп, Хоп и готово", а подобные приколы я так и не нашел
  13. Увидел эту доску объявлений и тоже решил попробовать что-то новое для себя, кинув свое досье здесь. Дизайнер\программист визуальных эффектов. HLSL + C++ программист, самоучка, не могу себя назвать джуниором, но при этом что-то да умею. Комплексно, с учётом атмосферного и сюжетного контекста подхожу к вопросу визуальной составляющей, трепетно отношусь к оптимизации, всегда пробую новое для себя, в плане новых эффектов и экспериментов над старыми. Мое портфолио, которое я могу показывать, состоит только из моего проекта Nocturning studio project X (сравнение с оригиналом, основной хаб с полным описанием и обновлениями) , по которому можно оценить мои навыки. Приоритетна работа с тенью Чернобыля, работаю комплексно с ней уже не первый год, умею работать не только с кодом движка и шейдерами, но и также с уровнями, к примеру могу наполнить уровень готовыми объектами (пример моего наполнения уровня), дополнительно само собой работаю и с другими аспектами - очень поверхностно, скриптами, уверенно со всеми конфигами, а также могу работать со звуками (спрототипировать звуковое окружение для уровня) и текстурами (поверхностно пофиксить сет текстур, сделать дополнительные карты для сета текстур в материале). Могу работать как за деньги, так и на энтузиазме, но только если проект действительно сможет зацепить меня. Не стоит думать что я бог всемогущий, перед тем как писать мне внимательно изучите мои коммиты в NSPX, изучите последнее его обновление, посмотрите приложенное видео демонстрацию и скрины моих способностей и тщательно обдумайте нужен ли я вам.
  14. Сегодняшний вечер я решил посвятить генерации Baked AO текстур для NSPX, и весь вечер у меня одна и та же проблема, а именно очень странный и неконтролируемый результат при рендеринге AO в текстуру. Ни в одном видео и текстовом уроке, которые я посмотрел или прочитал такого не описывается и я уже не знаю что мне делать. Модели открываю напрямую из игры при помощи ад-дона Павла Бленда и эта проблема одна и в Blender 2.8, и 2.83, и 2.9. Пробовал множество моделей и ни для одной AO не запекается корректно
  15. Ееееееееееееееее, обожаю тебя, я наверное уже год почти думаю как написать такой конвертер своими руками, но ты сделал это раньше, огромное спасибо тебе за эту утилиту и жду больше крутых вещей от тебя
  16. Чел - я тебя обожаю, это уже намного лучше чем вручную пытаться делать текстуру из двух. Было бы очень круто если бы эта программа сначала делала первым проходом нормали, вторым проходом глосс, а третьим проходом высоты.
  17. Я и сам своего рода генеративная языковая модель, обучающаяся на данных из интернета, так что справлюсь Дополнено 13 минуты спустя НАЕБА... Обманул. Я хороший мальчик и смог своим котелком довести формулу до ума, хоть и успел откатить все изменения до коммита со сломанным рендертаргетом, так что на прототип приходится смотреть так. Так что тема закрыта, все свободны, а я пойду пить заслуженный чай за такую большую работу Дополнено 14 минуты спустя Если кто-то это будет читать то вот вам музыки что-ли послушать Дополнено 19 минуты спустя На самом деле это ужасное решение. Эта строчка нужна для того чтобы "усилить контрастность" значения силы глубины резкости, и нет смысла ее делить, в таком случае стоило вместо деления ее вовсе убрать
  18. С самой функцией проблем нет, я использую ее для нахождения силы размытости для пикселя, но вот с тем как ее использовать для смешивания двух текстур есть проблемы. Одна текстура должна уменьшать свою яркость по мере увеличения значения этой функции, а другая наоборот увеличивать как я понимаю, сейчас я в процессе гуглежа реализаций моего подхода чтобы посмотреть как блендинг работает там и параллельно я кинул пост здесь Дополнено 1 минуту спустя Кстати забавный факт - если считать алгоритм размытия Bokeh с размытием 10*10 точек в половинном разрешении, а потом апскейлить его до реального разрешения кадра то можно нехило выйграть производительность. Использую это для глубины резкости впервые, а для AO уже давно Дополнено 34 минуты спустя Новости - я нашел вот такую статью с полным пайплайном Bokeh, но блендинг идет через линейную интерполяцию размытого кадра и исходного по силе размытия, что в принципе меня не устраивает Дополнено 53 минуты спустя Соррян за кринжпостинг - проблема не в линейной интерполяции, а самой формуле Bokeh, которую я использую. Даже если в самом шейдерном проходе регулировать силу эффекта все равно будут образовываться те же самые ореолы вокруг неразмытых пикселей, так как эти пиксели все равно участвуют в поиске среднего арифметического для эффекта. Надо либо вводить учет глубины для каждого пикселя, по типу уменьшения его яркости пропорционально приближению к камере, либо же придумывать что-то другое. Отложу Bokeh на будущие обновления проекта
  19. Я ввожу в игру Bokeh (Правдоподобный вариант глубины резкости) и я смог двумя проходами создать вот такую вот размытую текстуру кадра, но вот с правильным смешиванием этой текстуры с кадром по глубине с учетом параметров глубины резкости при помощи функции DOFFactor, которая принимает на вход данные о глубине пикселя, и выдает силу размытия, как я понимаю, есть проблемы - ни какие мои идеи к правильному результату не приводят. Мог бы кто помочь? UPD: То есть да, я двумя шейдерными проходами создаю размытую текстуру и в третьем шейдерном проходе, используя основной кадр, размытый кадр и буфер глубины должен получить именно саму глубину резкости, с чем у меня и возникли проблемы
  20. Я бы от себя, как от человека, который самообразовывается в сфере фотографии, режиссуры и операторской работы, хотел добавить что помимо хорошего софта, который призван помогать в творчестве, как хороший видеоредактор, ПО для захвата кадра или другое, важно и то, как именно вы демонстрируете свою работу. Для хорошей демонстрации нужно знать и уметь использовать азы операторской работы, приемы монтажа и иметь, то, чем вы хотите зацепить зрителя. Просто скину несколько видео, которые могут быть кому-то полезны
  21. Звуки по таким событиям как сохранение всегда лучше делать через движок. Не забывай еще то что у нас Lua машина в общем потоке вертится, и стоит по максимуму разгружать ее, а не нагружать наоборот тем, что можно сделать через движок
  22. С такими идеями тебе нужно лезть в движок. Кстати звук во время сейва или загрузки игры это такая себе идея, потому что не забываем то, что у нас игра на полутора потоках вертится и в пиках нагрузки будет пауза у звука
  23. Спасибо Дополнено 6 минуты спустя Наверное года с 2005 погода инициализируется при помощи скриптов, а значит что мы имеем возможность использовать отчасти скриптовые штуки на погоду, думаю уже полгода как заставить музыку также инициализироваться через скрипты чтобы иметь возможность ее менять по событиям. Так вот. Посмотри game_levels_single в NSPX и в чистом небе, а именно уровни Янтарь, Радар у меня и Болота в чн, у них погода контролируется при помощи инфопоршней. Только вот проблема - скрипт погодного менеджера я так и не смог перенести, а он даёт возможность переключать погоду в рилтайме, а не после переинициализации, как например при сохранении->загрузке. Я пробовал три или четыре раза, все время были какие-то проблемы, которые я так и не мог решить, потому что не дошел до включения трассировки скриптов при ошибке, если кто-то поможет то я буду сильно рад
  24. Конкретно для меня это не приоритетно, но любой желающий всегда может сделать пулл реквест с реализациями этих методов и я их с радостью приму - вот ссылка на гит, пока ресурсы разделены с кодом, что я в будущем исправлю. Вот тема с релизом и всеми обновлениями