Маска спрайта в Unity (Sprite mask)

Sdílet
Vložit
  • čas přidán 28. 08. 2024
  • Группа вк:
    ganzz_c...
    Инстаграм:
    / kefi_dev
    Заценить игры:
    kefi.itch.io
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Аренда игр Steam:
    rent-steam.com

Komentáře • 20

  • @winter2021inmemory
    @winter2021inmemory Před 3 lety +4

    охринеть, то что я искал, спасибо

  • @yareyare6923
    @yareyare6923 Před 3 lety +1

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

  • @askerghos3794
    @askerghos3794 Před 3 lety +1

    Братан, странно что у тебя актив маленький. У тебя лучшие и нужные уроки

  • @Octopusbanana123
    @Octopusbanana123 Před 3 lety +1

    Спасибо тебе большое !

  • @DroidGame2023
    @DroidGame2023 Před rokem

    спасибище огромнейшее, это очень полезная фича.

  • @user-pu9ud7qw3c
    @user-pu9ud7qw3c Před 3 lety

    Прикольная штука

  • @batni_
    @batni_ Před 3 lety

    спасибо!

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

    Можно ли сделать так, чтобы спрайт самой маски был виден, а не был прозрачным?

  • @engineerzy3124
    @engineerzy3124 Před 3 lety +1

    Круто как всегда.

  • @evgen5488
    @evgen5488 Před 3 lety +1

    Подскажи как в игре сделать места с секретами(например за кустами, когда заходишь спрайт кустов изчезает)?

    • @SMT-ks8yp
      @SMT-ks8yp Před 3 lety

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

    • @evgen5488
      @evgen5488 Před 3 lety

      @@SMT-ks8yp Во многих платформера есть секретки(комнатки, места) они чем нибудь прикрыты, а когда туда немного заходишь они(передняя текстура) показывает что внутри.

    • @SMT-ks8yp
      @SMT-ks8yp Před 3 lety +2

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

    • @evgen5488
      @evgen5488 Před 3 lety

      @@SMT-ks8yp Да, так, но как это сделать на примере?

    • @SMT-ks8yp
      @SMT-ks8yp Před 3 lety

      @@evgen5488 берёшь спрайт, которым собираешься скрыть секретку. Ставишь куда нужно. Затем добавляешь компонент коллайдера, делаешь этот коллайдер размером с секретку и ставишь галку в is trigger - так он будет регистрировать другие коллайдеры, но перестанет сталкиваться сам. Затем добавляешь скрипт, в котором используешь методы OnTriggerEnter2D() и OnTriggerExit2D(), которые дают тебе ссылку на все коллайдеры, которые вошли или вышли из области твоего триггера. У них должен быть аргумент типа Collider2D, с которым ты дальше и работаешь, и допустим назовём его other. Дальше ставим условие, проверяющее тег или слой на объекте, от которого этот other коллайдер (other.gameObject.layer или other.gameObject.tag). Если это у тебя вошёл или вышел игрок, то соответственно делаешь спрайт объекта с триггером прозрачным или непрозрачным через изменение значения color.a (от нуля до единицы, тип float) в компоненте SpriteRenderer твоего объекта. Ссылку на компонент можешь взять через gameObject.GetComponent() в метода Start() или создать видимую в переменную, на которую мышью перетянуть компонент из того же объекта.

  • @SMT-ks8yp
    @SMT-ks8yp Před 3 lety

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

    • @GDevAcademy
      @GDevAcademy  Před 3 lety +1

      Маска в UI - немножко другая тема. Она реализуется когда на объекте висит компонент Image и компонент Mask. Спрайт настроенный в Image задаёт форму маски. В компоненте Mask отключаем Show Mask Graphic. И теперь всё что является дочерним у данного объекта, будет показываться исключительно внутри маски. Надеюсь, у вас всё получится)

    • @SMT-ks8yp
      @SMT-ks8yp Před 3 lety

      @@GDevAcademy несколько масок к одному объекту прикрепить возможно? А то в этом не будет смысла. Хотя, даже тогда оно будет полезно потому что можно сделать квадратный слайдер под круглой маской вместо того чтобы нарезать отдельные спрайты частей круга для процентов заполнения. Спасибо в любом случае.