Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Unity > Эффекты/Шейдеры

Ответ
 
Опции темы
Старый 29.09.2020, 01:23   #16
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Проваливание текстуры под другую

Сообщение от Arton Посмотреть сообщение
Там где тебе не нужна плавная прозрачность, можно обойтись обрезкой «по маске».
Всегда так делаю.
Это есть в любых движках.
Кристал уже писал, что его это не устраивает.
Алсо этот баг есть во всех движках, и в Блице тоже был.
Он находится в самом принципе работы видеокарты.
Простых решений нет, к сожалению.

Единственное, что толкового со времён Блица изобрели на эту тему — это Alpha To Coverage. При полноэкранном сглаживании и включённой этой фичей субпиксели сглаживания заполняются в соответствии с альфой.

То есть как будто у тебя разрешение увеличено так, что 1 пиксель растянут в 4. Если альфа 25% то закрашивается 1 пиксель из 4, если 50% то 2, если 75% то 3 и если альфа 100% то все 4 пикселя. А потом сжимают и получается "как бы альфа" из 4 градаций.

Полноценную альфу в несколько слоёв, понятное дело, так не сделать, но от лесенок по краям избавляет вполне. Возможно, можно подумать об использовании этой фичи, в Юнитях она есть.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Эти 3 пользователя(ей) сказали Спасибо ABTOMAT за это полезное сообщение:
Arton (29.09.2020), Crystal (29.09.2020), pax (29.09.2020)
Старый 29.09.2020, 05:43   #17
Crystal
Терабайт исходников
 
Аватар для Crystal
 
Регистрация: 05.07.2007
Сообщений: 5,196
Написано 1,721 полезных сообщений
(для 5,374 пользователей)
Ответ: Проваливание текстуры под другую

Сообщение от ABTOMAT Посмотреть сообщение
Кристал уже писал, что его это не устраивает.
Алсо этот баг есть во всех движках, и в Блице тоже был.
Он находится в самом принципе работы видеокарты.
Простых решений нет, к сожалению.

Единственное, что толкового со времён Блица изобрели на эту тему — это Alpha To Coverage. При полноэкранном сглаживании и включённой этой фичей субпиксели сглаживания заполняются в соответствии с альфой.

То есть как будто у тебя разрешение увеличено так, что 1 пиксель растянут в 4. Если альфа 25% то закрашивается 1 пиксель из 4, если 50% то 2, если 75% то 3 и если альфа 100% то все 4 пикселя. А потом сжимают и получается "как бы альфа" из 4 градаций.

Полноценную альфу в несколько слоёв, понятное дело, так не сделать, но от лесенок по краям избавляет вполне. Возможно, можно подумать об использовании этой фичи, в Юнитях она есть.
В моём случае проще сгенерировать полигоны соблюдая необходимую дистанцию,
ту, которую я вырисовываю альфой, и от альфы отказаться.
Если она продолжит создавать трудности, так и сделаю,
но не факт, что это будет так же красиво, как альфа со сглаживанием.
Однако это применимо только к зелёной сетке, если так же делать
сетку под ней, то уйдёт слишком много полигонов, усложнится код, и так далее.
Так что совсем без альфы мне похоже не обойтись, если только не делать
клетки полностью закрашенными как шахматную доску, но это некрасиво,
через дырки должна быть видна текстура локации на плейне как в HoMM7:



Ну, в данный момент меня всё устраивает.

Кстати, подозреваю, что в HoMM7 каждая ячейка отдельный квад с альфой,
текстура на котором подменяется в нужный момент, а не как у меня строится
меш въезжающий в плейн с альфадырками.
__________________
Проект "Deathbring World - Rangers" и его финансовая поддержка:
https://boosty.to/deathbringrangers

Я на - TWITCH
Канал на YouTube
(Offline)
 
Ответить с цитированием
Старый 08.10.2020, 13:28   #18
Evgen
Разработчик
 
Аватар для Evgen
 
Регистрация: 12.01.2011
Адрес: Moscow
Сообщений: 419
Написано 68 полезных сообщений
(для 100 пользователей)
Ответ: Проваливание текстуры под другую



По моему эта проблема называется Z-fighting. Дело в том, что Z-буфер если, он имеет малое разрешение, то рендер на определенных расстояниях уже не понимает что рисовать поверх чего и идет смешивание.

В Unity в шейдерах используется параметр Offset для устранения этой траблы. https://docs.unity3d.com/Manual/SL-CullAndDepth.html
(Offline)
 
Ответить с цитированием
Старый 08.10.2020, 19:52   #19
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Проваливание текстуры под другую

Сообщение от Evgen Посмотреть сообщение


По моему эта проблема называется Z-fighting. Дело в том, что Z-буфер если, он имеет малое разрешение, то рендер на определенных расстояниях уже не понимает что рисовать поверх чего и идет смешивание.

В Unity в шейдерах используется параметр Offset для устранения этой траблы. https://docs.unity3d.com/Manual/SL-CullAndDepth.html
На приведенной картинке да, Z-файтинг. У Кристала проблема с неправильной сортировкой прозрачности была.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Crystal (13.10.2020)
Старый 08.10.2020, 21:44   #20
Evgen
Разработчик
 
Аватар для Evgen
 
Регистрация: 12.01.2011
Адрес: Moscow
Сообщений: 419
Написано 68 полезных сообщений
(для 100 пользователей)
Ответ: Проваливание текстуры под другую

Сообщение от pax Посмотреть сообщение
На приведенной картинке да, Z-файтинг. У Кристала проблема с неправильной сортировкой прозрачности была.
Ну ладно, пусть будет для общего развития.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 12:50.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com