Форум

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

05 октября 2016 20:13
Случилось так, что мой материал не хочет запускаться в b4w.
Во вьюпорте все отлично, но в b4w видно только одну текстуру


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

При попытке собрать данный материал нодами я потратит целый день, первую половину я бил в бубен, а когда он вышел из строя, то стал трясти маракасами. И вот племя выгнало меня на большую землю искать помощи на форуме.
Baasis - vk.com/baasis - vk.com/pro_blender
OS: Mint 18 Sarah x86_64 Linux 4.4.0-21-generic, DE Cinnamon, CPU: Intel Core i7-2600K CPU @ 6.3GHz, GPU: GeForce GTX 680, GeForce GTX 650 Ti, RAM 16Gb
Браузеры: неадекватный FireFox v49, не люблю но тестирую все на Google Chrome v54, вроде сойдет Vivaldi 1.4.589.38
05 октября 2016 20:17
Кое как и кое что у меня получилось сделать, но это совсем не тот результат, что я бы хотел получить.
Посему у меня есть предложение смастерить автоконвертор стоковых материалов в нодовые, либо починить стоковые материалы для нормального запуска и отображения в b4w.



Baasis - vk.com/baasis - vk.com/pro_blender
OS: Mint 18 Sarah x86_64 Linux 4.4.0-21-generic, DE Cinnamon, CPU: Intel Core i7-2600K CPU @ 6.3GHz, GPU: GeForce GTX 680, GeForce GTX 650 Ti, RAM 16Gb
Браузеры: неадекватный FireFox v49, не люблю но тестирую все на Google Chrome v54, вроде сойдет Vivaldi 1.4.589.38
05 октября 2016 20:33
Далее еще один момент.
У меня две карты нормалей и необходимо их смешать. В стоковом варианте я вообще не заморачивался с тем как это делать и все прекрасно работало.

Если смешать карты нормалей через Vector Math - Add, то обе карты становятся в 2 раза слабее и непонятно как их контролировать, а если их смиксовать и подать на ноду normal map, то результат становится вообще непонятный, даже блик света становится с другой стороны.
Еще непонятно как вывернуть карту нормалей, чтобы она работала в другую сторону. Если бы работала normal map, то я бы просто Y, зеленый, перевернул с помощью RGB curves, либо после сепарейта зеленый инвертировал.



Прошу помочь разобарться в том, что есть баг, а что фича и как лечить эти болячки. И есть ли способ быстро конвертировать стоковые маты в нодовые, раз с ними какая-то беда?



Файл прилагаю.
Floor_tile_2_1.blend
Baasis - vk.com/baasis - vk.com/pro_blender
OS: Mint 18 Sarah x86_64 Linux 4.4.0-21-generic, DE Cinnamon, CPU: Intel Core i7-2600K CPU @ 6.3GHz, GPU: GeForce GTX 680, GeForce GTX 650 Ti, RAM 16Gb
Браузеры: неадекватный FireFox v49, не люблю но тестирую все на Google Chrome v54, вроде сойдет Vivaldi 1.4.589.38
05 октября 2016 21:09
Релизные фишки тест-драйв не прошли получается.

Baasis - vk.com/baasis - vk.com/pro_blender
OS: Mint 18 Sarah x86_64 Linux 4.4.0-21-generic, DE Cinnamon, CPU: Intel Core i7-2600K CPU @ 6.3GHz, GPU: GeForce GTX 680, GeForce GTX 650 Ti, RAM 16Gb
Браузеры: неадекватный FireFox v49, не люблю но тестирую все на Google Chrome v54, вроде сойдет Vivaldi 1.4.589.38
06 октября 2016 11:47
Случилось так, что мой материал не хочет запускаться в b4w.
Во вьюпорте все отлично, но в b4w видно только одну текстуру
Да, имеются некоторые ограничения по использования количества текстур в стековом материале, котоыре действительно не описаны в документации, это мы исправим. Использовать можно две диффузные текстуры, одну карту нормалей и одну UV-карту на весь материал, ну не считая карты спекуляра которых тоже две. Остальное просто отбрасывается.

Релизные фишки тест-драйв не прошли получается.
Кнопка Set Recommended Options просто выставляет галочку World Tangent Shading и меняет отображение во вьюпорте с Mulitexture на GLSL, материалы она не конвертирует.

Ну и конкретно по вашей проблеме разного отображения смешиваения карт нормалей в нодовом материале и стековом. Стековый материал по сути делает много автоматически и каким-то ему только известным методом, а в нодовом надо постараться еще это поведение воспроизвести. Стековый материал добавляет карту нормалей (каждую) не нормализуя их общую сумму, то есть если карты номралей выставленны во влияние в 1, то в сумме будет 2. Если же пытаться в нодах смешать карты нормалей через Add то получается немного не тот вариант, по сути надо предварительно умножить саму карту нормали в 2 раза, так как смешивание делит карту номралей ровно по полам.
Что бы во вьюпорте увидеть правильное отображение карты нормалей (не вывернутое) надо после карты нормалей поставить ноду Normal Map которые конвертирует её в тангентный шейтинг. В настройках цветороррекции текстуры с картой нормалей нужно выставить non-Color так как в данном случае цветокоррекция не нужна, и помножить саму карту нормалей на 2.

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

Floor_tile_2_1.blend

Ну и последняя ложка дёгтя, это то что мы обнаружили что при экспорте в движок карта нормаелй со Streigh выше 1 работает неправильно, но это мы исправим в будущих релизах. Спасибо за понимание.
Blend4Web и всё такое. Тридешу тридэ, моделю модели.
06 октября 2016 12:24
Да, имеются некоторые ограничения по использования количества текстур в стековом материале, котоыре действительно не описаны в документации, это мы исправим. Использовать можно две диффузные текстуры, одну карту нормалей и одну UV-карту на весь материал, ну не считая карты спекуляра которых тоже две. Остальное просто отбрасывается.
То есть по сути, для полностью запеченого материала? Это ограничение b4w или технологий, которые он использует?
Жаль, что это нигде не описано. Порой, как вчера, садишься за проект и делаешь сразу так как должно по идее работать и планируешь все сдать в срок, а получаешь отворот поворот и не понимаешь, что вообще происходит. Разработчики, то между собой знают в чем проблема и могли бы сделать сразу все правильно, либо с костылями, а пользователи нет, и тратится время: на создание чего либо, осознание что не получилось ожидаемое, втыкание в проблему баг ли это или кривые руки, попытка найти решение, переработка под новый вариант, о котором знаний может быть недостаточно.

Кнопка Set Recommended Options просто выставляет галочку World Tangent Shading и меняет отображение во вьюпорте с Mulitexture на GLSL, материалы она не конвертирует.
Я не претендую от этой галочки конвертирование. Просто когда читаешь новшества релиза, где величественно написано "максимально соответствует" или "корректно работает" и так далее, а по факту не получаешь этого, то напрашивается вопрос "Зачем писать?". Не подумайте, что давлю

Конвертирование предлагал и прошу сделать как фичу для новых релизов. Ведь куча конвертеров существует internal в cycles, даже между софтом, а тут то по сути нужно в пределах одного рендер движка это сделать. Ну это было бы здорово по крайней мере, либо вариант доработать ограничения, если это зависит от b4w.


Стековый материал по сути делает много автоматически и каким-то ему только известным методом, а в нодовом надо постараться еще это поведение воспроизвести.
Как вы сами сказали про особенности работы.

Большое спасибо за поправленный файл, я так заигрался с галочками, пытаясь починить все, что оказывается забыл снова выставить текстуру в non color и от этого получается не работала нода normal map.

p.s. запустил файл в b4w fast preview а там.

Baasis - vk.com/baasis - vk.com/pro_blender
OS: Mint 18 Sarah x86_64 Linux 4.4.0-21-generic, DE Cinnamon, CPU: Intel Core i7-2600K CPU @ 6.3GHz, GPU: GeForce GTX 680, GeForce GTX 650 Ti, RAM 16Gb
Браузеры: неадекватный FireFox v49, не люблю но тестирую все на Google Chrome v54, вроде сойдет Vivaldi 1.4.589.38
06 октября 2016 12:56
Отвечу со своей колокольни.
Мы тратим кучу времени на тестирование перед релизом - около недели, но мы физически не в состоянии все аспекты протестить, все методы использовать. Поэтому мы выпускаем релиз-кандидаты, девелопер превью - чтобы сообщество тоже потестило, чем больше людей, тем лучше результат. Увы, мало кто качает и тестит предрелизные версии, и некоторые проблемы остаются незамеченными. Это чаще всего не так, что программисты знают, что что-то не работает, но молчат - обычно это новость для всех, ведь никто не тестил такой вариант, никто не пробовал такой юзкейс. В блендере ОГРОМНОЕ количество разных возможностей по созданию сцен

Мы стараемся находить и фиксить все баги, но что-то от нас, бывает, ускользает. И нам важна помощь в тестировании от коммюнити - тех, что тоже заинтересован в хорошей работе B4W. У каждого художника свои методы, и о многих неработающих вещах мы даже не догадываемся, т.к. совсем не практикуем определенные принципы работы. К примеру, мы в 90% случаев используем нодовые материалы, т.к. они быстрее, понятнее и удобнее в каком-то смысле, дают больше возможностей, и т.д. и т.п. Поэтому автоматом стеку уделяется чуть меньше внимания.

Поэтому и пишем так :) У нас все работает, мы вроде протестили все. А потом уже, после релиза, открываются какие-то неточности в случаях, которые мы не предполагали.

В общем, лейтмотив всей моей тирады таков: было бы гораздо лучше, если бы больше людей помогало тестить предрелизные версии. Допустим, мы даже наймем команду тестеров, которые шарят в блендере, блендфовебе, имеют разные маки/разные версии винды и т.д. и т.п.. Но все равно - нет гарантии, что они протестят такой принцип, по которому, к примеру, вы работаете.

Ну.. Как-то так

p.s.
это мое личное мнение, я не от лица всех говорю. Как там говорится, "мнение автора может не совпадать с позицией компании"
06 октября 2016 13:02
То есть по сути, для полностью запеченого материала? Это ограничение b4w или технологий, которые он использует?
Это ограничение b4w так как стековые материал мы сичтаем устаревшим (как и сами Blender разработчики) и не планировали его полную поддержку, но возможно сделаем в будующем какую либо реструктуризацию.

Жаль, что это нигде не описано.
Обязательно сделаем подробную инструкцию, но появление большого количества функцианала и привязка к релизам Blender не позваляет сделать всё единовременно.

Я не претендую от этой галочки конвертирование. Просто когда читаешь новшества релиза, где величественно написано "максимально соответствует" или "корректно работает" и так далее, а по факту не получаешь этого, то напрашивается вопрос "Зачем писать?". Не подумайте, что давлю
Там не было написано про поведение вектором, что по сути в больше степени внутренняя кухня Blender и Blend4Web никто же не обещал что сразу всё будет работать из коробки, надо ещё и настраивать всё сообразно новой системе. Ну а то что соответствует - то это действительно так, теперь вектора и оси у Blender и Blend4Web одинаково направленны и имеют одно и то же векторное пространство. Ура!

p.s. запустил файл в b4w fast preview а там.
Да я про это писал, это баг, поправим.
Blend4Web и всё такое. Тридешу тридэ, моделю модели.
06 октября 2016 13:11
Обязательно сделаем подробную инструкцию
Буду ждать, а в постах начну пояснять. Попал на мины так сказать, теперь буду предупреждать где они.

Пока выставлю значение на 1 и буду ждать лучших времен.

Спасибо за помощь!
Встретимся на CGevent , у меня будет еще много вопросов
Baasis - vk.com/baasis - vk.com/pro_blender
OS: Mint 18 Sarah x86_64 Linux 4.4.0-21-generic, DE Cinnamon, CPU: Intel Core i7-2600K CPU @ 6.3GHz, GPU: GeForce GTX 680, GeForce GTX 650 Ti, RAM 16Gb
Браузеры: неадекватный FireFox v49, не люблю но тестирую все на Google Chrome v54, вроде сойдет Vivaldi 1.4.589.38
06 октября 2016 14:21
И нам важна помощь в тестировании от коммюнити
Постараюсь подключиться. Возможно не туда смотрю конечно, но почему-то не видел RC версии.
Вот кстати Апдейтер увеличил бы аудиторию, лично мне не хочется перекачивать по 1,3 гига после каждой поправленной строчки и возможно другие пользователи думают так же.
Во всех этих тестах мне мешает участвовать не полное понимание происходящего, а именно где баг/недоработка/кривые руки. Показаться глупым тоже не каждый хочет
Baasis - vk.com/baasis - vk.com/pro_blender
OS: Mint 18 Sarah x86_64 Linux 4.4.0-21-generic, DE Cinnamon, CPU: Intel Core i7-2600K CPU @ 6.3GHz, GPU: GeForce GTX 680, GeForce GTX 650 Ti, RAM 16Gb
Браузеры: неадекватный FireFox v49, не люблю но тестирую все на Google Chrome v54, вроде сойдет Vivaldi 1.4.589.38
 
Пожалуйста, зарегистрируйтесь или войдите под своей учетной записью , чтобы оставлять сообщения.