Как писать шейдеры в юнити. Часть 1. Поверхностный шейдер

Поділитися
Вставка
  • Опубліковано 1 гру 2024

КОМЕНТАРІ • 130

  • @firerun8599
    @firerun8599 3 роки тому +56

    О, наконец то уроки по шеидерам, надеюсь по ним будет много уроков

  • @Diyozen
    @Diyozen 3 роки тому +30

    Как всегда - топ!
    Важное уточнение, в верхней панели сцены, рядом с настройками включения-выключения звука и света, по кнопке (где нарисовано две плоскости и плюсик) можно включить Always Refresh, что будет обновлять шейдер и без запуска. Это очень помогает, потому что в какой-то момент постоянные клики по Play начинают выводить из себя. Особенно, когда очень часто что-то проверяешь.

    • @gaitavr1992
      @gaitavr1992  3 роки тому +6

      А вот этого не знал, спасибо

    • @FIGHTERSANOYK
      @FIGHTERSANOYK 3 роки тому +2

      Респект, чувак, ты спас многол моего времени и нервов ))

  • @Димас-ТвойРазработчикИгр

    Спасибо Максим, +10 к пониманию того как это работает)

    • @gaitavr1992
      @gaitavr1992  3 роки тому +5

      Буду продолжать)

  • @katerynakomar1375
    @katerynakomar1375 2 роки тому +4

    Дякую, Макс! Найкраще співвідношення теорії та практики для початківців, яке я наразі знайшла🙂

  • @daniilparokonnyy7980
    @daniilparokonnyy7980 3 роки тому +8

    Супер контент, ждем новых уроков!

    • @gaitavr1992
      @gaitavr1992  3 роки тому +1

      Следующее видео будет тоже по это тематике

  • @5uDouble
    @5uDouble 2 роки тому +3

    Я уверенный мидл, но с твоими уроками всегда нахожу что-то полезное для себя! Спасибо за уроки по шейдерам - для меня они особенно полезны

  • @ziggruna
    @ziggruna 3 місяці тому

    Обалденный ролик. Есть Shader Graph, конструктор шейдеров, но куда интересней это изучать как работает в самом коде. Очень доступно все объяснили.

  • @protudorin
    @protudorin 3 роки тому +4

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

  • @Yuriy-tk2pz
    @Yuriy-tk2pz 3 роки тому +1

    Комментарий в поддержку топового канала 👍

  • @ИбрагимИванов-э3р
    @ИбрагимИванов-э3р 2 роки тому

    Наконец-то я нашел приличный русскоязычный канал с инфой по юнити. До этого еще Сакутин был, но тот больше по стебу других проггеров. Спасибо за видео!

  • @corvius
    @corvius 2 роки тому +1

    Пришло время учить шейдеры. Спасибо за урок!

  • @Vadhannel
    @Vadhannel 3 роки тому +2

    Очень круто и полезно, а главное понятно. Ждём продолжения

    • @gaitavr1992
      @gaitavr1992  3 роки тому +1

      Хорошо, что понятно получилось)

  • @bigbluepie8983
    @bigbluepie8983 3 роки тому +1

    Мое почтение! Как всегда на уровне

  • @ДенисКозлов-г2ч
    @ДенисКозлов-г2ч 2 роки тому +1

    Особенно круто что есть домашнее задание, спасибо за контент

  • @dzheraz_6953
    @dzheraz_6953 3 роки тому

    Твои ролики самые лучшие на русском ютубе. Никакой воды, все чётко и наглядно. Очевидно что ты очень хорошо разбираешься в том что говоришь, а не как подавляющее большинсво "что-то получилось, я не понял как, но запишу гайд"

  • @dimonsamarenkov
    @dimonsamarenkov 3 роки тому

    Ооо.. годнота подъехала, буду ждать новые ролики по шейдерам))

  • @ode2877
    @ode2877 3 роки тому +3

    Годная тема! Спасибо

  • @vladisslavss
    @vladisslavss 3 роки тому

    Увидел ролик и очень хочу посмотреть. Обложка очень манит!
    Жду вечера.!
    Огонь только за наличие 🔥🔥🔥

  • @AlekseyLoykuts
    @AlekseyLoykuts 3 роки тому +1

    Очень круто, спасибо. Особенно за разбор структуры файла, специфичного для юнити

  • @afesdaller162
    @afesdaller162 3 роки тому +1

    Спасибо, это было прекрасно. Жду продолжения.

  • @AlexStraga
    @AlexStraga 3 роки тому +2

    Спасибо, очень полезно. Приятно осозновать что 95% инфы я таки уже понимал ) А вот наименования в Input было неожиданным. Обычно тупо копировал целые блоки и "ничего не трогал" ) Ждем продолжения.

    • @gaitavr1992
      @gaitavr1992  3 роки тому

      Работает - не трогай?)

    • @AlexStraga
      @AlexStraga 3 роки тому

      @@gaitavr1992 отчасти) Чаще "хз откуда оно берет данные, лучше не буду трогать")

  • @lisaftl270
    @lisaftl270 3 роки тому +1

    Спасибо большое за урок по шейдерам, хотелось бы побольше видео на эту тему

  • @AlexanderPavliuchik
    @AlexanderPavliuchik 3 роки тому +1

    Оч доступно объясняешь! Спасибо!

  • @PavelStr-x5w
    @PavelStr-x5w 2 роки тому +1

    комментарий в поддержку)

  • @DaronRUS
    @DaronRUS 3 роки тому +2

    То что я ждал, спасибо большое

  • @ЕленаЕлена-ъ2л
    @ЕленаЕлена-ъ2л 3 роки тому +1

    Просто зачёт) обожаю когда объясняют шейдеры в код, а не только визуальным программированием) полезно править ассеты потом)
    А можно еще видосы по рефакторингу кода? Только не совсем джунов, а то от прошлых видео волосы дыбом, совсем там зеленые были, которые даже не работали еще, только учились) Сакутин конечно круть ревьюер, но особо не объясняет) нужно понимать что у миддлов иногда западают некоторые штуки в силу специфики работы, когда не используешь и под капот не лезешь и чудишь по мелочам) хочется разбор ошибок в коде посерьезнее) такое очень помогает)

  • @Skyline8622
    @Skyline8622 3 роки тому +1

    Офигенно! Спасибо за труд

  • @paupertony
    @paupertony Рік тому

    Отличное видео, спасибо большое! Лайк, подписка

  • @Fire_Walker
    @Fire_Walker 3 роки тому

    Выглядит неплохо , ещё не смотрела , но круто , надо попробовать

  • @svetasemenova8679
    @svetasemenova8679 3 роки тому

    Большое спасибо! Крайне подробно и интересно!

  • @vladisslavss
    @vladisslavss 3 роки тому

    Круть!
    Нужна новая рубрика!!!!
    Лукас и коммент в поддержку автора канала🔥🔥🔥

  • @press_the_x
    @press_the_x 3 роки тому

    Очень круто, давно ждал настолько подробного и понятного урока 😊👍

  • @mikhailturchin3413
    @mikhailturchin3413 3 роки тому

    Информация по шейдерам и на русском, я так тебя давно ждал

  • @askaranarbekov3145
    @askaranarbekov3145 3 роки тому

    Прошу не бросать тему с шейдерами ,
    это очень интересно

  • @metal_burn
    @metal_burn 3 роки тому

    Если будуt еще уроки - обязательно буду смотреть!

  • @timsem2624
    @timsem2624 3 роки тому

    Спасибо, эта информация полезна для меня.

  • @alexgolovaschenko8391
    @alexgolovaschenko8391 3 роки тому

    Жду следующую часть!

  • @yellowtilegames
    @yellowtilegames 3 роки тому

    Спасибо большое за разбор темы шейдеров!

  • @Shineglow
    @Shineglow Рік тому

    Большое спасибо за урок!

  • @andreidemianenko2980
    @andreidemianenko2980 3 роки тому

    лайк, подписка и плюсик в карму!

  • @ivanmayerle1333
    @ivanmayerle1333 3 роки тому

    Жду продолжения)

  • @Max_Mnexuss
    @Max_Mnexuss 3 роки тому

    Круто! Надо будет все повторить. Я работая в Maya привык к нодам, а в unity использую Amplify shader editor. Но всегда мечтал уметь писать шейдера.

  • @АльбертАвагян-м9т
    @АльбертАвагян-м9т 3 роки тому

    Спасибо большое за старания, отличный урок.

  • @AhahaStudioTM
    @AhahaStudioTM 3 роки тому +1

    Спасибо! очень круто!

  • @easycodeunity3d14
    @easycodeunity3d14 3 роки тому

    Кайф. Однозначно подписка

  • @nerfitplz4863
    @nerfitplz4863 3 роки тому +2

    Хороший видос. Для меня в шейдерах остаётся самым сложным это изменение вершин текстуры. Такие эффекты как падаешь в воду, а гладь воды идëт волнами. Постоянно ищу видосы с такими примерами

    • @xephosbot
      @xephosbot 3 роки тому

      Это не сложно, не так давно искал что-то подобное. Правда в моем случае нужны были воксельные волны)

  • @andreyzyablikov9891
    @andreyzyablikov9891 3 роки тому +1

    Большое спасибо!

  • @artsemgorbatchev8999
    @artsemgorbatchev8999 3 роки тому

    кайф. спасибо за урок!

  • @mypaxa003
    @mypaxa003 3 роки тому +2

    Отличный урок. Хотелось бы уроки по всем нюансам шейдеров и юнити. З-буфер и т. д...

    • @gaitavr1992
      @gaitavr1992  3 роки тому +1

      Это ж только первый, вводный ролик

    • @mypaxa003
      @mypaxa003 3 роки тому +1

      @@gaitavr1992 Я понимаю. Я имел ввиду, что надеюсь на продолжение темы, со всеми вытекающими.

  • @vitaliySobakinson
    @vitaliySobakinson Місяць тому

    Спасибо за урок

  • @nailetes
    @nailetes 2 роки тому

    Спасибо! Очень классный урок, в минимум времени максимум информации без "воды". Очень рада, что наткнулась на этот ролик, и посмотрю еще остальные видео обязательно и наверно не один раз. Давно хочу разобраться с шейдерами, но инфа в основном разрозненная и сложно усваивается, особенно для гуманитариев типо меня. Что за окно, в котором редактируете шейдер? Он сразу компилится?

  • @vicktoriashepard
    @vicktoriashepard 3 роки тому +2

    Востребованная тема, отличный контент!
    з.ы. Увы еще раз убедилась что шейдеры это "не про меня"

    • @gaitavr1992
      @gaitavr1992  3 роки тому +4

      В любом случае полезно находить общий язык с тех артом, особенно если ты тим лид

    • @vicktoriashepard
      @vicktoriashepard 3 роки тому

      @@gaitavr1992 искренне преклоняюсь пред их математическим гением.

    • @AlexStraga
      @AlexStraga 3 роки тому +1

      @@vicktoriashepard На самом деле это не так сложно для базового понимания. другое дело да использовать вские формулы в которых экспоненты, синусы и косинусы чтобы добиться нужного эффекта. Тут да, тут чаще всего особые мозги нужны )

    • @vicktoriashepard
      @vicktoriashepard 3 роки тому

      @@AlexStraga базовое понимание есть, даже shader graph пользуюсь, правда не всегда понимаю что какая нода делает 😂

    • @AlexStraga
      @AlexStraga 3 роки тому

      @@vicktoriashepard ну это норма)

  • @Magic__Man
    @Magic__Man Рік тому

    Макс - лучший!

  • @MeaNX
    @MeaNX 3 роки тому +2

    Наконец-то!

  • @redmanone6963
    @redmanone6963 3 роки тому

    Наконец то. Подписка

  • @nokia_n-gage
    @nokia_n-gage 3 роки тому

    Лайк не глядя)

  • @Jicefrost
    @Jicefrost Рік тому

    лайк и подписка, спасибо за видео

  • @woki4170
    @woki4170 3 роки тому +1

    Супер

  • @oleksandrshmalko626
    @oleksandrshmalko626 Рік тому

    Подякував!

  • @mkdir699
    @mkdir699 3 роки тому +1

    Nice

  • @denisstakovich8040
    @denisstakovich8040 2 роки тому

    Наконец то

  • @kroniecraft8339
    @kroniecraft8339 3 роки тому

    Лайк лайк

  • @КаримКеримков
    @КаримКеримков 3 роки тому

    Лютейший ТОП! Очень подробная и качественная подача! Вопрос: А нельзя как-то сделать подсветку синтаксиса языка шейдеров?

  • @bob27111
    @bob27111 3 роки тому

    кайф

  • @TitikUniverse
    @TitikUniverse 3 роки тому

    Афигенно

  • @tcunay1
    @tcunay1 3 роки тому

    Топ контент!

  • @ЕгорДемьяненко-щ6о

    Ура!

  • @petrosaslanidis
    @petrosaslanidis 3 роки тому

    Молоток

  • @ВасильЛатыпов-ф3л
    @ВасильЛатыпов-ф3л 3 роки тому +1

    Ничего не понял, но очень интересно

  • @Idi_V_Pizdu_Eblan
    @Idi_V_Pizdu_Eblan 3 роки тому

    Как всегда топ,какой паттерн больше всего подходит для реализации магазина оружия в шутере ?

  • @mdvulfix
    @mdvulfix 2 роки тому

    сложно но итересно... =)

  • @TheTempterable
    @TheTempterable 3 роки тому

    Хотелось бы больше информации по встроенным алгоритмам. Когда впервые столкнулся с шейдерами в юнити, огромное кол-во вопросов было именно про "магические слова" после #pragma и т.д...

  • @evesheppard2341
    @evesheppard2341 3 роки тому

    Привет, сделай видео про управление от 3го лица, не могу понять концепцию кватернионов, вот прям для деревянных объясни и покажи на как это работает в юнити =)
    p.s подписался, колокольчик жмякнул

  • @verigin094
    @verigin094 3 роки тому +2

    А нельзя ли записывать уроки по написанию шейдера вместе с созданием его в shader graph? Ну то есть чтоб одновременно можно было учиться писать код и понимать как сделать тоже самое в shader graph. А то хочется уметь создавать шейдера двумя способами))

    • @gaitavr1992
      @gaitavr1992  3 роки тому +5

      Если вы будете писать шейдеры, то граф не проблема вообще

  • @TovSpaskin
    @TovSpaskin 3 роки тому

    Методом проб и ошибок сделал функцию, которая делает вроде бы нечто похожее на ДЗ.
    uv.y += 0.25 * sin(uv.y * 3.14) * sin(uv.x * 3.14 - _Time.y);
    Я правда не особо осознаю как именно это работает. Рассуждал я примерно так: есть функция которая сдвигает все координаты на величину от -1 до 1. значит(?) нужно ограничить нулем её влияние в y = 1 и y = 0 - такое нам дает как раз статичный sin(y), а потом это надо разделить на 4 (?) потому что изначально было четыре множителя и чтобы якобы компенсировать это - делил на 4. Хотя, потом понял, что это лютый бред - 1 на 1 сколько не умножай будет 1, и компенсировать это не надо, но без этого деления(*0,25) оно почему то не работает.

  • @Black_Raven-
    @Black_Raven- 3 роки тому

    Блин, это конечно круто, что вы используете нативный код для шейдеров, и что в некоторых случаях это действительно может быть очень полезно.
    Но почему не используете Shader Graph?

    • @gaitavr1992
      @gaitavr1992  3 роки тому +2

      Разработчик, который может написать шейдер кодом, легко реализует его в графе. Наоборот это не работает, особенно интересно получится, когда встанет вопрос оптимизации

  • @bibyter6451
    @bibyter6451 3 роки тому

    Привет! Подскажи, как сделать outline всегда одной ширины? Как в 2d мультиках, это через постпроцесс надо ?

    • @gaitavr1992
      @gaitavr1992  3 роки тому

      У меня из старых видосов было два пост процесса, может подойдет

  • @IvanToropelov
    @IvanToropelov 3 роки тому +1

    А renderpipeline не может ограничить какие-либо фичи в шейдерах? Я могу например в URP сделать PBR шейдер?

    • @СтасЧернов-ж6б
      @СтасЧернов-ж6б 3 роки тому

      Основное ограничение - нет возможности писать surface шейдера.

    • @wellmor
      @wellmor 3 роки тому

      @@СтасЧернов-ж6б Разве это ограничение?) Это счастье).

  • @Grapeoff
    @Grapeoff 3 роки тому

    «Двухкомпонентный вектор» - имеется ввиду однострочная матрица?

    • @gaitavr1992
      @gaitavr1992  3 роки тому

      Нет, это два значения

  • @ivanmayerle1333
    @ivanmayerle1333 3 роки тому

    В своё время нужно было написать шейдер и сам допер до всего что было в этом ролике, но вот за 5 дней

  • @SerLansevRotZaza
    @SerLansevRotZaza 7 місяців тому

    А я думаю -"почему у меня симуляция уравнения дефузии нихера не пашит" - а тут блять отрицательные значения в float4 в цвете берут с модумел. Так что делать, засовывать отрицательные значения в другой канал, или есть способ убрать этот модуль для цвета?Подскажите.

  • @Carrion-Crow
    @Carrion-Crow 3 роки тому

    Шейдеры это не сложно по сути, просто нужно знать все функции шейдерного языка, так как IDE нету для этого дела, по крайней мере я не нашел адекватного, если есть такое подскажите

  • @Иван-д2ф6ш
    @Иван-д2ф6ш 11 місяців тому

    спасибо огромное за видео столкнулся с такой проблемой что при создании шейдера он розовый и особо не как не чиниться .
    полез на оверфлоу нашел что то вроде ..
    """Итак, после небольшого исследования выяснилось, что шейдерный граф/шейдеры получили обновление, и создание шейдера через окно, предоставляемое Unity, больше не работает. Как кто-то упомянул в комментариях, можно создать шейдер шейдерграфа, скомпилировать его и работать оттуда, однако это 5000 строк кода."""
    я понимаю что это мои проблемы.
    но какие вообще у меня есть варианты?
    или только через шейдер граф что то делать.
    на оверфлоу предлагают какой то другой шаблон для шейдера использовать но он выглядит в разы сложнее ...
    или вообще забить на это и пробовать что то другое.

  • @tiraniks1158
    @tiraniks1158 2 роки тому +1

    Привет всем, столько непонятных терминов, может ли кто-то посоветовать или книгу или ещё какие-то либо уроки по шейдерам с полнейшего нуля?(Я понял, здесь даже с базовым знанием математики(которого у меня нет😁) даже делать нечего)

  • @Pravda-bw3tj
    @Pravda-bw3tj 3 роки тому

    а для чего тогда служит shader graph?

    • @gaitavr1992
      @gaitavr1992  3 роки тому

      Для визуального программирования шейдеров. Чем вызван подобный вопрос?

    • @Pravda-bw3tj
      @Pravda-bw3tj 3 роки тому

      @@gaitavr1992 Большинство мне рекомендовало использовать Shader Graph для того чтобы писать шейдеры, для меня это впервые писать шейдеры кодом)

    • @gaitavr1992
      @gaitavr1992  3 роки тому +3

      Зная код, с графом проблем нет, а вот наоборот будут

  • @xxxxxx5237
    @xxxxxx5237 3 роки тому

    Граф гораздо проще изучить начинающим, по нему и документация доступна и ускоряет разработку, тем более что он и в эффектах не сильно меняется. Я по знаниям мимо проходил, хобби не больше, но кажется учиться кодить шейдеры непрактично - вчерашний скилл.

    • @kirillsviderski4739
      @kirillsviderski4739 3 роки тому

      А потом инди гавно в стиме 8 Гб оперативы кушает и топовую видеокарту просит :)

  • @nightkot4917
    @nightkot4917 3 роки тому

    НУ НАКОНЕЦ ТО КТО ТО НОРМАЛЬНО ОБЪЯСНИЛ, как работают шейдеры. А то "некоторые псевдо-учителя" разведут на три часа канитель в три лица. Больше между собой "лайки-чмоки" разводят пустопорожний треп. Потом "очнутся", и не помнят, о чем вообще рассказывали.

  • @ThePanSashko
    @ThePanSashko 3 роки тому

    А что там по IDE?

    • @gaitavr1992
      @gaitavr1992  3 роки тому

      Не понял вопроса

    • @wellmor
      @wellmor 3 роки тому

      Райдер. Или студия. Ну, или VSCode, хотя это не IDE.

    • @AlexStraga
      @AlexStraga 3 роки тому

      @@gaitavr1992 Типа на чем можно писать шейдеры чтобы ИДЕ могла подсказывать правильные названия встроенных функций и чтобы при этом не лезть в Юнити чтобы он уже проверял на ошибки.

  • @yarosyari3516
    @yarosyari3516 Рік тому

    ищу double sided шейдер для URP

  • @ЕгорКаплун-ъ1с
    @ЕгорКаплун-ъ1с 3 роки тому

    Кто нибудь поясните простым языком что такое шейдере, не могу найти ничего подробного

  • @ufir2416
    @ufir2416 3 роки тому

    а почему уже не шейдер граф бы изучать? Старые шейдера потихоньку не актуальными становятся

  • @GrinyaPLAY
    @GrinyaPLAY 3 роки тому

    Все хорошо, но с «хаканьем» надо что-то делать!

  • @kiririn39m8
    @kiririn39m8 3 роки тому +1

    Отличное видео, большое спасибо

  • @ИльяМаглич-ь2е
    @ИльяМаглич-ь2е 3 роки тому

    Годно, мужик!