Страница 1 из 1

Shader Graph. Размножить текстуру вдоль

СообщениеДобавлено: 27 авг 2020, 00:30
suckduck
Всем привет! У меня 2д игра, делаю шейдер для луча лазера, сам шейдер просто двигает текстуру чтобы луч как бы двигался, у меня есть его текстура но проблема в том что текстура растягивается или сжимается в зависимости от расстояния, ниже на картинке примерно показано что происходит под пунктом 1, а надо чтобы как под пунктом 2. Как это сделать? Если надо могу показать шейдер граф Изображение

Re: Shader Graph. Размножить текстуру вдоль

СообщениеДобавлено: 27 авг 2020, 05:24
waruiyume
Умножить UV на позицию вершины.

Re: Shader Graph. Размножить текстуру вдоль

СообщениеДобавлено: 27 авг 2020, 11:59
suckduck
waruiyume писал(а):Умножить UV на позицию вершины.

Можно поподробнее?

Re: Shader Graph. Размножить текстуру вдоль

СообщениеДобавлено: 29 авг 2020, 13:02
samana
Я правильно понимаю, что вы хотите "размножать" текстуру в зависимости от мастштаба (scale) вашего объекта?
Тогда убедитесь, что в инспекторе самой текстуры выбран режим WrapMode - Repeat. А в шейдерГрафе нужно просто соединить scale объекта с uv
скриншот в спойлере
Скрытый текст:
ИзображениеИзображение

Re: Shader Graph. Размножить текстуру вдоль

СообщениеДобавлено: 30 авг 2020, 13:06
suckduck
samana писал(а):Я правильно понимаю, что вы хотите "размножать" текстуру в зависимости от мастштаба (scale) вашего объекта?
Тогда убедитесь, что в инспекторе самой текстуры выбран режим WrapMode - Repeat. А в шейдерГрафе нужно просто соединить scale объекта с uv
скриншот в спойлере
Скрытый текст:
ИзображениеИзображение


Здравствуйте! Сделал как вы показали, но ничего не поменялось, repeat включен
Лазер сделан line renderer ом, я сделал шейдер, материал с этим щейдером и повесил его в материалы линии, когда линия лазера длиннее текстуры происходит как под пунктом 1 а нужно как под пунктом 2:
Изображение

Shader Graph сейчас:
Изображение

Re: Shader Graph. Размножить текстуру вдоль

СообщениеДобавлено: 30 авг 2020, 20:55
samana
suckduck писал(а):Лазер сделан line renderer ом

А, так это ведь другое дело совсем. С настройкой лайнРендера я мало знаком, но в его инспекторе есть настройки TextureMode и вам скорее всего нужно выбрать Repeat Per Segment или TIle. Но тогда вам нужно "строить" лайнРендер чётко по точками через определённое и равное расстояние, чтобы текстура не растягивалась.
Я не уверен, что всё будет работать правильно, это лишь предположения.
А у вас лазер планируется именно изогнутой линией, поэтому вы выбрали лайнРендерер?

Re: Shader Graph. Размножить текстуру вдоль

СообщениеДобавлено: 31 авг 2020, 13:20
suckduck
samana писал(а):
suckduck писал(а):Лазер сделан line renderer ом

А, так это ведь другое дело совсем. С настройкой лайнРендера я мало знаком, но в его инспекторе есть настройки TextureMode и вам скорее всего нужно выбрать Repeat Per Segment или TIle. Но тогда вам нужно "строить" лайнРендер чётко по точками через определённое и равное расстояние, чтобы текстура не растягивалась.
Я не уверен, что всё будет работать правильно, это лишь предположения.
А у вас лазер планируется именно изогнутой линией, поэтому вы выбрали лайнРендерер?


Ну вообще это просто единственный способ, который я знаю поэтому лайнРендером делаю