Как подобрать/бросить предмет в Unity 2d

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

КОМЕНТАРІ • 133

  • @tevers
    @tevers Рік тому +1

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

  • @antoniobohachuk573
    @antoniobohachuk573 5 років тому +7

    Чувак, продолжай в том же духе, твои уроки заряжают!))

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

    В 2d обычно применяется подъем предмета с которым столкнулся бокс игрока. Т.е. box collider вместо ray cast.

  • @igrochainik
    @igrochainik 5 років тому +3

    Нашёл небольшой конфликт кода с коллайдером. Он появляется, когда используется Polygon Collider 2D. Причина, в дополнительных, ограничительных линиях коллайдера. Из за них, луч, исходящий из центра спрайта, проходит не через одну ограничительную линию, а через множество. В результате, персонаж пытается схватить, самого себя и переместить в точку holdPoint. Выглядит забавно, особенно если перетащить holdPoint, куда нибудь в сторону.
    Что бы не возникало проблемы, достаточно не использовать Polygon Collider 2D, а отрисовать границы в ручную, используя Edge Collider 2D.

    • @Igorucha
      @Igorucha 4 роки тому +1

      Большое спасибо за информацию)) Я использовал ПолигонКоллайдер и персонаж при запуске бегал по всей карте без остановки)

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

      ОГРОМНОЕ СПАСИБО!!!!!!!!!!!!!!!!!!!!

  • @MrMiha336
    @MrMiha336 5 місяців тому

    Спасибо, обнял

  • @igrochainik
    @igrochainik 5 років тому +2

    Если кино это магия, то игры это алхимия))
    Можно заделать модель персонажа, уже с оружием в руках, а в момент подъёма оружия, просто менять модельку персонажа. Но тогда, будет больше расчётов, во время отрисовки модели. Даже не знаю, что больше загрузит движок, лишний объект с коллайдером или дополнительная анимация!?

    • @graphicaldesign2776
      @graphicaldesign2776  5 років тому +3

      Хм, а если мы в игре можем поднимать просто все, сотни предметов и объектов, представьте себе длину скрипта с заменой анимации.

  • @merialplay256
    @merialplay256 4 роки тому

    очень помогло
    хороший канал и уроки

  • @Кто-то-ц8я
    @Кто-то-ц8я 5 років тому +1

    Ураа новый видос

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

    Спасибо, затолкаю в свой проект

  • @Пчел-х6ъ
    @Пчел-х6ъ 3 роки тому +3

    Сижу уже около часа, когда я бросаю предмет, он просто летит, сделал значение по “y” на 0, когда бросаю он летит как и нужно в право, но куда поворачивается игрок туда и летит объект
    P.S: объект подбирается при зажатии кнопки, выкидывается при разжатии, не намеренно

  • @nibicu911
    @nibicu911 5 років тому +3

    Спасибо, крутой урок

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

    Вопрос, как сделать так, чтобы орлужие при подъёме могло стрелять? Я чайник в юнити и не особо понимаю. Я могу сделать анимации при подборе, остальное, но это так и не понял)) Или можно скриптом занести объект как дочерний к другому?

  • @wi6743
    @wi6743 6 днів тому

    у меня вопрос что делать если персонаж моей игры берёт не только куб на что я и настроил скрипт, но и платформу и другие объекты которые он брать не должен

  • @kroniecraft8339
    @kroniecraft8339 4 роки тому +1

    Здраствуй, можете снять видео на тему как сделать красивый след от меча для 2D игры

  • @kirillushakov2121
    @kirillushakov2121 4 роки тому

    Видео топ.
    Автор. Подскажи пожалйста. Как сделать так, что бы при подборе оружия, герой менял положение рук. ?
    Что бы создавался эффект правильного держания пушки.

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

    А как эти предметы потом с помощью клавиши переместить в инвентарь ( инвентарь как у макстера )

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

    Урок ТОП. Но , как сделать так, чтобы лучи сохраняли поворот?

  • @mr.mackey9730
    @mr.mackey9730 4 роки тому +1

    а как сделать, допустим сперва на сцене у персонажа нету оружия, потом допустим он подходит к ящику и случайно ему выпадает какое то оружия, пистолет или автомат или меч и т.д ?

  • @FrosmenCommand
    @FrosmenCommand 4 роки тому +1

    помогите:после того как я нажимаю F у меня пропадает текстура у предмета

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

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

  • @paninidetrov870
    @paninidetrov870 4 роки тому +7

    Как вместо луча сделать область?

    • @s1lentgrave
      @s1lentgrave 4 роки тому

      В топ

    • @s1lentgrave
      @s1lentgrave 4 роки тому

      Я попробовал DrawWireSphere(это 3D, провда, но окружности в гизмосе нет почему-то), но ничего не получилось

    • @Alexander-x1n
      @Alexander-x1n 4 роки тому

      да, тоже интересно!

    • @s1lentgrave
      @s1lentgrave 4 роки тому

      @@Alexander-x1n я пробовал в цикл этот гизмос запихнуть, чтобы круг получился)))
      Но ничего не вышло

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

    А как сделать так, чтобы луч из персонажа, помимо начального коллайдера, игнорировал ещё несколько объектов и увидел только, например, пятый объект?

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

      решил? помоги пожалуйста, если решил

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

      @@denisbugay3175 создай слой,назови например «pistol» и своему оружию или табличке или что там у тебя,хоть враг добавь этот слой,в скрипте после distance, LayerMask.GetMask(“pistol”)); рэйкаст будет чёркать только слой с названием и игнорить остальные

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

      @@denisbugay3175 строку про чек колайдера игрока тогда вообще можно уже не писать

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

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

  • @NCHedge
    @NCHedge 5 років тому +2

    Дак Гейм)))

  • @lordtwilight1224
    @lordtwilight1224 5 років тому

    привет, ты говорил, что в августе у тебя проект, можешь показать или он еще не готов. спасибо за уроки.

    • @graphicaldesign2776
      @graphicaldesign2776  5 років тому

      Как только будет релиз, появится видео)

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

    Очень крутой урок! Сильно помог! Только есть один вопрос, а как написать так, чтобы луч шёл не на право, а в общем по x и y, если например это игра с видом сверху, а мир это тоже плоскость с видом сверху?

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

      Бро, этот стиль игры который ты имеешь ввиду называется topdown

  • @андрейтаптыжов-о1з

    у меня берет оружие но не нисет, оружие остается в точке где был обьект holdPoint а герой идет дальше... не нисет его... почему?????

  • @ElizaBeats0
    @ElizaBeats0 5 років тому +4

    Привет,Можешь пожалуйста снять несколько уроков по вводу в ООП ?

    • @LimeShow
      @LimeShow 4 роки тому

      Что это

    • @петрик3601
      @петрик3601 4 роки тому +1

      @@LimeShow Объектно-ориентированное программирование

    • @LimeShow
      @LimeShow 4 роки тому

      @@петрик3601 спс

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

    Спасибо, а то я опять пытался это реализовать через тригеры, делая объект дочерним, но нифига не получилось. Совсем забыл про RayCast! :)

  • @РеактивныйМориошник

    У меня ничего не работает. Ошибок в коде нет, сделал всё по видео. Игрок просто игнорирует оружие и вообще его не подбирает. Переменная тоже никак не изменяется.

  • @ElizaBeats0
    @ElizaBeats0 5 років тому +1

    Топ

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

    Сенк, полезно

  • @Пиро-щ4н
    @Пиро-щ4н 4 роки тому

    Physics2D' does not contain a definition for 'RayCast' как исправить?

    • @graphicaldesign2776
      @graphicaldesign2776  4 роки тому

      добавить 2D

    • @Пиро-щ4н
      @Пиро-щ4н 4 роки тому

      @@graphicaldesign2776 можно инструкцию?))) я просто ничего не знаю

  • @wizard_still
    @wizard_still 4 роки тому

    Класс! Подскажите по какому алгоритму сделать так, игрок щелкает указателем на предмет, персонаж нагибается и берет в руку предмет? Т.е тригер анимация приседания? Персонаж должен носить предметы с одного места в другое, от третьего лица камера, управление по клику мышки по карте

  • @zloy_kak_tus
    @zloy_kak_tus 4 роки тому +1

    Урок ТОП. Но у меня оружие после того как я его бросаю просто летит постоянно вверх и вправо.

    • @zloy_kak_tus
      @zloy_kak_tus 4 роки тому

      Блин, сам затупил. Спустя минуту после комммента понял в чем суть.
      Я префабу добавил RB2D.

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

      Можно подробнее?

  • @gurla_
    @gurla_ 6 місяців тому

    Что за игра на фоне?

  • @dumzed7871
    @dumzed7871 5 років тому

    лайк

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

    А как сделать тоже самое только для телефона ?

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

      Посмотри видео с настройкой кнопок для управления на телефоне. Так и нужно заменять все эти условия if на их аналоги для телефона. Например в этом случае в условии подбора предмета нужно заменить if(Input.GetKeyDown(KeyCode.F)) на кнопку или просто тап по экрану. Лучше посмотри разные видео по настройке кнопок и тапов по экране, попрактикуйся в новом проекте с заменой обычных действий например управления или этот же подбор предметов с обычного варианта для клавиатуры компьютера на управление для телефона. После нескольких попыток ты уже и сам будешь лучше понимать как это работает)
      Я и сам ещё только учусь этому, но уже пробовал и это не так сложно, как кажется. Нужно только найти доступную подходящую инфу в интернете

  • @RUSLANFOREX
    @RUSLANFOREX 4 роки тому

    Cделал всё как в видео, выдаёт ошибку:
    NullReferenceException: Object reference not set to an instance of an object
    WeaponHold.Update () (at Assets/WeaponHold.cs:44)

    • @graphicaldesign2776
      @graphicaldesign2776  4 роки тому

      Надо исправлять

    • @RUSLANFOREX
      @RUSLANFOREX 4 роки тому

      Graphical Design Я понимаю :) Но не подскажете как именно?

    • @graphicaldesign2776
      @graphicaldesign2776  4 роки тому

      Сложно сказать, не видя проекта. Единственное, вижу что проблема в скрипте WeaponHold

    • @graphicaldesign2776
      @graphicaldesign2776  4 роки тому

      Я поместил скрипт к себе, работает без ошибок

    • @RUSLANFOREX
      @RUSLANFOREX 4 роки тому

      @@graphicaldesign2776 Но что я мог сделать не так?

  • @SUPERARCHER
    @SUPERARCHER 5 років тому +5

    ОЧЕНЬ ГОДНО, +REP

  • @ShirChoi
    @ShirChoi 5 років тому

    Привет . У меня тут проблема, при развороте персонажа, луч не разворачивается. Что делать?

    • @graphicaldesign2776
      @graphicaldesign2776  5 років тому

      Перерисуй его в обратную сторону

  • @torinfox8857
    @torinfox8857 5 років тому

    Здравствуйте. Можете подсказать? При запуске пустого проекта в unity, выдает ошибку (Some scripts have compilation errors which may prevent obsolete API usages to get updated. Obsolete API updating will continue automatically after these errors get fixed.) версия 2019.1.12f1

    • @graphicaldesign2776
      @graphicaldesign2776  5 років тому

      Семён Яшин можно переустановить юнити

    • @torinfox8857
      @torinfox8857 5 років тому

      @@graphicaldesign2776 Переустанавливал, у вас в видео первоначальный запуск проекта, в нем отсутствует packages папка, такое ощущение что скрипты в ней проблемные, но пока только начал изучать unity, не понимаю где искать. Спасибо

  • @FragDell
    @FragDell 4 роки тому +1

    как поднять красную линию, или опустить

    • @FragDell
      @FragDell 4 роки тому

      срочно

    • @graphicaldesign2776
      @graphicaldesign2776  4 роки тому +1

      какую "красную линию"?

    • @FragDell
      @FragDell 4 роки тому

      @@graphicaldesign2776 OnDrawGizmos

    • @FragDell
      @FragDell 4 роки тому

      @@graphicaldesign2776 она у меня не в центре, а под персонажем

    • @graphicaldesign2776
      @graphicaldesign2776  4 роки тому +1

      @@FragDell Добавить ей Position по Y

  • @zloy_kak_tus
    @zloy_kak_tus 4 роки тому

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

  • @Naskwi
    @Naskwi 4 роки тому

    Я всё сделал правильно но почему-то Weapon не берётся вообще ((( Помогите пожалуйста

    • @monkeystales3954
      @monkeystales3954 4 роки тому

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

    • @Naskwi
      @Naskwi 4 роки тому

      @@monkeystales3954 спасибо

  • @wi5p916
    @wi5p916 4 роки тому

    а как назначить подъем на UI кнопку?

    • @graphicaldesign2776
      @graphicaldesign2776  4 роки тому

      Создать метод и вызывать его через ивент.

    • @wi5p916
      @wi5p916 4 роки тому

      @@graphicaldesign2776 Я уже полазил по форумам и всё сделал, спасибо, отличные видео уроки)

    • @wi5p916
      @wi5p916 4 роки тому

      @@graphicaldesign2776 у меня теперь другая проблема, оружие как бы кидается, но судя по всему персонаж берет его обратно

    • @graphicaldesign2776
      @graphicaldesign2776  4 роки тому

      Даня Майоров не нажимай тогда дважды

    • @wi5p916
      @wi5p916 4 роки тому

      @@graphicaldesign2776 нажимаю 1 раз

  • @monkeystales3954
    @monkeystales3954 4 роки тому

    Ребят помогите. holdPoint не поворачивается вместе с персонажем. Что не так?

    • @monkeystales3954
      @monkeystales3954 4 роки тому

      Это связано ли с тем, что у меня спрайт персонажа находится в дочерней папке...... Персонажа...

    • @graphicaldesign2776
      @graphicaldesign2776  4 роки тому

      Врятли, надо просто переворачивать персонажа при повороте.

    • @monkeystales3954
      @monkeystales3954 4 роки тому

      @@graphicaldesign2776 перевернул, но объекты всё рано летят вправо. Есть ли видео на канале, где ты настраивает анимации и контроллер в 2d платформере?

    • @monkeystales3954
      @monkeystales3954 4 роки тому

      У кого была такая же проблема введите дополнительное условие к броскам.
      Если holdPoint. position.x > transform.position.x
      То Vector 2(1, 2)
      Если holdPoint. position.x < transform.position.x
      То Vector 2(-1, 2)
      Пусть на костылях, но идти сможете.

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

    Хз, возможно у меня какая то хуйня, но после этого урока у меня Box(объект который я должен подобрать и бросить) перестал существовать для игрока, он просто сквозь него проходит и не пидбирает. До того как я прставил на бросок предмет получалось, так что он автоматически его поднимает

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

    Урок для дятлов, гораздо проще держать массив, и опираться на первый элемент массива

  • @Kaban41k
    @Kaban41k 5 років тому

    Помоги пж у меня перс поворачивается а линия нет.

    • @graphicaldesign2776
      @graphicaldesign2776  5 років тому

      Видимо, что-то сделал не так

    • @Alexander-x1n
      @Alexander-x1n 4 роки тому

      @@graphicaldesign2776
      вот так
      Gizmos.color = Color.red;
      Gizmos.DrawLine(transform.position, transform.position + Vector3.right * transform.localScale.x * distance);
      Gizmos.DrawLine(transform.position, transform.position + Vector3.left * transform.localScale.x * distance);
      .

    • @monsterclash6790
      @monsterclash6790 4 роки тому

      @@Alexander-x1n if (Input.GetAxis("Horizontal") > 0)
      {
      hit = Physics2D.Raycast(check.position, Vector2.right * transform.localScale.x, distance);
      }
      if (Input.GetAxis("Horizontal") > 0)
      {
      hit = Physics2D.Raycast(check.position, Vector2.left * transform.localScale.x, distance);
      }

  • @fedosritms3064
    @fedosritms3064 5 років тому

    Можешь ссылку на скрипт оставить чтоб его скачать

    • @graphicaldesign2776
      @graphicaldesign2776  5 років тому +1

      Не оставляю скрипты.

    • @s1lentgrave
      @s1lentgrave 4 роки тому

      @@graphicaldesign2776 Я сделал всё как в видео, но пистолет не поворачивается), а размер меняется на какой-то не понятный, хоть и взял значения из инспектора

    • @graphicaldesign2776
      @graphicaldesign2776  4 роки тому

      @@s1lentgrave значит не все

    • @s1lentgrave
      @s1lentgrave 4 роки тому

      @@graphicaldesign2776 Кстати, только что заметил, что у вас тоже пистолет изменяется в размере, когда персонаж его берет в руки (17:05)

  • @theonly647
    @theonly647 5 років тому

    Что за игра в начале?

  • @эээээ-л5ж
    @эээээ-л5ж 4 роки тому

    А у меня предмет не подбирается. Это может не работать если проигрывается анимация?

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

    Не работает

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

    ахах вэйпан

  • @monsterclash6790
    @monsterclash6790 4 роки тому

    Блин, да как повернуть этот луч то а?

    • @monsterclash6790
      @monsterclash6790 4 роки тому

      при повороте персонажа

    • @graphicaldesign2776
      @graphicaldesign2776  4 роки тому

      Через Scale

    • @monsterclash6790
      @monsterclash6790 4 роки тому

      @@graphicaldesign2776 Спасибо, конечно, но я уже придумал, как можно ещё сделать

    • @monsterclash6790
      @monsterclash6790 4 роки тому

      @@graphicaldesign2776 Можно создать второй скрипт для другой стороны и просто написать в скрипте не right, а left)))