Тёмный

Изучение Unity / Урок #4 - Генерация объектов 

Atlass Dev
Подписаться 30 тыс.
Просмотров 22 тыс.
50% 1

Привет! В этом видео мы продолжаем создавать игру. Сегодня мы создадим генерацию объектов, а также их последующее удаление
#unity #программирование #gamedev

Опубликовано:

 

1 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 117   
@emerald2042
@emerald2042 3 года назад
Блин он радовался 19 подписчикам А теперь у него 4000 подписчиков Я если что подписан с 1500-2000 подписчиков
@DONUCIAK
@DONUCIAK 3 года назад
12500 подписчиков*)
@_trxsher2778
@_trxsher2778 2 года назад
@@DONUCIAK 16.6
@МаксимКасьян-ы4б
@МаксимКасьян-ы4б 2 года назад
21,2
@ктоя-к3п
@ктоя-к3п 2 года назад
@@_trxsher2778 21.9
@zawarudo111
@zawarudo111 7 месяцев назад
@@DONUCIAK почти 30000*
@Ноунейм-г7й
@Ноунейм-г7й 3 года назад
5:00 сделаю маленькую поправку, не метод, а класс :)
@Programscape
@Programscape 3 года назад
блин, мужик, ты крутой, спасибо, немного помог мне продвинуться дальше, продолжай в том же духе)))
@Рисуеммультфильмы2-к2е
Я ВООООООООБЩЕ ничего не поняла. Мне программирование нравится но всё ровно не понятно.
@madeezz2679
@madeezz2679 3 года назад
Блин, смотрю урок, И понимаю, что у меня объекты не удаляются, сделал все правильно, тег есть, код такой же, как и у тебя, абсолютно, но все равно что-то не работает, не могу понять, голову ломаю, помоги пж
@Gustav.s_drive
@Gustav.s_drive 3 года назад
У меня было тоже самое, а оказалось в итоге, что я написал не OnTriggerEnter2d, а OnTrigerEnter2d
@ВикторРудаков-ъ3ъ
Не удолялись префабы вместо tag написал CompareTag и все заработало
@skelesheit
@skelesheit 3 года назад
Привет, видео, конечно, хорошее, но в нём есть одно но, ты практически ничего не объясняешь, что делаешь. Рассказал бы, для чего нужны все эти функции и объекты, что они делают. Ни единого объяснения как что работает
@victorymirosya4937
@victorymirosya4937 3 года назад
Тут нужны базовые знания программирования
@skelesheit
@skelesheit 3 года назад
@@victorymirosya4937 я знаю основы ооп, немного знаком с с#... Автор не объясняет, для чего нужна функция илр какой нибудь метод, какие параметры принимает эта функция и что возвращает, не понял что это за переменные структуры или объекта. А еще был вопрос зачем нужен boxcolider и rigitbody... Автор из выше перечисленного ничего не объясняет.
@victorymirosya4937
@victorymirosya4937 3 года назад
@@skelesheit это и есть базы с# и юнити)))
@skelesheit
@skelesheit 3 года назад
@@victorymirosya4937 окей, где мне их изучить, раз уж это база?
@victorymirosya4937
@victorymirosya4937 3 года назад
@@skelesheit в интернете
@МагестЛоил
@МагестЛоил 2 года назад
Удаление объектов не произошло.
@Her0bro
@Her0bro Год назад
Коллеги,как сделать так, чтобы "Enemy" летели вниз по горизонтали(по "y")?
@BuMBiX
@BuMBiX Год назад
Что делать если enemy не удаляется когда столкивается с спрайтом?
@BuMBiX
@BuMBiX Год назад
Блииин я сам догадался как сделать так чтобы они уничтожались хотя по другой пути и не задействуя спрайт но все же спс тебе за видео я научился хоть к чему то
@BuMBiX
@BuMBiX Год назад
Привет у меня почему то условия выхода не работает сделал все как ты показал но запускаю в enemy не удаляется
@zawarudo111
@zawarudo111 7 месяцев назад
тег сделал?
@romavolkov8520
@romavolkov8520 3 года назад
сделал , залип на 30мин
@mastertihon831
@mastertihon831 7 месяцев назад
А как сделать так что бы разные обьекты спавнились
@zawarudo111
@zawarudo111 7 месяцев назад
одинаковая махинация с разными спрайтами
@ЕгорЧенин-и9и
@ЕгорЧенин-и9и 3 года назад
Очень странная реализация на 8:00. почему нельзя было вызывать метод StartCoroutine(Spawn()); в методе Update(), разве в реализации как на видео не произойдет переполнение стека вызовов из-за своеобразной рекурсии?
@chery2966
@chery2966 2 года назад
Да вы правы. неизвестно почему автор сделал такую ошибку. хотя наврятли это можно считать ошибкой.
@orknarok
@orknarok Год назад
а если запустить корутину один раз, но в ней сделать бесконечный цикл, прокатит?
@МаксимКазаков-в2х
@МаксимКазаков-в2х 4 года назад
Когда магазин? Очень надо
@kidusii
@kidusii 3 года назад
а почему спавнер нельзя засунуть в update???
@Бебра-ш3с
@Бебра-ш3с 3 года назад
Не знаю как у кого, но когда я сую спавнер в апдейт у меня начинается лютый п**дец и объекты спавнятся со сверхсветовой скоростью
@dodo3884
@dodo3884 3 года назад
update вызывается в каждом кадр, если туда запихнуть спавнер каждый кадр будут появляться враги.
@PikaMates
@PikaMates 2 года назад
@@dodo3884а можно пихнуть спавн в FixedUpdate и задать временной промежуток?
@dodo3884
@dodo3884 2 года назад
@@PikaMates думаю да, эксперементируй (удачи).
@PikaMates
@PikaMates 2 года назад
@@dodo3884 я посмотрел, по сути так можно сделать, но лучше конечно как на видео привязать тайминги к yield return new WaitForSeconds(); Потому что тайминги FixedUpdate меняются напрямую в Юнити и измеряются в тиках в секунду. То есть можно задать Time.fixedDeltaTime = 1f/1 - это 1 тик в секунду, но это извращение сумасшедшее..
@tanercoder1915
@tanercoder1915 3 года назад
супер туториал. ещё!
@broadcasteer
@broadcasteer 3 года назад
Вместо сериалайздФиелд можно использовать public public int Public gameObject
@clickclack3375
@clickclack3375 3 года назад
[SerializeField] и public это разные вещи
@maksssssss20
@maksssssss20 Год назад
всем привет появилась проблема , при доюавления скрипта Spawner не отображаються spawn pos , range , enemy что делать подскажите пожалуйста 😔
@UT4_cloWn
@UT4_cloWn 9 месяцев назад
уже 29.4к подписчиков)))молодец, спасибо за помощь, друг
@titovilife7638
@titovilife7638 2 года назад
Привет, прописал скрипт так же как у тебя, но при добавлении его на 3Д модель в самом юнити нет SpawnPos; Range; Enemy; в чем проблема не пойму? МОжет кто подсказать?
@vg-vovagatova289
@vg-vovagatova289 2 года назад
Не понятно где ты делал спав, сказал что объяснишь что это за новый скрипт а не обьяснил
@lookingooddd
@lookingooddd 3 года назад
привет! Можешь подсказать, почему препятствия летят в ряд, и не появляются в окне "Game"?
@atlassdev2481
@atlassdev2481 3 года назад
Если летят в ряд, то проблема в генерации координат. Попробуй заново всë сделать. И в префабе препятствия посмотри, чтобы координата по Z была 0, скорее всего в этом дело
@thew5580
@thew5580 Год назад
Спасибо у меня сначала не удалялся енеми,я просто не правильно закинул тег в енеми
@эээээ-л5ж
@эээээ-л5ж 3 года назад
6:18 почему мы используем здесь Vector3 если мы изменяем только по x и z?
@emsigaming8947
@emsigaming8947 3 года назад
Переменная типа Transform принимает в качестве значения только данные типа Vector3 ибо имеет 3 координатные оси и изменяя даже 2 из них - мы должны указать нулевое значение для 3й
@НадеждаШаповалова-м5й
Ребят, я много чего тут не понимаю. Можете пожалуйста подсказать самые первые уроки по c# для unity?
@Baq152RUS
@Baq152RUS 3 года назад
@@НадеждаШаповалова-м5й для начало не плохо бы тебе C# основы выучить. для этого посмотри уроки от SimpleCode. по нему учился я ну и еще мб знаешь Макстера он тоже у него учился
@vladpokazanyev814
@vladpokazanyev814 3 года назад
У меня одного объекты за кругом проходят? Если кто знает как решить, помогите пожалуйста, кучу раз уже пересмотрел, а ошибку найти не могу
@dolmatovN
@dolmatovN 3 года назад
у меня также, исправил?
@dolmatovN
@dolmatovN 3 года назад
Сейчас перезапустил, всё работает правильно
@dolmatovN
@dolmatovN 3 года назад
Enemy проходят под бубликом (то есть за), как исправить подскажи, пожалуйста?
@Shishkorez
@Shishkorez 3 года назад
Тоже была такая фигня.. Нашла такое решение - в инспекторе Enemy найди Additional Settings. В графе Order in Layer смени 0 на 1
@duha596
@duha596 3 года назад
Он еще во втором выпуске говорил что если объекты будут накладываться просто поменяйте цифирку
@Vozimeer
@Vozimeer 3 года назад
Егор, у тебя есть вк? Очень хочу задать пару вопросов по коду.
@atlassdev2481
@atlassdev2481 3 года назад
В шапке канала есть
@mp4774
@mp4774 3 года назад
Привет,почему на 2д не накидывается прифаб,однако обычная картинка спокойно ставится,в чем может быть дело?
@АзимАюпов-с3р
@АзимАюпов-с3р 2 года назад
Люди, как сделать так чтоб бонус не наезжал на противника?
@martikgames6031
@martikgames6031 3 года назад
привет у меня есть вопрос по коду
@ауешникпидорас
@ауешникпидорас 3 года назад
Помоги, прошу тебя. Короче когда сделал объкт который должен очищать эти препятствия, то когда просто продолжаю проект всё работает, когда сохраняю и заново компилирую проект, то этот объект который должен очищать препятствия пропадает, не знаю что делать.
@emsigaming8947
@emsigaming8947 3 года назад
Ахаахх, значит ты неправильно прописал функцию Destroy и в итоге обтект уничтожает сам себя когда игра запускается, или дело в Онтригер ентере где он получает значения коллайдера самого обьекта а не врага
@oldborodach
@oldborodach 3 года назад
Так, привет други подскажите товарищи программисты где я допустил ошибку в каком из видосов что у меня значит сам Generator если перетащить на Бублик он по верх него, а вот Enemy-Prefab пролетают позади Бублика 🤔 В чем баг? Спс заранее!
@salvatornyam9991
@salvatornyam9991 2 года назад
Нужно Sorting Layer создать и выставить правильно. Я так понял, без них никуда, сначала вроде нормально всё работает, но потом начинаются проблемы со слоями.
@lyaguha4226
@lyaguha4226 2 года назад
Привет! Есть проблема, когда я начинаю играть то препятствия летят под "бублик" можешь сказать как это исправить очень прошу🙏
@maximkagames
@maximkagames 2 года назад
В префабе order in layer ставиш на 1 или 2
@Mirowoolf
@Mirowoolf 3 года назад
И снова ошибка... Всё перепроверил, пересохранил... Акогда закидываю он не отвечает. Просто написано Spawner (script) и больше ничего не активно... ХЕЛП
@cheburek5116
@cheburek5116 3 года назад
А у тебя какая версия unity ?
@taode2623
@taode2623 3 года назад
Коллеги, может кто подскажет. Как прописать в одном скрипте респаун двух объектов с разной скорость респауна?
@emsigaming8947
@emsigaming8947 3 года назад
ну лично я делал таймер и по таймеру вызывал метод Instantiate если не знаеш как сделать просто загугли там написано, но через Нумераторы я хз как делать
@zawarudo111
@zawarudo111 7 месяцев назад
просто 2 спрайтов по одинаковому скрипту а скорость в строке yield return new WaitForSeconds(1.23456789f);
@artemkot-u2o
@artemkot-u2o 2 года назад
спасибо за видео! очень полезное!
@justforgrasp6598
@justforgrasp6598 3 года назад
Если у кого-то спавниться только один раз, то уберите в строчке void start слово private, оно у меня ставилось автоматически, убрал и стало спавниться как на видео Спавнит один раз private void Start() { StartCoroutine(Spawm()); } Должно быть так, спавнит много раз void Start() { StartCoroutine(Spawm()); }
@ТильзитерПармезан
мне не помогло xD
@prikol613
@prikol613 3 года назад
У меня ошибка в приписки: void OnTriggerEnter2D(collider2D other) Ошибка: collider2D
@alexav5770
@alexav5770 3 года назад
Попробуй Collider2D написать с большой буквы
@prikol613
@prikol613 3 года назад
@@alexav5770 спасибо, я сделал и хочу доработать её свои фишки добавить:)
@МаксимКазаков-в2х
@МаксимКазаков-в2х 4 года назад
Жду магазин
@salvatornyam9991
@salvatornyam9991 2 года назад
У меня почему-то обьекты спавняться только по У, хотя в скрипте стоит Х, и в настройках тоже. Спавн работает только по У независимо от введённых координат, спавн по Х всегда на 0. Спавнится так: = = = А не так: = = = = public class Spawner : MonoBehaviour { public Transform spawnPos; [SerializeField] Vector2 spawnRange; [SerializeField] GameObject spawnObj; // Start is called before the first frame update void Start() { StartCoroutine(Spawn()); } void Repeat() { StartCoroutine(Spawn()); } IEnumerator Spawn() { yield return new WaitForSeconds(3f);//time between spawns Vector2 pos = spawnPos.position + new Vector3(0,Random.Range(-spawnRange.x, spawnRange.x )); Instantiate(spawnObj, pos, Quaternion.identity); Repeat(); } }
@salvatornyam9991
@salvatornyam9991 2 года назад
Понял, метод Range стоит на месте У, перенёс его на Х - всё заработало.
@nikijam
@nikijam 2 года назад
В строке Vector2 pos = spawnPos.position... Нужно строку Random.Range(-spawnRange...) Написать не после нуля, а перед ним. должно быть так: Vector2 pos = spawnPos.position + new Vector3(Random.Range(-spawnRange.x, spawnRange.x),0 ) А у тебя так: Vector2 pos = spawnPos.position + new Vector3(0,Random.Range(-spawnRange.x, spawnRange.x ));
@Her0bro
@Her0bro Год назад
@@nikijam Дарова,знаешь как сделать так, чтобы "Enemy" летели вниз по горизонтали(по "y")?
@mentplayss3881
@mentplayss3881 3 года назад
Помоги что делать если объекты летят вниз?
@АлександрАтрошенко-ы2м
В настройках RigidBody2D поставь mode Kinematic
@mentplayss3881
@mentplayss3881 3 года назад
@@АлександрАтрошенко-ы2м они не двигаются вперёд
@zeroz683
@zeroz683 3 года назад
Привет, а можна так зделать шоб снаряди летели влево?
@kurumi8077
@kurumi8077 3 года назад
Перед speed поставь минус
@deniszavxoz3725
@deniszavxoz3725 2 года назад
Пишет что гдето не хватает точки с заяптой...Но ведь все верно! using System.Collections; using System.Collections.Generic; using UnityEngine; public class Destroyer : MonoBehaviour { void OnTriggerEnter2D(Collider2D other) { If (other.gameObject.tag == "Enemy") { Destroy(other.gameObject); } } }
@blog8564
@blog8564 3 года назад
Привет, а не подскажешь, как сделать так, чтобы враги и бонусы при генерации друг на друга не залазили? Заранее спасибо
@emsigaming8947
@emsigaming8947 3 года назад
Дело в том что в спавне врагов и бонусов ты используеш одинаковую рандомную кординату, чтобы избавится от этой проблемы создай ещё одну переменную range только уже для бонусов и в инстантиейте бонусов указывай её,,,
@АзимАюпов-с3р
@АзимАюпов-с3р 2 года назад
@@emsigaming8947 это помогло, но как сделать так чтоб бонус не наезжал на врага?
@vasya8696
@vasya8696 4 года назад
Доброго времени суток. Скажите пожалуйста, почему когда я сделал все как в видио, у меня не удаляются объекты?
@atlassdev2481
@atlassdev2481 4 года назад
Окей. Начнем по-порядку: есть ли у врагов и у удалятора компоненты box collider 2d и rigidbody 2d?
@atlassdev2481
@atlassdev2481 4 года назад
Если что, можешь написать мне в вк
@vasya8696
@vasya8696 4 года назад
@@atlassdev2481 блин, конечно я не добавил на "удалятор" rigidbody. Огромное спасибо
@vasya8696
@vasya8696 4 года назад
@@atlassdev2481 блин, я добавил но не помогло(Вк у меня нет)
@atlassdev2481
@atlassdev2481 4 года назад
@@vasya8696 Если будут ещё вопросы, то пишите сразу в вк - там быстрее отвечу
@ExpensiveAndUselesstrash
@ExpensiveAndUselesstrash 3 года назад
у меня шашки с лягушками, генерируются с префаба, чёрные лягушки надо развернуть на 180 градусов, никак не получается
Далее
Изучение Unity / Урок #1 - Основы C#
12:49
Как сделать прыжок в unity 2021
28:42