Скрываем тайлинг текстур. Blender урок.

Sdílet
Vložit
  • čas přidán 19. 11. 2023
  • Всем привет, в этом видео я расскажу об одном из способов избавления от тайлинга в текстурах при работе с ландшафтами.
    Мои социальные сети:
    t.me/cg_corner - канал о CG и WIPы моих работ
    www.artstation.com/andrewp
    petrukovich...
    Ссылка на сцену:
    drive.google.com/drive/folder...
    Хороший плагин для этих целей - Scattershot
    blendermarket.com/products/sc...

Komentáře • 118

  • @apetrukovich
    @apetrukovich  Před 6 měsíci +4

    Я обновил материал и добавил возможность работать с Normal Map, новый файл доступен по ссылке в описании.

  • @Leonard_Gray
    @Leonard_Gray Před 7 měsíci +106

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

    • @apetrukovich
      @apetrukovich  Před 7 měsíci +37

      Как вариант, но разность масштаба может бросаться в галаза. В любом случае я описал стандартный приём текстур бомбинга, который можно использовать не только против тайлинга, но и для скетеринга декалей, к примеру. Не сказал бы, что нод много, если честно, думаю можно там и причесать, но в целом, супер простой сетап. И как по мне, без рандомного поворота, не получится хорошо избавиться от тайлинга, особенно когда плоскость огромная, а масштаб самой текстуры небольшой, как оно бычно бывает с ландшафтами.

    • @Nonamebruh1
      @Nonamebruh1 Před 7 měsíci +6

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

    • @AlonsoImput
      @AlonsoImput Před 6 měsíci +2

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

    • @Slava3D1
      @Slava3D1 Před 6 měsíci +2

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

    • @user-ee9de6np4c
      @user-ee9de6np4c Před 6 měsíci +3

      На хабре была статья про числа фиббоначи, цикад и дешёвый псевдорандом. Очень древняя статья, но советую чекнуть

  • @outresler1757
    @outresler1757 Před 6 měsíci +13

    Очень полезное видео, ютуб должен его продвигать. Многим не хватает этого способа

    • @no_name7827
      @no_name7827 Před 6 měsíci

      Даже некоторым ААА играм8)

  • @user-pq6mq6zb6g
    @user-pq6mq6zb6g Před měsícem +1

    Хороший рецепт _ ... ( оно не просто ...)

  • @trukhanserhei6956
    @trukhanserhei6956 Před 7 měsíci +5

    Круть , только посмотрел как избавится от тайлинга в UE а тут в догонку прилетело , спасиб.

  • @dgryzlovart
    @dgryzlovart Před 6 měsíci +4

    Вау! Всё гениальное просто! Спасибо за тутор!🔥

  • @mrwicked820
    @mrwicked820 Před 6 měsíci +3

    ТОП, очень полезно! Респект автору)

  • @thedecent10...18
    @thedecent10...18 Před 6 měsíci +1

    Спасибо дружище, подписка, лайк и добавил себе в плейлист 👍

  • @user-bv5dt3ll8x
    @user-bv5dt3ll8x Před 7 měsíci +2

    Вот вот, как раз собираюсь делать огромную местность со скалами и тп., и ломал голову как все текстурировать. Спасибо большое)

  • @carameleen_beats
    @carameleen_beats Před 2 měsíci

    Спасибо! Классный видос, голос спокойный и приятный

  • @aamiliya
    @aamiliya Před 6 měsíci +1

    Спасибо! Очень полезная инфа

  • @a21kon
    @a21kon Před 7 měsíci +3

    Ты большой молодец! Подписался и желаю твоему каналу расти и процветать!!

    • @apetrukovich
      @apetrukovich  Před 7 měsíci

      Спасибо! будем потиху :)

  • @MrGopnik412
    @MrGopnik412 Před 5 měsíci

    Спасибо большое! Очень нужная инфа.

  • @unp2louad
    @unp2louad Před 2 měsíci +1

    eto like bratec

  • @MrBrigadierArchived
    @MrBrigadierArchived Před 5 měsíci

    Спасибо за видео!

  • @doom2d
    @doom2d Před 6 měsíci +4

    В игровых движках это практически также делается. Помню видеоурок по unreal engine 4 лет 5 назад видел. Тоже накладывали доп. текстуру с шумом поверх обычной и рандомизировали параметры. Хотя там ещё доп. оптимизации были, чтобы при удалении камеры на достаточно большое расстояние карта нормалей отключалась и подменялась на почти пустую. И была версия материала, состоящего из трёх слоёв - мелкие детали, средние и большие. Они тоже грузились на разном расстоянии. В результате швов на стыках материалов не видно вообще.

    • @evzircon4152
      @evzircon4152 Před 6 měsíci

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

  • @GennadiyStartsev
    @GennadiyStartsev Před 7 měsíci

    Спасибо, видео реально очень полезное !!! Подписался, лайк поставил :)

  • @tassellate
    @tassellate Před 6 měsíci +1

    бляяя. охуенно. Так давно в 3д (только в блендере 10 лет) и первый годный урок посвященный данной проблеме.

    • @apetrukovich
      @apetrukovich  Před 6 měsíci +1

      Спасибо. Честно, не ожидал такой отклик на этот видос. Прикольно

    • @tassellate
      @tassellate Před 6 měsíci

      вам спасибо )@@apetrukovich

  • @vladimirbondar8453
    @vladimirbondar8453 Před 7 měsíci

    Спасибо!

  • @synthmint
    @synthmint Před 6 měsíci

    Спасибо!)

  • @user-mg7tt3fb8m
    @user-mg7tt3fb8m Před 7 měsíci

    Хорош 👍

  • @Jeefrect
    @Jeefrect Před 7 měsíci +17

    Спасибо, перенес логигу работы в shader graph для того же эффекта в unity =)
    Глянул половину твоего канала, ваще пушка бомба, продолжай и ссылку на донат кидай

    • @Gr1gor11
      @Gr1gor11 Před 6 měsíci

      Насколько возрастает нагрузка на видюху с этим шейдером?

  • @xcvqh
    @xcvqh Před 7 měsíci

    красиво

  • @user-qh8bm4nv9w
    @user-qh8bm4nv9w Před 6 měsíci +1

    Интересный трюк. Но если говорить про тайлинг... Это конечно зависит от ситуации... Есть хороший способ - пропустить текстуру через High Pass filter. Есть плагин для GIMP, который это делает.

  • @homedesignumbilicus
    @homedesignumbilicus Před 6 měsíci +3

    Не хватает фейд перехода на границах). И добавь отображения нажатия клавиш при записи, будет пушка.👍

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      Спасиб. С фейдом подумаю, может в каком-нить из апдейтов докручу, тут базовый сетап совсем.

    • @Martmovie
      @Martmovie Před 6 měsíci

      а как его добавить?

  • @kipaplea
    @kipaplea Před 6 měsíci

    я посмотрел всё видео, хз зачем. я даже никогда не занимался таким, но интересно

  • @Junkiz2211
    @Junkiz2211 Před 6 měsíci

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

    • @apetrukovich
      @apetrukovich  Před 6 měsíci +3

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

    • @Rai2M
      @Rai2M Před 6 měsíci +1

      @@apetrukovich Дефакто такой шейдер и есть процедурная текстура, собираемая из diffusion и кучи шумов. "Чистые" процедурные текстуры встречаются нечасто )

    • @ibraghimrodriges3158
      @ibraghimrodriges3158 Před 6 měsíci

      Jumkiz, ты случайно не перепутал темы? Здесь способ, как сделать текстуры в Блендере. Причём тут нейросети?

  • @user-cn1db7cc7u
    @user-cn1db7cc7u Před 6 měsíci

    Интересно, не знал что это называется тайлинг. Очень часто с этим сталкиваюсь.

    • @Rai2M
      @Rai2M Před 6 měsíci

      Это один из самых базовых терминов. Даже термин tilemaps есть.

  • @FMDful
    @FMDful Před 6 měsíci

    Ни х@я не понял, но было очень интересно!

  • @dimitrius8095
    @dimitrius8095 Před 7 měsíci +1

    спасибо, а как теперь запечь эффект в одну текстуру? чтобы перенсти напримет в obj или fbx уже без нодов?

    • @apetrukovich
      @apetrukovich  Před 7 měsíci +1

      Можно поискать уроки по запечке текстур в блендере. Например вот czcams.com/video/B2kFeMBBBjc/video.html

    • @aiTheVulture
      @aiTheVulture Před 6 měsíci

      @dimitrius8095 зачем это может понадобиться?

    • @dimitrius8095
      @dimitrius8095 Před 6 měsíci

      @@aiTheVulture в другую программу перенести, в которой нет нодов

    • @aiTheVulture
      @aiTheVulture Před 6 měsíci

      @@dimitrius8095 ноды это графический редактор шейдеров.
      В программе должны быть шейдеры в принципе, размытие тайлинга можно и текстом написать.
      Если нет доступа к шейдерам, то можно разбивать геометрию на небольшие куски и натягивать на каждый кусок небольшую текстуру.
      Одна большая текстура в принципе очень сильно влияет на производительность, так лучше не делать(тем более без доступа к шейдерам которыми это можно хоть как то оптимизировать).

    • @dimitrius8095
      @dimitrius8095 Před 6 měsíci

      @@aiTheVulture да это понятно , но что поделать когда программа не поддерживает прогрессивные материалы :) а хочется

  • @user-fp8mt3ri1f
    @user-fp8mt3ri1f Před 6 měsíci

    Ёеебнуться как круто и как понятно!!! P.S. Только зачем мне это знание я всякие штуки под фрезу моделирую.)))😂😂😂

    • @apetrukovich
      @apetrukovich  Před 6 měsíci +1

      Спасибо. Ну мало ли :)

    • @user-fp8mt3ri1f
      @user-fp8mt3ri1f Před 6 měsíci

      @@apetrukovich пробовал производить действия накладывая текстуру металла на хай поли модель топора. Нашёл как развёртку проложить по виду во вюпорте. Но походу на такие модели нужно какой-то раскрой делать. А потом нашёл скриншоты из киберпанка и топор заиграл другими красками)) интересно если использовать вместо текстуры скрины из киберпанка и выложить на артстэйшн то предъявят за авторские права. И ещё фон на рендер чёрный очень не знаю как менять освещение и оттенок фона.

  • @MrCoolDolphin
    @MrCoolDolphin Před 6 měsíci +1

    А потом люди удивляются от чего же игры тормозят на самом топовом железе...

    • @Dmytro-Tsymbaliuk
      @Dmytro-Tsymbaliuk Před 6 měsíci

      Потому что лепят безобразие, как на этом видео

  • @AlonsoImput
    @AlonsoImput Před 6 měsíci +1

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

    • @apetrukovich
      @apetrukovich  Před 6 měsíci +1

      Я не ставлю задачу обучить всему и вся. Сам всего не знаю:) понимаю, что людям гораздо ближе простые уроки без заморочек. Кто захочет покопаться глубже в нодах, тот это сделает. Т.е. вся суть моего канала, делиться тем, что я сам использую, а не обучить конкретно блендеру или ещё чему-нибудь. Но, в любом случае, спасибо за комментарий и предложение. Может когда-нибудь у меня концепция поменяется:)

    • @Rai2M
      @Rai2M Před 6 měsíci

      М-м-м... Я не знаю, как в блендере, но в "обычных" шейдерах цвет может быть и Vec3, и Vec4, зависит от наличия альфа-канала.

    • @AlonsoImput
      @AlonsoImput Před 6 měsíci

      @@Rai2M да, но ты можешь взять из вектора 4 только вектор 3)

    • @Dmytro-Tsymbaliuk
      @Dmytro-Tsymbaliuk Před 6 měsíci

      @@AlonsoImput что мешает взять вектор 3?

    • @AlonsoImput
      @AlonsoImput Před 6 měsíci

      @@Dmytro-Tsymbaliuk ничего, бери на здоровье)

  • @desys.
    @desys. Před 6 měsíci

    Насколько плохо это отражается на производительности? Там полигонов так в х1000 стало наверно больше. Я не шарю, но мне кажется использование более масштабной текстуры будет выгоднее, не?

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      Полигонов осталось столько же. Я же текстуру редактирую. На модель это никак не влияет

  • @caramelldemon
    @caramelldemon Před 6 měsíci

    Вопрос к производительности такого метода. Насколько местная реализация Вороного дешевая?

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      Не знаю. Я рендерю оффлайн, поэтому не сильно запариваюсь сколько занимает просчет процедурки. Так как по сравнению с текстурами их размером и количеством, все меркнет. Не считая адаптивного сабдива конечно же (если речь про блендер).

  • @ihlathi1583
    @ihlathi1583 Před 6 měsíci

    А где вы в блендере нашли текстуру для UV карт? А то я всё из интернета скачиваю... Хотелось бы, чтобы всё было под рукой )

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      Создаете ноду image texture и в ней есть выбор создать юви сетку.

  • @TIERODARK
    @TIERODARK Před 6 měsíci

    Разработчиков Elden Ring научи этому) В игре на лаву больно смотреть)

  • @ZhenShen120
    @ZhenShen120 Před 6 měsíci

    Подскажите, как в ноды добавить displace ?

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      С обычным (не векторным) дисплейсментом же не должно быть проблем, так как это обычная чб карта, а дисплейсмент так же настраивается как и остальные карты кроме нормал мапы.

  • @xevenly
    @xevenly Před 6 měsíci

    А можно ли в последней версии unreal engine что то подобное сделать ? :)

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      Можно в любой версии анрил. Ищи texture bombing in unreal. Думаю будет много уроков

    • @xevenly
      @xevenly Před 6 měsíci

      благодарю

    • @AlonsoImput
      @AlonsoImput Před 6 měsíci

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

    • @Rai2M
      @Rai2M Před 6 měsíci

      @@AlonsoImput Буковками проще ) Объявляешь пару десятков uniform'ов и вперед. Ноды меня пугают -- я арахнофоб )

  • @MrEleman
    @MrEleman Před 6 měsíci

    так вот как этот эффект называется. Когда на GTA 5 смотришь сверху, на пляж например, то это бросается в глаза, а оказывается это просто исправляется. Что ж за рокстаровцы так лоханулись то. Чел усстройся к ним на работу пока они и с 6 не накосячили.

  • @hinkatortilla8714
    @hinkatortilla8714 Před 7 měsíci

    Какая комбинация переподключает ноды одним кликом?

    • @apetrukovich
      @apetrukovich  Před 6 měsíci +2

      Если я правильно понял, то контрл+шифт+лкм при включенном аддоне node wrangler (он стандартный)

    • @hinkatortilla8714
      @hinkatortilla8714 Před 6 měsíci

      @@apetrukovich благодарю!

  • @crsed1466
    @crsed1466 Před 6 měsíci

    Есть ли какой то учебник по этим нодам ,как понимать какая нода нужна ,для меня это какая-то загадка

  • @melkiy582
    @melkiy582 Před 6 měsíci

    А для 3Ds Max есть такой пример?

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      Давно не работаю в максе. Если не ошибаюсь, то у вирея есть предустановленный шейдер для этого. Может и путаю. Но логику перенести, думаю можно. Ну или погуглить texture bombing 3ds max «название рендера».

  • @cosmonaftotouy552
    @cosmonaftotouy552 Před 6 měsíci

    Создателям киберпанка нужно показать этот урок

    • @apetrukovich
      @apetrukovich  Před 6 měsíci +1

      А что там так плохо?

    • @stope2163
      @stope2163 Před 6 měsíci

      ​@@apetrukovich что-то многие разработчики этим грешат.
      Твой вариант хорош.
      Ещё делают "текстурные лоды" - дальние текстуры заменяются другими

    • @apetrukovich
      @apetrukovich  Před 6 měsíci +1

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

    • @aiTheVulture
      @aiTheVulture Před 6 měsíci

      @@apetrukovich и в игровых движках и в блендере это делается автоматически и по умолчанию включено, MIP mapping называется.

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      @@aiTheVulture Спасибо, мип-мапинг - это вообще про другое и для других целей. Я говорю про историю, когда на одном объекте, например landscape actor в анриле у тебя видны разные текстуры в зависимости от расстояния, ближняя детализированная, дальняя - макровариацией этой текстуры, а дальше уже варианты как эту текстуру получить. Вот первое попавшиеся видео по этому поводу czcams.com/video/S8KyhIKsEtE/video.html

  • @parallelno
    @parallelno Před 6 měsíci +1

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

    • @apetrukovich
      @apetrukovich  Před 6 měsíci +1

      Блин, затупил и написал ерунду тебе) Да с нормалмапой вращение будет давать некоректный результат. Просто так как я работаю с ландшафтами, то практически всегда использую бамп, а не нормал мапу для такого рода текстур. А нормал идёт от ландшафта общего. Если найду простое и понятное решение этой проблемы, то обязательно будет новый видос) Тема оказалась супер актуальной. Спасибо!
      *UPD: способ нашёл, будет апдейт по видео, надеюсь скоро.

    • @Hozar2002
      @Hozar2002 Před 6 měsíci +1

      @@apetrukovich Скорее всего он говорит про то что TBN матрица поверхности не будет вращаться, и цвет нормал маппы придётся вращать в обратном направлении по Z оси, чтоб всё как надо работало.

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      @@Hozar2002 Дада, понял проблему и поменял комментарий. Если знаешь простой способ решения то скинь, можно и линкой на видос какой. Я пока сильно не копал.
      *UPD: Сделал апдейт для нормалей, нужно будет видос записать ещё.

  • @PeterFoxKills
    @PeterFoxKills Před 6 měsíci

    В итоге все равно при уменьшении скейла видно повторения сильно

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      Да, если сильно маленький скейл, то надо подмешивать ещё какой-нть цвет по маске, к примеру. У меня обычно поверх накладывается ещё текстура цвета из GAEA, что даёт дополнительное разнообразие. Варианты есть всякие.

  • @metahimik
    @metahimik Před 7 měsíci +1

    к сожалению, с большими кирпичными стенами такой финт вряд ли применим(

    • @apetrukovich
      @apetrukovich  Před 7 měsíci +6

      Конечно. Ведь кирпичная стена сама по себе должна иметь видимый паттерн, это её суть. На такого рода текстуры нужно добавлять либо доп слой, какой-нить штукатурки/краски, либо, например, накладывать шум, который будет менять цвет. Можно подумать над вариацией дисплейсмента/бампа текстуры, как вариант.

    • @aiTheVulture
      @aiTheVulture Před 6 měsíci

      На видео шум накладывается на UVmap.
      Накладывание шума на маску смешивания двух и более текстур даёт более качественный результат, как для текстур "без структуры", так и работает с ярко выраженными структурами вроде кирпичей.

  • @gr18.n1k
    @gr18.n1k Před 6 měsíci

    Почему я это смотрю? Я не то что текстурированием не занимаюсь, я в принципе не художник

  • @Morke_Lyset
    @Morke_Lyset Před 6 měsíci

    Да в чем проблема то у новичков?
    Просто возьми и в программе монтажа ползунок громкости покрути, включи видео популярного блогера и сравни громкость звука.
    По секрету скажу, если не хватает ползунка громкости, можно прокрутить громкость на максимум, сохранить видео, и снова вы крутить на максимум, повторять до желаемого результата.

  • @user-gb7bs7qc9o
    @user-gb7bs7qc9o Před 6 měsíci

    А если по русски что значит тайлинг?

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      Буквально это плитка. Т.е. повторение текстуры по координатам.

  • @Inquirro
    @Inquirro Před 6 měsíci

    какой-то ненужный мудрежь. Не проще было через маску бленд сделать?

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      Для больших площадей какого-то одного способа будет мало. У меня обычно идёт комбинация текстур бомбинга + бленд с разными цветами. Это всё речь про ландшафты.

  • @Max-Sparrow
    @Max-Sparrow Před 6 měsíci +1

    тайлингом даже некоторые фильмоделы грешат, даже с жирным бюджетом и дорогими актёрами...

  • @ak-rz7em
    @ak-rz7em Před 7 měsíci

    от тайлинга никак не избавится, это просто невозможно ,тут просто текстура элементарная

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      Ну по факту да, если текстура повторяется, то тайлинг есть. Я же и назвал видео скрываем тайлинг. Т.е. делаем его менее заметным.

    • @jeen9984
      @jeen9984 Před 6 měsíci

      ​@@apetrukovichпохоже, он имел ввиду, что такой метод антитайлинга не везде применим. Как ваш способ покажет себя на таких текстурах как кирпичная кладка?

    • @apetrukovich
      @apetrukovich  Před 6 měsíci +1

      @@jeen9984 Для разных текстур нужны разные подходы. Я делаю ландшафты, о чём говорю в видео, такой способ хорошо подходит именно для ландшафтов. Для кирпичей достаточно будет по шуму смешать несколько текстур или просто наложить слой с шумным паттерном поверх. Или добавить второй слой типа штукатурки, вариантов уйма.

  • @crsed1466
    @crsed1466 Před 6 měsíci

    Бля да как тут в этом всем разобраться ,есть какой нить учебник для этого?

    • @apetrukovich
      @apetrukovich  Před 6 měsíci

      Есть такой старый видос czcams.com/video/cQ0qtcSymDI/video.html к сожалению с тех времён некоторые ноды уже поменялись, но базовые остались такими же. Так что будет полезным всё равно. Но думаю, можно найти и более современную версию.