DILLINGER
DILLINGER
  • 5
  • 7 559
Unity - Хорошая стрельба (UPDATE - Работа над ошибками)
В этом ролике мы исправим ошибки в предыдущей реализации стрельбы.
Подписывайтесь на канал , ставьте колокольчик , пишите комментарии о том что вы хотели бы видеть на канале ну и в целом свои впечатления.
Поддержать канал можно тут :
www.donationalerts.com/r/dillinger_pups
มุมมอง: 643

วีดีโอ

Unity - Инвентарь (+Модули)
มุมมอง 1.5K6 หลายเดือนก่อน
В этом ролике я покажу как сделать инвентарь модули взаимодействия с ним. Подписывайтесь на канал , ставьте колокольчик , пишите комментарии о том что вы хотели бы видеть на канале ну и в целом свои впечатления. Поддержать канал можно тут : www.donationalerts.com/r/dillinger_pups
Unity - Хорошая стрельба
มุมมอง 4.5K6 หลายเดือนก่อน
В этом ролике я покажу как сделать классную стрельбу с трассерами пуль. Подписывайтесь на канал , ставьте колокольчик , пишите комментарии о том что вы хотели бы видеть на канале ну и в целом свои впечатления. Поддержать канал можно тут : www.donationalerts.com/r/dillinger_pups
Unity - Добавляем в игру интерактивности (Часть 2)
มุมมอง 3606 หลายเดือนก่อน
В этом ролике мы добавим модуль скалирования и вывод информации о взаимодействии в панель UI. Подписывайтесь на канал , ставьте колокольчик , пишите комментарии о том что вы хотели бы видеть на канале ну и в целом свои впечатления. Поддержать канал можно тут : www.donationalerts.com/r/dillinger_pups
Unity - Добавляем в игру интерактивности
มุมมอง 6036 หลายเดือนก่อน
В этом ролике вы узнаете как сделать очень простой и гибкий инструментарий для создания интерактивностей в своей игре и сделать её куда интересней. Подписывайтесь на канал , ставьте колокольчик , пишите комментарии о том что вы хотели бы видеть на канале ну и в целом свои впечатления. Поддержать канал можно тут : www.donationalerts.com/r/dillinger_pups

ความคิดเห็น

  • @dragon00087
    @dragon00087 13 วันที่ผ่านมา

    0:58 совет исплзуй 100% екрана

  • @Димав-ы1п
    @Димав-ы1п 18 วันที่ผ่านมา

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

  • @beh4
    @beh4 3 หลายเดือนก่อน

    Мега имба, спасибо

  • @PragmaGames
    @PragmaGames 3 หลายเดือนก่อน

    У тебя сейчас от fps завист как далеко пролетит пуля + лучше использовать лайнкаст и лайнить предыдущую позицию и текущую

  • @flemi469
    @flemi469 3 หลายเดือนก่อน

    извини у меня почему-то руки на нулевые координаты тепаются

  • @Margnall
    @Margnall 4 หลายเดือนก่อน

    чувак ты гений

  • @Zettth
    @Zettth 4 หลายเดือนก่อน

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

  • @ANHA-MIASSKIY
    @ANHA-MIASSKIY 4 หลายเดือนก่อน

    Не знал, что есть компонент trail render. Хорошая реализация визуала пули. Спасибо за видос

  • @TMOEG-dv8xh
    @TMOEG-dv8xh 4 หลายเดือนก่อน

    Крут, респектую Буду рад видеть тебя в нашем комьюнити

  • @momentX_
    @momentX_ 4 หลายเดือนก่อน

    Как называется редактор из видео?

  • @flugenkehhannen
    @flugenkehhannen 4 หลายเดือนก่อน

    Bullet bulletC = Instantiate(bullet, _shootPosition.position, _shootPosition.Ratation).GetComponent<Bullet>(); а теперь представьте у вас миниган с 6000 выстрелов в минуту т е 100 выстрелов в секунду и например их в игре 5 одновременно. Что будет с игрой на телефоне кто угадает?

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 4 หลายเดือนก่อน

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

    • @flugenkehhannen
      @flugenkehhannen 4 หลายเดือนก่อน

      Блин чувак, если ты не понимаешь, почему не надо делать GetComponent каждый выстрел, то сорян. Для справки - ты можешь спавнить не только Gameobject.

    • @PragmaGames
      @PragmaGames 3 หลายเดือนก่อน

      ​​@@flugenkehhannen под капотом unity берет такой же get component при передаче аргументом что-то отличное от gameObject. Это можно проверить самостоятельно. Заспавнить 1000000 game object, а потом взять компонент, сразу заспавнить "компонент". Разница будет во времени обращения к нативному коду * на количество итераций * на издержеку вызова метода.

  • @stbnsnt
    @stbnsnt 5 หลายเดือนก่อน

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

  • @Reygan24
    @Reygan24 5 หลายเดือนก่อน

    Созданные пули должны быть видны в игре? Я вижу их только на сцене И почему они очень долго существуют

  • @tandapanda111
    @tandapanda111 5 หลายเดือนก่อน

    Из 30(образно) туториалов по инвентарю это единственный где я понял как он работает, спасибо! Лайк подписка

  • @DenisFomin
    @DenisFomin 5 หลายเดือนก่อน

    А почму ты не используешь физику для полёта пули. т.е. например при выстреле if (bulletPrefab) { Instantiate(bulletPrefab, barrelLocation.position, barrelLocation.rotation).GetComponent<Rigidbody>().AddForce(barrelLocation.forward * shotPower); //Debug.Log(" Выстрелили пулей " + barrelLocation.forward * shotPower); } У пули настроенный риджибоди с включённой гравитацией, массой 10 гр., и сопротивлением воздуха. Это обеспечит параболическую траекторию поли. Скрипт пули без всяких противных корутин, которые вечно могут ломаться в самый не подходящий момент. void FixedUpdate() { CheckCollision(rb.position); previousPosition = rb.position; lifetime -= Time.deltaTime; if (lifetime <= 0) Destroy(gameObject); } private void CheckCollision(Vector3 newPosition) { RaycastHit hit; if (Physics.Linecast(previousPosition, newPosition, out hit, hitLayers)) { EnemyPartHealth enemyPartHealth = hit.collider.GetComponent<EnemyPartHealth>(); if (enemyPartHealth != null) { enemyPartHealth.OnHitDamage(damage, hit.point, hit.normal); Destroy(gameObject); } } } Здесь задана так же время жизни пули.

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 5 หลายเดือนก่อน

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

    • @DenisFomin
      @DenisFomin 5 หลายเดือนก่อน

      @@DILLINGER_PUPS Может я криво объяснил свой подход. 1. обработка столкновений конечно через лайнкаст. Между положением пули в этом кадре и предыдущем. 2. Полёт пули обеспечивается не трансформом, а применением к пули физ. силы. Тем самым мы совмещаем два мира, 100% гарантию обработки столкновения от лучей и красивый полёт от физики. По крайней мере, в моей игре с этой схемой нет проблем, с другими были ))))

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 5 หลายเดือนก่อน

      ​@@DenisFomin Так то что я показал в целом почти тоже самое , только симуляцию полёта пули я могу написать сам , так как мне удобно . При помощи физики ты не загнешь полет пули влево или вправо , а вот при помощи кода - да. Есть тонна плюсов использования метода что описан в ролике. Физика не всё может делать корректно как мы хотим, а нам остаётся лишь делать собственную симуляцию.

  • @artursveshnikov7668
    @artursveshnikov7668 5 หลายเดือนก่อน

    Проверь профилировщиком загрузку цп, частый просчёт рэйкаста может прилично загрузить сцену. Как альтернатива, сделать rigit body у пули длинной в 2 метра, а визуальный меш короткий, обычный. Т.е. получается ты метаешь невидимое копьё со шкуркой пули и в каким то из кадров 100% будет пересечение с поверхностью.

  • @DenisFomin
    @DenisFomin 5 หลายเดือนก่อน

    Есть же возможность пускать райкасты в каждом кадре на ограниченное расстояние. Которое вычислить как паролетаемое полей за кадр. Итого, и райкаст проверяет столкновение и визуальная физика не страдает. А ещё можно сделать вот так RaycastHit hit; if (Physics.Linecast(previousPosition, newPosition, out hit, hitLayers)) { Здесь Physics.Linecast используется для определения, произошло ли столкновение между предыдущей и текущей позицией пули.

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 5 หลายเดือนก่อน

      Видео с исправлением всех ошибок данной реализации уже есть на канале)

  • @skf-wm7ft
    @skf-wm7ft 5 หลายเดือนก่อน

    Зачем нужен тернарный оператор в 26 строчке?

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 5 หลายเดือนก่อน

      Гарантия того что не будет NullReference Exception

  • @LevonSargsyan-q4r
    @LevonSargsyan-q4r 6 หลายเดือนก่อน

    Привет можете сделать видео где вы используете Low Poly Shooter Pack и создание противников с ИИ было бы круто

  • @SLiZER-WHiTE
    @SLiZER-WHiTE 6 หลายเดือนก่อน

    Извинитесь, пожалуйста поработайте над своей речью, что бы когда думаете не произносить звук (э), спасибо

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 6 หลายเดือนก่อน

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

    • @artursveshnikov7668
      @artursveshnikov7668 5 หลายเดือนก่อน

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

    • @Fravia-incm
      @Fravia-incm 5 หลายเดือนก่อน

      Полностью поддерживаю коммент Артура

  • @mrgoodkat1135
    @mrgoodkat1135 6 หลายเดือนก่อน

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

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 6 หลายเดือนก่อน

      В методе самого выстрела создаётся звук , а если хочешь добавить осечку , то надо немного по другому организовывать код, но это тоже очень просто. Для TDS можешь взять эту реализацию , в целом используемо. Ну или можешь юзать простой рейкаст. Зависит лишь от необходимости в проекте. Мой способ реализации предпологает использование в дальнейшем руки + IK . В таком случае всё будет чётко работать.

    • @mrgoodkat1135
      @mrgoodkat1135 6 หลายเดือนก่อน

      @@DILLINGER_PUPS понял, спс!

  • @DILLINGER_PUPS
    @DILLINGER_PUPS 6 หลายเดือนก่อน

    Ссылка на архив с кодом: t.me/unity_assets_world/1972

  • @psaPGL
    @psaPGL 6 หลายเดือนก่อน

    само видео как гайд, зачетное. + тебе в карму. но есть вопрос, - Что за точка попадения?

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 6 หลายเดือนก่อน

      Это называется - безграмотность)

  • @Speed-Run-Facts
    @Speed-Run-Facts 6 หลายเดือนก่อน

    В целом очень даже годная реализация, хорошее видео.

  • @trij1llo
    @trij1llo 6 หลายเดือนก่อน

    Спасибки

  • @XuSiss
    @XuSiss 6 หลายเดือนก่อน

    Привет от Neon Shadow

  • @АлексейПопович-в2ф
    @АлексейПопович-в2ф 6 หลายเดือนก่อน

    Шикарный видос, все понятно и доходчиво🎉

  • @tuttikfruttik6210
    @tuttikfruttik6210 6 หลายเดือนก่อน

    Хорошо, со стеной у тебя всё работает, но что по поводу врагов? Смоделируем ситуацию: Ты выстреливаешь в бегущего врага. Перед выстрелом рейкаст попадает во врага и передает startPoint и endPoint пуле. Затем, когда пуля долетает до endPoint, враг уже успел убежать => тоесть пуля не зарегистрирует врага Я чего то не догоняю?

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 6 หลายเดือนก่อน

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

    • @tuttikfruttik6210
      @tuttikfruttik6210 6 หลายเดือนก่อน

      @@DILLINGER_PUPS Я бы предложил первым рейкастом проверять только объекты на определенном слое, которые точно не будут двигаться (стены например)

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 6 หลายเดือนก่อน

      Так и есть , у оружия надо лишь в стены попадать , но мы сделаем ещё проще , будем передавать пуле стартовую позицию , а конечная точка будет стартовая позиция + стартовая позиция.forward * 500f и даже рейкаст не нужен первый. Он у оружия остался так как стрельба до этого была при помощи обычного рейкаста)

    • @tuttikfruttik6210
      @tuttikfruttik6210 6 หลายเดือนก่อน

      @@DILLINGER_PUPS Ну я полагаю тогда можно обойтись без корутин. Если мы в пуле в старте пропишем Destroy(gameObject, 5f); А в Update будем просто передвигать пулю при помощи transform.Translate(transform.forward * speed * Time.deltaTime); Ну и там же делать проверку рейкастом Я полагаю эффект будет тот же)

  • @mrgoodkat1135
    @mrgoodkat1135 6 หลายเดือนก่อน

    Очень круто! Спасибо за видос! А давай в следующем ролике сделаем визуализацию инвентаря, со всякой сеткой там и чтоб предметики появлялись всяко правильно!)) Если вдруг это не запланировано)) ❤❤❤

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 6 หลายเดือนก่อน

      Да , следующий видос будет про визуализацию инвентаря и парочка видов взаимодействия с ним в UI

    • @drive6780
      @drive6780 5 หลายเดือนก่อน

      @@DILLINGER_PUPS ждёмс💀

  • @Qwiz_Moment
    @Qwiz_Moment 6 หลายเดือนก่อน

    Отличный видос, удачи тебе в продвижение 👍

  • @Mr_Pride
    @Mr_Pride 6 หลายเดือนก่อน

    Круто, контент в кайф

  • @Timur_OwO
    @Timur_OwO 6 หลายเดือนก่อน

    Большое спасибо за туториал:3

  • @Timur_OwO
    @Timur_OwO 6 หลายเดือนก่อน

    Офигенный ролик,Сделай пожалуйста инвентарь в юнити:)

    • @liquid_name1068
      @liquid_name1068 6 หลายเดือนก่อน

      Поддерживаю идею с инвентарём

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 6 หลายเดือนก่อน

      Видео же есть на канале : th-cam.com/video/AuO43-Lyrf4/w-d-xo.html

  • @x300-i3p
    @x300-i3p 6 หลายเดือนก่อน

    попадАние, бро :D

  • @nobice1
    @nobice1 6 หลายเดือนก่อน

    9:30 - ахахаах, вынесло с этого момента xD Но видос всё равно полезный, спасибо

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 6 หลายเดือนก่อน

      Я ж сказал заранее) - ступор мозговины иногда ловлю. Написать написал, пока тяжеловато с объяснением)

    • @lyten4287
      @lyten4287 6 หลายเดือนก่อน

      @@DILLINGER_PUPS ахахаха

  • @mrgoodkat1135
    @mrgoodkat1135 6 หลายเดือนก่อน

    Каеф, вот это магия! Спасибо! а мона еще вот такихвота прикольных механик!!))

  • @DILLINGER_PUPS
    @DILLINGER_PUPS 6 หลายเดือนก่อน

    Скрипты из урока t.me/unity_assets_free_main/1819

  • @WeLoveCreatingGames
    @WeLoveCreatingGames 6 หลายเดือนก่อน

    Отличный ролик) ❤‍🔥🔥 В будущем стоит придумать ограничительные рамки по времени) Без потери информации и качества. Разбивать на части и, может даже по каким-то пунктам уделять больше информации, объясняя, что такое интерфейс, что такое ивенты, почему делаем так, а не по-другому и как можно сделать иначе, если ситуация другая) Разбить на части,если тема большая получается, то создать плейлист с названием "Unity - добавление интерактивности (часть 1)" и т.д... За примерами или терминологией можно к GPT обратиться ну или по старинке к мануалу или туда и туда, просто бывает у GPT плохо с примерами получается, а дальше уже в основном проекте как пример показывать (который для ролика актуальный по теме).😉😉😉

  • @asli9152
    @asli9152 6 หลายเดือนก่อน

    Делать системы и инструментарий - это самый лучший способ выучить скриптинг. Хорошее начало)

  • @unityrututorials1327
    @unityrututorials1327 6 หลายเดือนก่อน

    Как по мне всё сильно усложнено, это всё можно сделать в одном скрипте, с одним триггером, хотя даже триггер не нужен, можно по тегу юзать объект или по имени. Но это кому как удобно. Открыта закрыта простым bool отслеживать. Самое полезное что я для себя подчерпнул, так это addcompanent ))). А так в целом не плохое начало, Замечания 1. звук тихий 2.шрифт мелкий в студии. Продолжай в том же духе!

    • @DILLINGER_PUPS
      @DILLINGER_PUPS 6 หลายเดือนก่อน

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

    • @unityrututorials1327
      @unityrututorials1327 6 หลายเดือนก่อน

      @@DILLINGER_PUPS Ну так то да! Да норм всё!!!

  • @СергейИгоревич-х8э
    @СергейИгоревич-х8э 6 หลายเดือนก่อน

    ты крут продолжай делится полезной информацией для чайников и не чайников)))

  • @Igor-Demchuk
    @Igor-Demchuk 6 หลายเดือนก่อน

    Это простой советский интерфейс. Объясняй, пожалуйста, базово, что делаешь, для чего, что такое интерфейс и т.п. Спасибо!

  • @mrgoodkat1135
    @mrgoodkat1135 6 หลายเดือนก่อน

    Спасибо за крутой ролик! Оч прикольные штуки! Урок вышел отличным, не переживай!)) Продолжай в том же духе! Жду следующий видос!)))

  • @Igor-Demchuk
    @Igor-Demchuk 6 หลายเดือนก่อน

    Очень тихий звук, дружище.

    • @dragon00087
      @dragon00087 13 วันที่ผ่านมา

      Норм вроде-бы

  • @galinkakuz
    @galinkakuz 6 หลายเดือนก่อน

    Надо шрифт немного побольше в вижуал Студио сделать

  • @galinkakuz
    @galinkakuz 6 หลายเดือนก่อน

    Игрок похож на ингалятор 😅❤