Перейти к контенту

Рекомендуемые сообщения

KD87 ,lafugix, Спасибо что откликнулись ,вот если бы по конкретней, как с этим боротся, было бы совсем замечательно! :)  

 

WERTOix.gif

Изменено пользователем KD87
удалил разрывы
Ссылка на комментарий

, это уже за рамками текущей темы. Проверь, есть ли текстура террейна в textures.ltx, если нет, добавь по аналогии. Или же скопируй thm для террейна из геймдаты юпитера к себе в ТЧ. В любом случае, подробности спрашивай в ковырялке или теме по СДК, там знающих людей много, а я уже давно подобным не занимался.

Изменено пользователем KD87
Ссылка на комментарий

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

Intrel Core i5 9400F, msi gtx 1660 super ventus, RAM 16g-DDR4, HD 2000g, Win 10x64, SSD 256g, SSD m2 500g.

Ссылка на комментарий

Дрожание неба наблюдал при включенном motion blur и модифицированных бинарниках. Причина такая - в дефолтном сталкере не очищается текстура с позициями между кадрами, из-за этого шейдер с доступом к этой текстуре приводит к шлейфу от объектов на фоне неба. Поскольку по дефолту такой шейдер только один - motion blur - и он как раз и состоит в том, чтобы давать шлейф от объектов, то ничего не заметно. В паке шейдеров от огсе шейдер саншафтов также использует текстуру с позициями, и вот тут баг со шлейфом становится очевиден. Я в свое время сделал правку по очистке проблемной текстуры, в саншафтах баг ушел, но появился баг с дрожанием объектов при включенном motion blur. Резюмируя, один баг компенсировал другой. Стоило убрать один, вылез второй. Впрочем, шейдер motion blur довольно легко поправить. Достаточно добавить одну строчку в самое начало функции расчета блюра (half3 mblur (float2 UV, half3 pos, half3 c_original)):

pos.z += 1000000.h*saturate(0.001 - pos.z);

  • Нравится 1
Ссылка на комментарий

Как в зп сделать?Нужно заменить или добавить строку?

 

Оверквотинг. Читай правила, п. 2.6

Изменено пользователем Cyclone
Ссылка на комментарий

@krovosnork, уже есть объемные облака, они ж тень бросают (ну, на р2). Шейдер этих облаков есть в ресурсах, так что сделать, конечно, можно, никто не мешает :)

Ссылка на комментарий

@KD87, а возможно ли сделать эти облака реалистичными? Разные виды облаков, разная высота. Не слишком ли большая нагрузка будет? И ещё, можно ли сделать полосы дождя на горизонте?

Ссылка на комментарий

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

Intrel Core i5 9400F, msi gtx 1660 super ventus, RAM 16g-DDR4, HD 2000g, Win 10x64, SSD 256g, SSD m2 500g.

Ссылка на комментарий

@Хемуль36рус, цвет неба - это цвет скайкуба. Единственное, что дополнительно накладывается - тонмаппинг. Можно покрутить коэффициенты в tonemap (common.h, def_hdr, например), но это будет действовать на все сразу. Можно в sky2.ps покрутить параметр scale, домножить его или разделить на что-то. В дефолтных шейдерах так, например:

        tonemap            (o.low, o.high, sky, scale*2.0 );

А вообще, как мне кажется, на скрине эти пятна есть больше из-за сжатия текстуры скайкуба. Попробуй сжать исходную текстуру в dxt3, например.

  • Нравится 2
Ссылка на комментарий

Интересует вопрос создания шейдера с возможностью в реальном времени регулировать у него порог обрезания альфа-канала или просто видимость. Собственно появилась идея использовать шейдер для скрытия\показа определённых частей на модели, и тут такие вопросы:

1) Реализуемо ли вообще в сталкере на уровне шейдеров возможность скрыть\показать определённый участок модели, допустим тем же альфа-каналом в реальном времени.

 

2) Как можно и можно ли влиять на шейдеры из скриптов или какими нибудь другими костылями так, чтобы изменения отражались в реальном времени. Допустим создать переменную или какую нибудь проверку чтобы через неё регулировать ту же видимость. Нужно же будет иметь возможность как то "сказать" шейдеру нужно ли ему отрисовывать или наоборот скрывать. 

Изменено пользователем *Shoker*

Можно просто Shoker, форум АМК съел моё старое имя и не хочет отдавать о_О

Мастер аномалий на свою заднюю точку.

Ссылка на комментарий

@*Shoker*, ну так есть волшебная функция clip(), которая ровно то и делает - откидывает пиксели по альфе, типа альфа-тест. Насчет риалтайм управления - есть, конечно, возможность. В ТЧ, в xray-extensions. Смотри shaders_mapping.asm. Предвосхищая следующие вопросы - нет, проще не сделать.

Изменено пользователем KD87
  • Нравится 1
Ссылка на комментарий

@KD87, спасибо за наводку, однако всё же попробую попроще :D
Наверняка ведь в рендере ТЧ-ЗП уже есть какие то глобальные шейдерные переменные, которые регулируются например консольными командами и значения из этих консольных команд используются в шейдере, тогда можно найти какую нибудь мало-значимую консольную команду, значение которой представлено в шейдере, и использовать её как регулятор... или это не пройдёт?

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

Изменено пользователем *Shoker*

Можно просто Shoker, форум АМК съел моё старое имя и не хочет отдавать о_О

Мастер аномалий на свою заднюю точку.

Ссылка на комментарий

Уже задавал вопрос, но пожалуй задам еще раз. Почему в режиме DX10\11 в ЧН\ЗП не работает Motion Blur и нету тени от облаков? Кривые шейдеры или проблемы в движке?

Изменено пользователем power-cat
Ссылка на комментарий

@power-cat, motion blur не работает, потому что его просто нет в сталкере на DX10. Тени от облаков просто отключены - как и в ТЧ, надо раскомментировать дефайн USE_SUNMASK в common.h. 



@*Shoker*, зришь в корень. Meltac именно так и сделал управление своим DOF. Консольных команд, влияющих на шейдерные юниформы несколько, но тебе подойдут, пожалуй, только r2_aa_kernel, r2_aa_break, r2_aa_weight. Первая команда - float, две других - вектора из трех float. Команды изменяют содержимое e_barrier, e_weights, e_kernel в combine_2_aa/combine_2_naa. Правда, тут придется выбирать - при использовании этих команд под себя, придется отказаться от консольной настройки антиалиасинга (r2_aa). Впрочем, коэффициенты можно просто захардкодить в шейдере.

Изменено пользователем KD87
  • Нравится 1
Ссылка на комментарий

Я заметил что для юзания блура на DX9 достаточно расскоменить в common.h строчку с USE_MBLUR. На DX10 не дает толку (даже если в файле mblur.h специально что-нибудь сделать чтобы исскуственно вызвать вылет), но при этом стоит в свойства добавить -mblur, то игра вылетит (значит все таки как-то мож шейдер читается, просто переписать надо). 

Насчет USE_SUNMASK. К сожалению расскоментирование этой строки не дает результата на DX10.

  • Нравится 1
Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...