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

mrmnwar

Сталкеры
  • Публикаций

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

  • Посещение

Сообщения, опубликованные mrmnwar


  1. Deathman та не заморачивайся) все перегорают, потом снова что-то делают. Мой совет, займись отдельными правками и выкатывай их в народ в кач-ве стэндалоун на какие-нибудь сборки или моторы. И времени меньше тратить будешь, и пользы больше) Идей много на самом деле, которые пока нигде не реализовали.

    • Лайк 1

  2. 2 часа назад, Deathman сказал:

    И также я пытался сделать возможность использования steep parallax только для определенных текстур. Я не могу это сделать.

    Попробуй взять готовый код подключения параллакса из репозитория KD87

    https://github.com/joye-ramone/xray_xp_dev 

    открой uber_deffer.cpp

    		if (C.bParallax)
    			strcat			(ps,"_steep");

    И переноси все что связано с C.bParallax, там не сложно (выделяешь C.bParallax и жмёшь "найти все ссылки")

     

    По итогу у тебя в textures.ltx должен заработать флаг parallax[yes/no] для текстур.


  3. 4 часа назад, Deathman сказал:

    Следующим шагом я пошел еще дальше.
    Я сделал возможность настраивания дальности просчета даже для parallax mapping
    spacer.png

    Мотор и без этого отрубает параллакс на больших расстояниях
     

    void	uber_deffer	(CBlender_Compile& C, bool hq, LPCSTR _vspec, LPCSTR _pspec, BOOL _aref, LPCSTR _detail_replace, bool DO_NOT_FINISH)

    bool hq как раз за это и отвечает.

     

    		strcat			(vs,"-hq");
    		strcat			(ps,"-hq");

    Т.е. если hq==true (вроде там дистанция в 50м игровых) подключаются шейдеры с постфиксом -hq которые в себе содержат макрос USE_PARALLAX, и наоборот.

     

    По аналогии можешь создать и флаг включения стип параллакса для конкретных текстур в uber_deffer.cpp и ресурс менэджере и его так же нужно будет запрятать под hq ну и применять фэйдинг который ты показал, потому что вещь ресурсоемкая. Еще по оптимизации конечно же стоит использовать только tex2Dlod с нулевым мипом (один хрен параллакс дальше 12м игровых не имеет смысла, прирост в кадрах будет существенный. Фильтрацию для карты высот естественно анизотропную юзать.


  4. 2 часа назад, Deathman сказал:

    попробую завершать работу алгоритма если текстурные координаты оказались больше единицы

    Для моделей сталкера такое не прокатит. Большая часть развертки там и так лежит в диапазоне больше 1, так как в основном текстуринг там тайловый. Только для отдельных объектов подойдет.


    Дополнено 2 минуты спустя

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


  5. 1 час назад, Deathman сказал:

    а в NSPX я steep parallax использую на всех поверхностях

    Остался только вопрос, зачем?)


    Дополнено 5 минуты спустя
    1 час назад, Deathman сказал:

    В тч и нет steep parallax, эта проблема пришла еще с зова Припяти и пошла по второй сталкер, оба алгоритма были у меня в NSPX, в parallax.h у меня steep parallax от зова Припяти, в psf_parallax напрямую из второго сралкера и проблема одна - мы идем за UV

    Внезапно, это проблема всех алгоритмов параллакса. Есть конечно силуэтный или как он там.


    Дополнено 9 минуты спустя

    Wg-Ym-I2-X8-Sn-A.jpg

    Скрин не мой, но сталкерский. Цитирую хабр

    "Также видны и странные артефакты вдоль границ оттекстурированной плоскости. Появляются они вследствие того, что смещенные алгоритмом Parallax Mapping текстурные координаты могут выпасть за пределы единичного интервала и, в зависимости от режима повторения текстуры (wrapping mode), вызвать появление нежелательных результатов. Простой способ избавления от таких артефактов – просто отбросить все фрагменты, для которых текстурные координаты оказались вне единичного интервала"

    • Спасибо 1

  6. В 27.02.2023 в 20:01, Deathman сказал:

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

    А вот это уже годно, хрен поспоришь😉Надо себе на заметку взять эту фичу.


  7. Deathman причем тут вообще ртх не понятно) Сделай ты отдельной разработкой hashed alpha test с темпоральным сглаживанием вместо трех алгоритмов сгладки, тебе бы все сборки на аномали только спасибо сказали😁, и не говори что это не выполнимо на сталкере.


  8. 5 минут назад, Deathman сказал:

    И также если не видел то что я делаю сам

    Я тоже умею переписывать код сталкера)

     

    5 минут назад, Deathman сказал:

    Забавный факт - ты сам этого не сделал в сталкере чтобы такое заявлять.

    Забавный факт в том, что ты незнаешь того, что я сделал, потомучто я не кричу об этом налево и направо как вы о новых эффектах постобработки)

    • Мастер! 1

  9. Deathman камон, не будь таких громких заявлений, никто бы и не придирался.

    Ты обсираешь код разработчиков, хотя сам просто его переписываешь😁У тебя нет ничего фундаментального, что заставило бы кардинально менять принцип построения рендера и переписывать рабочие шейдеры.

    Не мало было таких разработок века, где и шейдеры шифровали и вообще без регистрации и смс фиг скачаешь, потому что разработка мега некст-ген. Хотя по сути если разобраться, как обычно накидают эффектов постобработки которые в огсе еще 2013 переживали(но мы их перепишем, мы же умнее). Короче все это давно пройдено.

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

    Где вы все когда нужно сделать нормальное освещение для частиц, нормальное освещение полупрозрачной геометрии, нормальный альфатест, енв пробы для отражений? Когда мы научимся делать освещение форвард рендеринга вообще? А туман вообще кто-нибудь в силах переделать сегодня? А, точно, вы в это время пилите новый sussao) super-ultra-screen-space-ambient-occlusion.

    Ciao.

    • Мастер! 1

  10. 28 минут назад, Deathman сказал:

    типичный combine_1 для примера

    И что там не так?) Я начинаю думать, что отладочные макросы ты посвятил в "неведомую мешанину"😁

     

    29 минут назад, Deathman сказал:

    раз пошло все в этом направлении то я видел твой код объемного света

    Раз на то пошло, то я и не писал код объемного света🤔А если ты о саншафтах, дак это "каракули"(нет) крайтек.

     

    37 минут назад, Deathman сказал:

    3 - Опять же тот же первый этап сборки кадра, тот же шейдер SSAO и многие другие, когда я сел добавлять параллаксы в шейдер террейна я был в шоке, ибо это самый отвратительный код из всех что я видел, переписывать его пришлось полностью, open-closed принципу он не следует вообще.

    Начал за ssao, закончил за упокой) Если бы ты хоть немного поработал с СДК и компилятором, то возможно понимание того, зачем так написан шейдер, к тебе бы пришло.

     

     


  11. 52 минуты назад, Deathman сказал:

    омерзительные каракули

    С такими громкими заявлениями лучше прикладывать какие-нибудь доказательства)

     

    55 минут назад, Deathman сказал:

    а не поганой мазней, в которой половина кода это однобуквенные переменные

    Это например?

     

    57 минут назад, Deathman сказал:

    а вторая половина это закомментированный код, который когда-то использовался и вдруг его решили заменить

    Опять же, вилами по воде)

    59 минут назад, Deathman сказал:

    специально для нее я и решил развивать систему блоков, из которых строится хаб работы с поверхностями

    С твоих слов. Сначала ты вырезал "бесполезный" surface loader(sload), а теперь хочешь его воссоздать?)