Шейдърите са мощни. А ресурсите, за да ги научите, са изобилни. Но когато за първи път навлизате в света на шейдърите, тази награда може да доведе до объркване. От къде започваш? Коя информация е остаряла? Как се тествате за това, което сте научили?

Сравнително лесно е да намерите в Google статия „Въведение в шейдърите“. Има страхотни из целия интернет. По дяволите, дори написах поредица, която може да се използва като въведение към шейдърите на същия уебсайт. Истинският проблем се появява веднага след като завършите първата статия или поредица. Къде ще отидете след това? Все още не знаете какво не знаете.

Въведете плана на урока.

Това не е точно нова концепция. Университетите го правят най-малко през последните 1160 години. Наличието на такъв, който да ни помогне да научим шейдъри в Unity, ще намали драматично времето ни за учене.

Това е тази статия. Първа чернова на план на урок за изучаване на шейдъри в Unity. Серията не предполага предварително познаване на шейдърите, въпреки че предполага някакъв основен опит с Unity.

Първите стъпки

Стъпка 1) Как започнах с шейдърите (Въведение в нестрашен шейдър)

Тази статия, написана от Minions Art, е най-нежното въведение в шейдърите, което някога съм срещал. Лесно е за следване и ще ви даде незабавни резултати. Дори и да не следвате никакви други стъпки в този план на урока, само тази статия ще ви накара поне да си поиграете и да модифицирате основен шейдър.

Стъпка 2) Леко въведение в шейдърите в Unity3D

Втора въвеждаща статия, но докато първата статия премълчава много по-фини детайли, за да можете да започнете да работите с шейдър възможно най-бързо, тази статия ще навлезе в дребните неща. Всеки къс код, който Unity добавя към шейдъра вместо вас, ще бъде обяснен, както и преглед на високо ниво на системата за рендиране на Unity.

Тук ще има излишна информация, но ако това е първото ви съгласувано усилие да научите шейдъри, тази излишност ще работи във ваша полза, както за разбиране, така и за запазване.

Ако Стъпка 1 е била най-важната, за да започнете да работите, тази стъпка е най-важната, за да сте сигурни, че имате необходимата подготовка, за да продължите да работите.

Стъпка 3) Повърхностни шейдъри в Unity3D

За нашата трета статия ще останем с невероятния Алън Зукони и ще направим втората част от неговата интро поредица от шейдъри. Тази статия ще разгледа повече специфичните за Unity „повърхностни шейдъри“, както и ще ви преведе през някои примерни шейдъри, докато той обяснява концепциите.

След като преминете през тези три статии, имате началото на здрава основа за разработване на шейдъри. Ако все още чувствате, че разбирането ви за тези начални стъпки е малко колебливо, това е добре! Разработката на шейдъри е много различен начин на мислене за много разработчици и отнема време, за да го разберете на интуитивно ниво.

Засега ще преминем към следващия раздел. Винаги можете да се върнете към тези първи три статии, след като сте опитали няколко от втория раздел.

Стъпка по избор

Много от тези шейдъри ще разчитат на шумови текстури. За малко допълнителна заслуга можете да преминете през този урок „тук“ от „CatLikeCoding“, който разглежда процеса на създаване на шумови текстури на perlin в Unity 3D. Или ако предпочитате просто да преминете към други части на разработката на шейдъри, можете да вземете пакет безплатни шумови текстури тук.

Изберете вашето собствено приключение

Сега идва забавната част. Ще искате да разгледате накратко всеки от тези списъци с уроци и да изберете шейдърите, които ви звучат най-вълнуващо. Двама от авторите, които вече сте срещали. Те са:

  1. Алан Зукони
    Най-техническият в този списък, Алън пуска невероятно подробни и пълнофункционални уроци, които ще ви преведат през всички стъпки, необходими за създаване на посочения шейдър. Ще искате да прегледате списъка, свързан тук, за всичко с етикет „Unity“ и „Shader“.
  2. Joyce [Minions Art]
    Ако някой в ​​този списък ще ви привлече с чиста артистична визия, това е Джойс. Самите уроци идват в нов gif формат, който ги прави лесни за визуализиране. Самият текст обаче може да е оскъден, така че понякога може да е най-добре да ги използвате като малки мини тестове на вашите придобити знания за шейдъри. Изходният код за всички ефекти също е достъпен за донорите на патреона на Джойс.
  3. Дан Моран
    Друг класен акт, Дан пуска своите уроци под формата на видео „казуси“, където разбива ефектите от AAA игри. Лесен за следване, забавен, а изходният код за всички ефекти е наличен в описанието на видеоклипа.

Примерен план за урок

Ако преглеждането на тези списъци все още е малко непосилно или просто искате по-подбрано изживяване, ето един възможен път, по който можете да поемете, за да покриете голямо разнообразие от теми за шейдъри.

  1. „Как започнах с шейдърите“
  2. Нежно въведение в шейдърите в Unity3D, част 1
  3. Нежно въведение в шейдърите в Unity3D, част 2
  4. Написани основи на графичните ефекти
    Въведение в заместващите шейдъри.
  5. Основи на видеото с ефекти на изображението
    Втори бърз поглед върху заместващите шейдъри.
  6. Pokemon Battle Transitions
    Допълнително изследване на ефектите на цял екран.
  7. Текстурно базирано разтваряне
    Бързо и мръсно въведение в изхвърлянето на пиксели.
  8. Ефект на 3D принтер, част 1
    Гмурнете се по-дълбоко в изхвърлянето на пиксели.
  9. Ефект на 3D принтер, част 2
    Продължение на дълбокото гмуркане на изхвърлянето на пиксели.
  10. Предизвикателство: Toon Dissolve
    Тествайте знанията си за изхвърляне на пиксели, като пресъздадете този шейдър.
  11. Въведение в манипулирането на върховете
    Въведение за начинаещи в манипулирането на върхове във вашия шейдър.
  12. Manipulation Vertex for Tentacles
    Друг специален Алън Зукони. Продължаваме нашето изследване на върховата част на шейдърите, като създаваме шейдър за манипулиране на „смукателите“ на пипало.
  13. Предизвикателство: Движеща се трева
    Вземете наученото за манипулирането на върхове и опитайте да създадете този шейдър.
  14. Texture Distortion
    Направете дълбок скок с урока за Texture Distortion на CatLikeCoding.
  15. Предизвикателство: UV изкривяване
    Вижте дали можете да вземете наученото в последния урок и да създадете този урок за UV изкривяване.

Ето го, първата редакция на нашия план за уроци по шейдър на Unity. Може да създам актуализирана версия на този списък по-късно, ако хората намерят този ресурс за полезен. Така че, моля, ако преминете през този списък, изпратете ми отзиви! Кажете ми, ако срещнете някакви проблеми или знаете за други ресурси, които биха се вписали добре в този списък.