Уроки C# Unity / #10 - Разработка мини игры. Дизайн и функции

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 ต.ค. 2024

ความคิดเห็น • 67

  • @feathonnar
    @feathonnar ปีที่แล้ว +17

    Для тех, кто повторяет на свежих версиях. Обычный Text выпилили, теперь можно использовать только TextMeshPro
    Разница только в том, что в скрипте надо добавить библиотеку TMPro, а вместо Text переменной scoreText присваивать тип TextMeshProUGUI

    • @громимолния-м5ч
      @громимолния-м5ч ปีที่แล้ว +1

      Спасибо бро👍🏽

    • @ЛеонидЖартун
      @ЛеонидЖартун ปีที่แล้ว +1

      Спасибо. Для тебя отдельное место в Раю)))

    • @coldstaff-s
      @coldstaff-s หลายเดือนก่อน

      Его не выпилили !!!! он делается через 3D objects - legasy - text(legasy)

  • @johnnyhook6940
    @johnnyhook6940 11 หลายเดือนก่อน +37

    Для тех, у кого как и у меня TextMeshPro не привязывается к скрипту. Нужно при задании переменной scoreText установить класс TMP_Text. Должно выглядеть вот так "public TMP_Text scoreText;" , и еще должна быть подключена директория "using TMPro;"

    • @quick6648
      @quick6648 8 หลายเดือนก่อน +3

      Спасибо👍

    • @b1gbear165
      @b1gbear165 6 หลายเดือนก่อน +1

      2 часа....2 часа поисков по форумам.Захожу сюда и первый же комментарий решает эту проблему 😂

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

      Красавчик, спасибо, тоже помог

    • @ivan_averin
      @ivan_averin 4 หลายเดือนก่อน +3

      используйте UI -> Legacy -> Text, и будет вам счастье)

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

      все равно не работает, выдает ошибку

  • @VicktorZabavno
    @VicktorZabavno ปีที่แล้ว +2

    Красава!!!
    Всё четко и понятно, так держать!!!

  • @Владкасюхнич
    @Владкасюхнич 2 ปีที่แล้ว +5

    Я ждал этого момента 4 нет 5000 лет

  • @experienceee
    @experienceee 2 ปีที่แล้ว +5

    Просто СПАСИБО!😀👍

  • @iPetruha
    @iPetruha 5 หลายเดือนก่อน +1

    Спасибо!

  • @artik6614
    @artik6614 2 ปีที่แล้ว +3

    Почти первый!
    Можно лайк сейчас тебя смотрю и уведомление 😁

  • @fyspirid
    @fyspirid ปีที่แล้ว +2

    С новым годом! Отличное видео! Я сделал по вашим видео некоторые улучшения чтобы рандомно (в пределах поля) выходили объекты Collect Item, так же добавил в стену тоже рандомные кубы при соприкосновении игрока которых будет проиграна игра:
    using UnityEngine;
    public class CreateObject : MonoBehaviour
    {
    public GameObject[] obj;
    private void Start()
    {
    for (int i = 0; i < 3; i++)
    {
    Instantiate(obj[0], new Vector3(RandomNum(), 0.5f, 10), Quaternion.Euler(1f, 1f, 1f));
    Instantiate(obj[0], new Vector3(RandomNum(), 0.5f, -10), Quaternion.Euler(1f, 1f, 1f));
    Instantiate(obj[0], new Vector3(10, 0.5f, RandomNum()), Quaternion.Euler(1f, 1f, 1f));
    Instantiate(obj[0], new Vector3(-10, 0.5f, RandomNum()), Quaternion.Euler(1f, 1f, 1f));
    }
    for (int i = 0; i < 5; i++)
    {
    Instantiate(obj[1], new Vector3(RandomNum(), 0.5f, RandomNum()), Quaternion.Euler(1f, 1f, 1f));
    }
    }
    private int RandomNum()
    {
    return Random.Range(-10, 10);
    }
    }
    но вот беда, как сделать так чтобы выходило всегда определенное количество объектов Collect Item, или же(нравиться больше) чтобы для победы не только 5 объектов нужно собрать, а считало сколько создано объектов в игре.
    Спасибо
    ps: и я понимаю что СкопиПастил метод Instantiate, что тоже не правильно

    • @fyspirid
      @fyspirid ปีที่แล้ว

      Скрипт на игрока:
      using UnityEngine;
      using TMPro;
      using System;
      public class PlayerCntrl : MonoBehaviour
      {

      public float speed = 5f;
      private Rigidbody _rb;
      public TMP_Text scoreText;
      private int _score = 0;
      private void Awake()
      {
      _rb = GetComponent();
      }
      private void FixedUpdate()
      {
      float h = Input.GetAxis("Horizontal");
      float v = Input.GetAxis("Vertical");
      _rb.AddForce(new Vector3(h, 1, v) * speed * Time.fixedDeltaTime);
      }
      private void OnTriggerEnter(Collider other)
      {
      if(other.gameObject.tag == "CollectiveCube")
      {
      _score++;
      Destroy(other.gameObject);
      if (_score != 5)
      scoreText.text = "Score: " + _score;
      else
      scoreText.text = "You Win!";
      }
      if(other.gameObject.tag == "Trap")
      {
      Destroy(gameObject);
      scoreText.text = "You Lose!";
      }
      }
      }

    • @blimeblackrussia-crmp9347
      @blimeblackrussia-crmp9347 ปีที่แล้ว +1

      Брат, на какой версии унити делаешь на 2021 или 2022г.? У меня тут просто неполадки в проекте надо узнать у человека из 2023

    • @Mrskoteyka
      @Mrskoteyka ปีที่แล้ว +1

      @@blimeblackrussia-crmp9347 2021

  • @ktt0tt0
    @ktt0tt0 ปีที่แล้ว

    Спасибо огромное)

  • @Rezzem06
    @Rezzem06 2 ปีที่แล้ว +9

    у меня не получается перекинуть Text в score text и поэтому у меня не работает счет

    • @VeryBadElephant
      @VeryBadElephant 2 ปีที่แล้ว +10

      using TMPro;
      дальше обращайся не к Text, а к TMP_text

    • @imperator3431
      @imperator3431 ปีที่แล้ว

      Или легаси и там легаси текст

    • @maksimus_globus
      @maksimus_globus ปีที่แล้ว

      Спасибо, была та же проблема😀

    • @daries-pasha
      @daries-pasha ปีที่แล้ว

      ​@@VeryBadElephantСпасибо огромное ты очень помог!

    • @_MoJIoToK_
      @_MoJIoToK_ ปีที่แล้ว +2

      using TMPro;
      public TextMeshProUGUI scoreText;
      И потом текст станет без проблем!
      P.s. Это если кому будет еще нужно!

  • @Никита-ъ4о6ю
    @Никита-ъ4о6ю 6 หลายเดือนก่อน +2

    !! ВСЕ КТО РАБОТАЕТ НА БОЛИЕ НОВОЙ ВЕРСИИ И У ВАС НЕ РАБОТАЕТ ПРЕКОЛ СО СЧЕТОМ ИГРЫ !! в общем и целом я тоже новичок и у меня тоже не работал игровой счет. но долгие и упорные 2,5 часа прошли не зря я облазил все что только нашел пересмотрел кучу роликов и нашел решение нужно слегка изменить код и в настройках инспектора переместить сам же этот инспектор. (если кому-нибудь нужна будет помощь с этим напишите под комментарием и я вам в тг скину код и если нужно видео как перекинуть инспектор в инспектор).
    Удачи всем!

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

      нужна помощь

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

      Да, было бы крайне интересно узнать в чем проблема

  • @BaikalEnduro38
    @BaikalEnduro38 ปีที่แล้ว +15

    Для информации, чтобы начать игру заново можно сделать так: "using UnityEngine.SceneManagement;" И в конце, где надпись "Win": "SceneManager.LoadScene("Game");"

    • @Professor_gaeba
      @Professor_gaeba ปีที่แล้ว

      От души, брат

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

      странно почему он не добавил это в видео

  • @justorex
    @justorex 2 ปีที่แล้ว +1

    А на какую кнопку ты выделяешь несколько объектов?

    • @DmitriyKulakoff
      @DmitriyKulakoff 2 ปีที่แล้ว +3

      да как и в других программах, либо shift + ЛКМ либо ctrl + ЛКМ

    • @Podsoznanie_Sila
      @Podsoznanie_Sila ปีที่แล้ว +1

      ctrl+стрелки вниз/вверх

    • @wi6743
      @wi6743 4 หลายเดือนก่อน +2

      @@Podsoznanie_Sila Спасибо чел ты сейчас меня от таких страданий избавил

    • @Podsoznanie_Sila
      @Podsoznanie_Sila 4 หลายเดือนก่อน +1

      @@wi6743 класс, желаю счастья тебе, бро)

  • @r45her
    @r45her 7 หลายเดือนก่อน

    Зачем постоянно создавать куб для земли, если есть plane?

  • @deda085
    @deda085 ปีที่แล้ว

    после build and run текст почему-то исчезает

  • @KirillKirill-j7o
    @KirillKirill-j7o ปีที่แล้ว +1

    Привет! Может кто подскажет как сделать движение шара с помощью акселерометра?

  • @VladVeninTV
    @VladVeninTV 2 ปีที่แล้ว +1

    Сними урок про unityscript.

    • @Радикальныйцентрист-ъ1ю
      @Радикальныйцентрист-ъ1ю 2 ปีที่แล้ว

      А зачем собственно? Он не поставляется в новых версиях начиная с 2017 года

    • @VladVeninTV
      @VladVeninTV 2 ปีที่แล้ว +1

      @@Радикальныйцентрист-ъ1ю просто я js программист и хотел бы программировать на unityscript чтобы на c# не переучаться

    • @Osarikas
      @Osarikas 2 ปีที่แล้ว +7

      @@VladVeninTV гений

  • @artalexeyg2
    @artalexeyg2 5 หลายเดือนก่อน +1

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

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

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

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

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

  • @maks6148
    @maks6148 ปีที่แล้ว

    Что можно сделать что бы шар отскакивал от борта по траектории как в бильярде?

  • @АдамПрокопович
    @АдамПрокопович ปีที่แล้ว +1

    Мне не понравилось как работает через адд форс. Очень как то не очень вышло. А с разблокироваными осями вращения в один момент шарик полетел вверх из за поворота по оси.

  • @Суперснюс22
    @Суперснюс22 6 หลายเดือนก่อน

    а как сделать так чтобы игрок собирал обьекты за время

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

      Я думаю что использовать примерно тоже самое, что он сказали в видео, но в другом формате, то есть:
      public Text timeText;
      private int _time = 10; вместо 10 любое число можно вписать,
      _time--; уменьшает на единицу время, ну а чтобы не на единицу уменьшать, напиши например _time -= 5; тогда будет уменьшаться на 5.
      if(_time != 0)
      timeText.text = "Time: " + _time;
      else
      timeText.text = "Time's up";
      думаю что примерно смог объяснить, могу написать примерно код, чтобы время остановилось, если игрок собрал все объекты

  • @Vinneris
    @Vinneris 2 ปีที่แล้ว +1

    Подскажите пожалуйста сколько будет видео в этом курсе?

  • @Stanly1SL
    @Stanly1SL ปีที่แล้ว

    В фиксед пишутся только с риджибади

  • @VladVeninTV
    @VladVeninTV 2 ปีที่แล้ว +1

    Первый!!

  • @ИгрокотикМяумяу
    @ИгрокотикМяумяу 2 ปีที่แล้ว

    Я 1

  • @goodbye.....
    @goodbye..... ปีที่แล้ว

    блин мне нужно не 3д а 2д!!!!
    жаль конечно

    • @Ран-дом
      @Ран-дом ปีที่แล้ว

      привет я из прошлого:)

    • @goodbye.....
      @goodbye..... ปีที่แล้ว

      @@Ран-дом иди нафиг

    • @goodbye.....
      @goodbye..... ปีที่แล้ว +1

      @@Ран-дом сначало что то нормальное сделай а потом уже зови меня "я"

  • @eugenev423
    @eugenev423 ปีที่แล้ว

    Ничего не понятно😡

    • @Hamstercombattrener
      @Hamstercombattrener ปีที่แล้ว +1

      Все понятно, смотри предыдущие видео

    • @Professor_gaeba
      @Professor_gaeba ปีที่แล้ว +1

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

    • @Витал_визер
      @Витал_визер 5 หลายเดือนก่อน

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