Добавлен
Можно ли как-то сделать молнию в 2д?
и каким образом?
у нас есть текстура самой молнии, которая бесшовная (естественно только с одной стороны) как в варе.
как можно растягивать такую молнию, но чтобы менялся только размер спрайта, а текстура не растягивалась?
вопрос на засыпку: анимация 2д текстуры этой же молнии, как оно делается?

Tiodor, возможно. Но самый замечательный вариант это сгенерировать мэш с правильными текстурными координатами. И тогда ничего хитрого не надо придумывать. Поэтому надо курить генерацию мэша
`
ОЖИДАНИЕ РЕКЛАМЫ...
25
Есть ли возможность в юнити анимировать UVW развертку на объекте?
24
П4ела:
Есть ли возможность в юнити анимировать UVW развертку на объекте?
Есть.
По сабжу: что мешает юзать вариации спрайтов и анимировать ими?
25
расширяйте объект с текстурой, уменьшайте саму текстуру.
26
Можно юзать LineRenderer с определенными параметрами - чтобы каждый новый LineRenderer был ниже предыдущего, и чтобы ширина выбиралась соответственным методом.
24
lentinant:
Можно юзать LineRenderer с определенными параметрами - чтобы каждый новый LineRenderer был ниже предыдущего, и чтобы ширина выбиралась соответственным методом.
тогда уж проще партиклами замутить, имхо.
30
тогда уж проще партиклами замутить, имхо.
а если есть текстура молнии? мне нужно отбиваться именно от текстуры. чтобы оно красиво выглядело =\
как растягивание в херстоуне стрелки для выбора цели
24
Tiodor:
тогда уж проще партиклами замутить, имхо.
а если есть текстура молнии? мне нужно отбиваться именно от текстуры. чтобы оно красиво выглядело =\
как растягивание в херстоуне стрелки для выбора цели
Погоди, давай проясним ситуацию: что ты конкретно хочешь? Просто растянуть текстуру?
30
вот. у нас есть текстура молнии как сверху слева.
и в зависимости от расстояния она тайлится + анимация текстуры от начала к концу. то есть текстура движется.
Загруженные файлы
25
расширяйте объект с текстурой, уменьшайте саму текстуру.
30
П4ела, это хорошо, но как это сделать посредством юнити?
24
  1. Дай текстуре параметры: Type: Texture, Wrap Mode: Repeat
  2. Создай материал с этой текстурой, поставь шейдер "Particles/Alpha Blended", затем в Tiling укажи сколько раз текстура должна повторяться.
  3. Напяливай материал на любой обжект и увеличивай его.
Для 2д примерно те же операции.
29
RSQR, дело в том, что кол-во повторений текстуры зависит от расстояния между точками. Получается что каждый раз надо создавать новый материал?
21
а есть еще один способ.
Юзая line renderer можно складывать эту линию на месте обрыва.
Так как у нас на одну линию одна текстура растягиваемая, можно подобрать материал так, чтобы на максимум длинны молнии хватало. Зная Тио, рискну предположить что он работает в два дэ. А значит сразу после конца линию можно уводить в горизонт, так что камера ее не увидит.
Имхо, самый простой способ, хоть и не самый правильный.
Можно еще тайлинг текстуры через код менять, но так неинтересно.
24
alexprey:
RSQR, дело в том, что кол-во повторений текстуры зависит от расстояния между точками. Получается что каждый раз надо создавать новый материал?
нет, не надо. Ты растягиваешь объект, и текстура сама дублируется в зависимости от размера.
24
Легко решается переписыванием шейдера, если юнити это позволяет. Хотя подозреваю что даже выбор правильного шейдера из стандартных может зарешать.
30
RSQR, а как динамично менять параметр тайлинга?
24
Tiodor:
RSQR, а как динамично менять параметр тайлинга?
Скриптом с помощью этой функции:
29
RSQR, дык он будет менять у всех объектов с этим материалом
30
alexprey, то есть несколько таких молний направленных в разные точки сделать не выйдет?
только для каждой разные материалы создавать?
24
Tiodor:
alexprey, то есть несколько таких молний направленных в разные точки сделать не выйдет?
только для каждой разные материалы создавать?
ну если у тебя несколько одинаковых молний - разные материалы не нужны, в противном случае на каждую молнию по материалу. А вообще можно создавать материал в памяти и удалять когда он не используется.
@MenuItem("GameObject/Create Material")
static function CreateMaterial () {
    // Create a simple material asset
    var material = new Material (Shader.Find("Diffuse"));
     AssetDatabase.CreateAsset(material, "Assets/" + Selection.activeGameObject.name + ".mat");
}
29
RSQR, вот я и говорю, что надо создавать на каждую молнию свой материал
Хотя лучше посмотреть в сторону шейдеров
Чтобы оставить комментарий, пожалуйста, войдите на сайт.