Войти
Unreal EngineФорумОбщее

UE4 - элементарное задание не по силам? пост ненависти (capture and reconstruct depth) (2 стр)

Страницы: 1 2
#15
14:53, 27 июня 2016

AntonioModer
Разрабы уже писали, что матриц и подобного полезного добра в редакторе материалов нету. Поскольку редактор материалов это просто визуальный инструмент для написания собственного шейдера, то спецы иногда не могут написать простые вещи. Мне например очень не хватает циклов, приходится их писать самому на Custom ноде через HLSL код. Но говоря о вручную написанному HLSL/GLSL/другому шейдерному коду, то таким образом можно получить доступ к этому делу, но увы, свои матрицы все равно не передашь в шейдер, ибо для этого нужно уже углубляться в код и стандартных инструментов нету, что не очень удобно.

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


#16
17:10, 27 июня 2016

Flakky
> ... но увы, свои матрицы все равно не передашь в шейдер, ибо для этого нужно уже углубляться в код и стандартных инструментов нету, что не очень удобно.
Выходит это уже дело удобности, но сделать то можно.

#17
17:21, 27 июня 2016

AntonioModer
Да, можно сделать-то что угодно. В любом случае, движок-то открыт :)

#18
17:42, 27 июня 2016

AntonioModer
> Почему у разрабов UE4 напрямую не спросил?:
> Элементарное не по силам?

С чего ты решил что я не спросил? Я спросил, и даже ответ получил.

> Выходит это уже дело удобности, но сделать то можно.
Да, преимущество опен-сорс движка =) Можно что угодно из него сделать, хоть пакмана в него встроить.


Я, в общем-то, работал в публичном движке только один раз - на юнити, в плане шейдеров и кастомизации графики он
погибче.
Все остальные разы я работал только в in-house движках, в которых таких вопросов - как сделать то-то - не стоИт.
Вероятно, именно поэтому большинство ААА тайтлов делаются на in-house движках - чтобы не упереться в один прекрасный
момент в производителя движка (баг/нестабильность/невозможность что-то сделать без костылей и т.п.)

#19
17:50, 27 июня 2016

Mephisto std
> Я, в общем-то, работал в публичном движке только один раз - на юнити, в плане шейдеров и кастомизации графики он погибче.

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

Думаю что в данном случае вообще не логично сравнивать редактор материалов анриала и подсистему шейдеров в юнити, так как вещи разного уровня.
Логичнее уж тогда сравнивать плагин Shader Forge или ему подобный, и редактор материалов анриала. А то на данный момент у вас сравнение какое-то не слишком честное.

#20
17:52, 27 июня 2016

Mephisto std
> С чего ты решил что я не спросил? Я спросил, и даже ответ получил.
Ну так что они ответили?

#21
0:43, 28 июня 2016

AntonioModer
Ответили, что надо прокидывать матрицы в шейдер (т.е. опять менять сорцы).

Flakky
> Здесь же вам в первую очередь попался редактор, и вы вошли в ступор
Да не вошёл я ни в какой ступор =) Я столько движков повидал, что меня уже трудно удивить.
Еще раз, я представляю, как работает UE4, имею представление о кастом нодах и т.п.

Я сейчас говорил не о материалах и не о шейдерах, а о рендере в целом.
Добавлять камеры с кастомными параметрами (clipplanes), делать дроколлы "вручную", перестраивать
G-Buffer по своему усмотрению (Custom Depth не в счет) и т.п.
Т.е. иметь какой-никакой контроль над рендер-пайплайном.

#22
11:22, 28 июня 2016

Mephisto std
> Ответили, что надо прокидывать матрицы в шейдер (т.е. опять менять сорцы).
Да уж, Эпики эпичны во всем: эпичные фичи у них и эпичные фэйлы :D
Даже в простом LOVE2d на Lua можно передавать любой тип данных в шейдер с помощью одной строки.
А тут могучий и страшный UE4 и не может просто этого, нужно долго сорцы менять. Пффффф, :D
Очередной подводный камень UE4.

#23
22:57, 28 июня 2016

Тем временем путём модификации исходников и пары билдов по 2.5 часа получилось таки создать нечто похожее на правду


#24
12:44, 29 июня 2016

Mephisto std
Поздравляю.
Всетаки отправил в шейдер матрицу?

#25
13:00, 29 июня 2016

AntonioModer
Не, я добавил blendables в cube capture и записывал туда сразу линейный дистанс делённый на некое число.
Для сэмпла из кубмапы и восстановления дистанса матрицы не понадобились.

#26
16:26, 29 июня 2016

Mephisto std
> Не, я добавил blendables в cube capture и записывал туда сразу линейный дистанс
> делённый на некое число.
Значит костыль.

#27
16:50, 29 июня 2016

AntonioModer
Да нет, не костыль.

#28
15:29, 31 авг. 2016

Эпики сделали это

Страницы: 1 2
Unreal EngineФорумОбщее

Тема в архиве.