Какой же автор ты молодец! У меня стало все получаться, когда я поняла, что нужно выполнять твои уроки последовательно - от первого ко второму и так далее, так будет проще
@uragan_276 жыл бұрын
Смотрел ваши уроки по 3D моделированию, и теперь дошёл до игровых движков, спасибо вам за ваши уроки!
@GGamess2 жыл бұрын
и к чему пришли?
@uragan_272 жыл бұрын
@@GGamess моделю )
@tima3dmax6 жыл бұрын
спасибо за ваши уроки. всё доступно и понятно. начал с вашего курса 3дмакса. уже подхожу к концу и когда-нибудь доберусь и до этого урока :) поражают ваши познания в программировании и моделировании и стиль вашего изложения! всё очень круто, спасибо!
@channelofmaks95054 жыл бұрын
у меня нет в отделе Nothing нет Ground что делать видио сто раз пересмотрел не нашел ошибку вот код: using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerController : MonoBehaviour { public float speed; public float jumpForse; private float moveInput; private Rigidbody2D rb; private bool facingRight = true; private bool isGrounded; public Transform groundCheck; public float checkRadius; public LeyerMask whatIsGround; private void Start() { rb = GetComponent(); } private void FixedUpdate() { isGrounded = Phisics2D.OverlapCircle(groundCheck.position, checkRadius, whatIsGround); moveInput = Input.GetAxis("Horizontal"); rb.velocity = new Vector2 (moveInput * speed, rb.velocity.y); if(facingRight == false && moveInput > 0) { Flip(); } else if (facingRight == true && moveInput < 0) { Flip(); } } void Flip() { facingRight = !facingRight; Vector3 Scaler = transform.localScale; Scaler.x *= -1; transform.localScale = Scaler; } }
@tixonochek4 жыл бұрын
@@channelofmaks9505 Держи код (вроде правильный) using System.Collections; using System.Collections.Generic; using UnityEngine; public class (тут имя вашего скрипта) : MonoBehaviour { public float speed; public float jumpForce; private float moveInput; private Rigidbody2D rb; private bool facingRight = true; private bool isGrounded; public Transform groundCheck; public float checkRadius; public LayerMask whatIsGround; private int exstraJumps; public int extraJumpsValue; private void Start() { exstraJumps = extraJumpsValue; rb = GetComponent(); } private void FixedUpdate() { isGrounded = Physics2D.OverlapCircle(groundCheck.position, checkRadius, whatIsGround); moveInput = Input.GetAxis("Horizontal"); rb.velocity = new Vector2(moveInput * speed, rb.velocity.y); if (facingRight == false && moveInput > 0) { Flip(); } else if (facingRight == true && moveInput < 0) { Flip(); } } private void Update() { if (isGrounded == true) { exstraJumps = extraJumpsValue; } if (Input.GetKeyDown(KeyCode.UpArrow) && exstraJumps > 0) { rb.velocity = Vector2.up * jumpForce; exstraJumps--; } } void Flip() { facingRight = !facingRight; Vector3 Scaler = transform.localScale; Scaler.x *= -1; transform.localScale = Scaler; } }
@TochkaAlla2 ай бұрын
Спасибо за уроки, самый удачно обучающий курс уроков, именно обучающий , а не транслирующий...Подписка+ лайки...
@antoniobohachuk5735 жыл бұрын
Спасибо тебе бро!) Я умел делать прыжки, но только так выходило, что перс мог прыгать бесконечно много, но ничё теперь он не такой наглый))
@channelofmaks95054 жыл бұрын
у меня нет в отделе Nothing нет Ground что делать видио сто раз пересмотрел не нашел ошибку вот код: using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerController : MonoBehaviour { public float speed; public float jumpForse; private float moveInput; private Rigidbody2D rb; private bool facingRight = true; private bool isGrounded; public Transform groundCheck; public float checkRadius; public LeyerMask whatIsGround; private void Start() { rb = GetComponent(); } private void FixedUpdate() { isGrounded = Phisics2D.OverlapCircle(groundCheck.position, checkRadius, whatIsGround); moveInput = Input.GetAxis("Horizontal"); rb.velocity = new Vector2 (moveInput * speed, rb.velocity.y); if(facingRight == false && moveInput > 0) { Flip(); } else if (facingRight == true && moveInput < 0) { Flip(); } } void Flip() { facingRight = !facingRight; Vector3 Scaler = transform.localScale; Scaler.x *= -1; transform.localScale = Scaler; } }
@kelni4 жыл бұрын
@@channelofmaks9505 public LeyerMask whatIsGround; isGrounded = Phisics2D.OverlapCircle(groundCheck.position, checkRadius, whatIsGround); тут и тут неправильно написал слова
@channelofmaks95054 жыл бұрын
@@kelni спс
@lemon26174 жыл бұрын
Спасибо
@cubicworld012 жыл бұрын
Как бы я жил без вас
@Жмых-х1к5 жыл бұрын
Спасибо большое за видео урок. Я три дня по пару часов мучался,чтобы он прыгал опред количество раз,но по видео androidhelpera у меня получалось или бесконечное количество раз или вообще как столб прибит к земле,но с твоим видосом я наконец то смог заставить мой кубик прыгать,а не летать. Еще раз ОГРОМНОЕ спасибо, удачи по жизни.
@mrashees66302 жыл бұрын
Бро, спасибо за видос, я изломал всю голову как совместить проверку земли, количество прыжков и нажатие на кнопку. Я не знаю что я делал бы без твоего видоса.
@cubicworld012 жыл бұрын
Интересный факт: Maxter учился создавать игры у него
@paustaev4 жыл бұрын
Спасибо тебе, всё очень грамотно объясняешь, при этом не растягивая видео на час. Очень сильно помогли твои видосы)
@appleuser91304 жыл бұрын
Реально спасибо тебе больше,очень помог с этим. Сейчас задали проектную работу сделать(игру) и не знал как код написать. Благодаря тебе больше узнал! Весьма благодарен,пошёл дальше смотреть твои видео! Лайк == подписка. Удачи тебе в будущих проектах
@джастдолбоёбина3 жыл бұрын
СПАСИБО ПРОСТО ОГРОМНОЕ СПАСИБО Это единственное видео, которое мне помогло сделать прыжок, я вам бесконечно благодарна, словами не передать насколько.
@VepsianGameDesigner4 жыл бұрын
Наконец-то нашел адекватного учителя, излагающего четко и последовательно свою мысль. Огромная благодарность!
@ВадимУткин-у5е6 жыл бұрын
Спасибо огромное. Очень долго искал тутор по тому, как сделать что б персонаж бесконечно не прыгал в воздухе. Ваш тутор очень помог c:
@terrarisCheese2 жыл бұрын
Помогите пожалуйста сделать ограничение прыжков с Tilemap. Я не понимаю как надо делать что бы все работало. Потому что если поставить Tilemap слой нужный то персонаж все равно прыгает везде где хочет.
@ellieearth39755 жыл бұрын
Спасибо автору канала! Отличная подача информации.
@ИльяИванов-й8о2э4 жыл бұрын
Крассаучег! Продолжай в том же духе!) от русскоязычных лучшие уроки!)
@damirgaleev40594 жыл бұрын
БРО СПАСИБО ТЕБЕ БОЛЬШОЕ ТЫ ТАК МНЕ СИЛЬНО ПОМОГ!!!!!
@КиллограмКартошки4 жыл бұрын
Огромное тебе спасибо! Я уже перепробовал несколько вариантов, и только твой сработал! Просто и понятно! Спасибо
@mezeus46145 жыл бұрын
Крутой урок. Всё оч интересно и доступным языком рассказано для нубов :)
@ДанилИванов-я2я5 жыл бұрын
Ты просто лучший,очень сильно помог,лайк однозначно
@flexnise65724 жыл бұрын
Незнаю почему, смотрю уже 12 урок и не получается сделать прыжок(((
@FXUNDPLXGG4 жыл бұрын
Там нет ничего сложного
@flexnise65724 жыл бұрын
@@FXUNDPLXGG Давно задавался этим вопросом, я уже давно все сам решил)
@keyk79944 жыл бұрын
@@flexnise6572 если получилось, не мог бы скинуть скрипт для прыжка?)
@flexnise65724 жыл бұрын
@@keyk7994 Сори, но не могу( делал 4 месяца назад, а проект уже давно удалил, вместе со скриптами
@unity3dsimplesolutions3094 жыл бұрын
@@flexnise6572 зря
@Fyrrlasho3 жыл бұрын
Что делать если персонаж не видит ground? Добивил все в слои и просто не прыгает
@qwendamned694 жыл бұрын
Спасибо!!! Долго не понимал как поворачивать игрока в сторону ходьбы, ТЫ ТОП!!!
@zellan59145 жыл бұрын
Приятная картинка!)
@СергейНикитин-щ7ю4 жыл бұрын
Здравствуйте.Столкнулся с проблемой того что персонаж не поворачивается в сторону движения. private bool facingRight = true; if(facingRight == false && moveInput > 0) { Flip(); } else if(facingRight == true && moveInput < 0) { Flip(); } } void Flip() { facingRight = !facingRight; Vector3 Scaler = transform.localScale; Scaler.x *= -1; transform.localScale = Scaler; } }
@graphicaldesign27764 жыл бұрын
В скрипте вроде ошибок нет. Надо искать проблему не здесь.
@СергейНикитин-щ7ю4 жыл бұрын
@@graphicaldesign2776 Но это действие зависит только от скрипта, что еще может влиять на это ?
@СергейНикитин-щ7ю4 жыл бұрын
@@graphicaldesign2776 Извиняюсь возможно выложил слишком длинный вопрос( я про код).Укоротил его.
@stevemonalola53954 жыл бұрын
Попробуй заменить метод Flip на этот код (у меня работает) : void Flip() { if (Input.GetAxis("Horizontal") > 0) { transform.localRotation = Quaternion.Euler(0, 0, 0); } else if(Input.GetAxis("Horizontal") < 0) { transform.localRotation = Quaternion.Euler(0, 180, 0); }
@forgestudio65764 жыл бұрын
Привет! У меня небольшой вопрос.У меня есть летающая платформа в игре на обычных стенах я просто изменял Слой но как сделать с платформой если я уберу с них слой то игрок не сможет отпрыгнуть от края, что делать? Пытался использовать OnDrawGizmosSelected, но почему то круг при старте переносится в середину игрока, как его перенести обратно к ногам я не знаю да и не думаю что это поможет.Что делать?!
@artvideos53094 жыл бұрын
Автор красаучег! спасибо большое)
@dzh1999 Жыл бұрын
здрастье а почему персонаж прыгает бесконечное количество раз не коснувшись земли вроде extraJumpValue стоит на нуле using System.Collections; using System.Collections.Generic; using UnityEngine; public class JampPlayer : MonoBehaviour { public float speed; public float JumpForce; private float moveInput; private Rigidbody2D rb; private bool facingRight = true; private bool isGrounded; public Transform groundCheck; public float checkRadius; public LayerMask whatIsGround; private int extraJump; public int extraJumpValue; private void Start() { extraJump = extraJumpValue; rb = GetComponent(); } private void FixedUpdate() { isGrounded = Physics2D.OverlapCircle(groundCheck.position, checkRadius, whatIsGround); moveInput = Input.GetAxis("Horizontal"); rb.velocity = new Vector2(moveInput * speed, rb.velocity.y); if (facingRight == false && moveInput > 0) { Flip(); } else if (facingRight == true && moveInput < 0) { Flip(); } } private void Update() { if (isGrounded == true) { extraJump = extraJumpValue; } if (Input.GetKeyDown(KeyCode.Space) && extraJump > 0) { rb.velocity = Vector2.up * JumpForce; extraJump--; }else if (Input.GetKeyDown(KeyCode.Space) && extraJump == 0 && isGrounded == true) { rb.velocity = Vector2.up * JumpForce; } } void Flip() { facingRight = !facingRight; Vector3 Scaler = transform.localScale; Scaler.x *= -1; transform.localScale = Scaler; } }
@MrHoyshchik4 ай бұрын
где extrajump- напиши два минуса
@Rashpak4 жыл бұрын
Благодарю за очень очень полезный урок!!! Я начинающий совсем, всё повторил со своими оригинальными спрайтами, получилось отменно! Поклонидзе до пупа!
@бебранюх-и3р4 жыл бұрын
Спасибо тебе большое, очень сильно помог. Все понятно объяснил, ничего лишнего.
@3reich12123 жыл бұрын
Пжжж если есть такое видео то скажи его название, как сделать чтобы если игрок соприкасается с шипами или в него стреляет вражеский объект, то он не моментально снимал ему всё хп а была задержка между нанесением урона
@СергейОбразцов-ъ8ф Жыл бұрын
Ты лучший! Спасибо
@tablet1ch4 жыл бұрын
у меня возникла проблема, персонаж при движении не отзеркаливается. в чём проблема?
@ddrgs603 жыл бұрын
этот код уже старый и не работает, проще говоря говнокод, ищи другой способ.
@tablet1ch3 жыл бұрын
@@ddrgs60 ок, спс
@igorkhmelevskyi80604 жыл бұрын
Очень понятный и годный ролик, спасибо!
@retby81753 жыл бұрын
8:28 а что делать если нету ground check???
@plusplus23833 жыл бұрын
У меня при изменении Scaler с 1 на -1 также меняется Position на отрицательное значение, из-за этого персонажа перемещает в противоположную сторону экрана, кто может помочь?
@zuxccc4 жыл бұрын
Мне конечно Вряд-ли ответят но что мне делать? Мне выдаётся ошибка CS0117 Physics2d does not contain a definition for OverLapCircle
@graphicaldesign27764 жыл бұрын
Тут же написано, что не существует Physics2d Потому что есть Physics2D
@zuxccc4 жыл бұрын
@@graphicaldesign2776 ну у меня так и написано, просто я с телефона забыл в d больше сделать, но в скрипте все равно ошибка
@graphicaldesign27764 жыл бұрын
@@zuxccc Грустно. Нужно смотреть сам скрипт. Не научился еще ванговать.
@zuxccc4 жыл бұрын
@@graphicaldesign2776 Вот скрипт (Прошу не обращать внимание на другие команды, просто у меня своя игра):using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UI; public class Control_Character : MonoBehaviour { Rigidbody2D rb; public Image UIHP; public float HP; public Text HealBottleT; public float HealBottle = 0f; private bool isGrounded; public Transform groundCheck; public float CheckRadius; public LayerMask WhatIsGround; private int CountJumps; public int CountJumpValue; void Start() { HP = 1f; rb = GetComponent(); } void Update() { UIHP.fillAmount = HP; if (Input.GetKeyDown(KeyCode.Space) & CountJumps > 0) { JumpEvent(); CountJumps--; }else if (Input.GetKeyDown(KeyCode.Space) & CountJumps == 0 & isGrounded == true) { JumpEvent(); } if (Input.GetAxis("Horizontal") == 0) { } else { Flip(); } if (HP 0f & HP < 1f) { HP = HP + 0.20f; HealBottle = HealBottle - 1f; } if (HP > 1f) { HP = 1f; } } void OnCollisionEnter2D(Collision2D enemy) { if (enemy.gameObject.tag == "Enemy1") //Получение урона { HP = HP - 0.25f; } if (isGrounded == true) { CountJumps = CountJumpValue; } } void ReloadFuckingLevel() { SceneManager.LoadScene("SampleScene"); //Перезагрузка лвл } void Flip() { if (Input.GetAxis("Horizontal") < 0) { transform.localRotation = Quaternion.Euler(0, 180, 0); } if (Input.GetAxis("Horizontal") > 0) { transform.localRotation = Quaternion.Euler(0, 0, 0); } } private void FixedUpdate() { isGrounded = Physics2D.OverLapCircle(groundCheck.position, CheckRadius, WhatIsGround); rb.velocity = new Vector2(Input.GetAxis("Horizontal") * 12f, rb.velocity.y); //Ходьба } void JumpEvent() => rb.AddForce(transform.up * 14f, ForceMode2D.Impulse);//Прыжок private void OnTriggerStay2D(Collider2D other) { if (other.gameObject.tag == "Heal") { if (Input.GetKey(KeyCode.E)) { HealBottle = HealBottle + 1f; } } } } Ошибка: CS0117 'Physics2D' does not contain a definition for 'OverLapCircle '
@graphicaldesign27764 жыл бұрын
@@zuxccc Вполне ожидаемо, потому что как разобраться с "чужим" проектом, не видя этот проект.
@LonelyNull3 жыл бұрын
Всё полностью рабочее!!! Если у кого то ошибка смотрите внимательнее видео!!!
@ashkramer96703 жыл бұрын
Автор, подскажите пожалуйста, вот вы делаете передвижение на статику +-1. А как его сделать более инертным, что бы было ускорение и торможение.
@Uzakov844 жыл бұрын
Спасибо все доходчиво и понятно!!!!
@yanchikteam15853 жыл бұрын
а что делать если я когда вожу Rigidbody2D у меня не становиться шрифт зельоным цветом? это н ормально?
Не понимаю почему такой офигенный канал имеет столько подписчиков?😟 Спасибо тебе большое за то, что делаешь такие видеоуроки 👍👍👍 Благодаря им мой персонаж теперь может двигаться😂 но я делал все как на видео, но он не прыгает, только движется на право и налево. Не подскажешь пожалуйста как это исправить?
@Malso2283 жыл бұрын
Привет, я зделал платформу через которую я могу запрыгнуть с низу но я не могу сам прыгать на этой платформе, не подскажешь как это исправить ?
@GreedGylg2 жыл бұрын
А какая разница между FixedUpdate() и Update()?
@kain44002 жыл бұрын
FixedUpdate() используется для физики. Так лучше делать для логики игры.
@Гыгы Жыл бұрын
Update зависит от производительности устройства игрока. FixedUpdate не зависит. С ним легче работать, если тебе нужно прописать что-то, связанное с действием по времени, чтобы на всех устройствах с разной мощностью работало одинаково.
@MalenkayaPlomba3 жыл бұрын
Блин, ребят, объясните пожалуйста кому не впадлу, зачем нам нужно условие на 11:24? Минут 15 сижу и не могу понять что оно проверяет... То есть, когда у нас заканчиваются дополнительные прыжки (первый if пропускается, т.к. extraJumps становится меньше 1) мы заходим в else и проверяем: если мы нажимаем стрелку вверх и количество дополнительных прыжков равно 0 и мы на земле, то опять прыгаем. Зачем? То есть мы находимся на земле, у нас закончились прыжки, но они же опять добавятся в следующем вызове Update(), и зачем нам сейчас прыгать? Я туплю, ноо... объясните пожалуйста.
@romulluss4 жыл бұрын
Можете помочь, я прописываю всё точно так но перс не прыгает а если прописать в Extra Jumps Value значение прыгает столько же. (
@СоюзГеймДэв4 жыл бұрын
Такая же фигня. Число прыжков не ограничено...
@Vlad2Ray3 жыл бұрын
скорее всего у тебя платформа не на слое Ground, или граунд чек на находиться в персонаже
@ddrgs603 жыл бұрын
@@Vlad2Ray код уже устарел , искать только другой.
@ЯДобрыЙ-п8д4 жыл бұрын
самые лучшие рус. уроки) англ очень сложно смотреть, так чтобы и субтитры читать и успевать кодить, а не ставить на паузу каждые 5 сек) спасибо тебе, с меня лайк и подписка
@meha-engineer5 жыл бұрын
Спасибо за объяснение
@skovorodka18674 жыл бұрын
Можешь сказать пожалуйста какая у тебя версия visual studio? Я скачал 2019 с офф сайта, а она какая-то странная. И если не сложно ещё как ты сделал чёрным фон.
@graphicaldesign27764 жыл бұрын
Работаю на официальной 2019.
@stevemonalola53954 жыл бұрын
Если ты про подсказки, то нужно зайти Edit -> Preferences - > External Tools -> Externel Script Editor (это нужно делать в юнити) потом перезапустить код (появятся в течение минуты после запуск кода). А что-бы зделать тёмную тему нужно зайти в Средаства -> Параметры -> Окружение -> Общие -> Цветовая тема.
@skovorodka18674 жыл бұрын
@@stevemonalola5395 спасибо, но оказывается системный visual studio, который скачивается вместе с юнити у меня не запускался потому что я не выбрал его как редактор, поэтому скачал новый (херовый). И ещё раз спасибо, про темную тему я не знал, выглядит салидно:) .
@Triplevex084 жыл бұрын
Помогите у меня ошибка Assets\Scripts\Contrl.cs(27,26): error CS0117: 'Physics2D' does not contain a definition for 'OverLapCircle' . пожалуйста подскажите .
@graphicaldesign27764 жыл бұрын
Чем помочь то и что подсказать?
@Triplevex084 жыл бұрын
@@graphicaldesign2776 у меня эта ошибка как её можно исправить , пересматривал много раз ваше видео и делал по нему .
@graphicaldesign27764 жыл бұрын
А черт его знает. По строке ошибке ничего не известно.
@Triplevex084 жыл бұрын
@@graphicaldesign2776 кажется нужно было написать OverlapCircle а не OverLapCircle . Но это не точно)
@aj4x6004 жыл бұрын
интересно) а как эту систему на кнопки под андроид закинуть?
@___WaVe___3 жыл бұрын
Как в 3d сделать чтоб персонаж не цеплялся за обьекты в прыжке?
@mark2st1602 жыл бұрын
У меня ужасный интернет, и не видно текста , можете пожалуйста дать готовый код?Очень буду благодарен!))
@RussianMonty4 жыл бұрын
Здравствуйте, отличные ролики ! Назрел вопрос, private и public , это модификаторы доступа. Где-то я читал , что если не ставить модификатор то он автоматически private, тогда зачем вы вручную ставите?) ( "private float moveInput", "private void Start", и т.п.)
@graphicaldesign27764 жыл бұрын
Чтоб зритель это видел.
@МоиРаботы-ю3ж4 жыл бұрын
Как сделать так что бы персонажа не крутило как у вас в конце видео? 12:54
@graphicaldesign27764 жыл бұрын
В Rigidbody зафризить вращение по Z
@kirillvpgames49323 жыл бұрын
объекта physics material 2d не существует. где его найти в ассетах и create у меня только physics material
@kitgunmi96313 жыл бұрын
Create>2D>physics material 2d
@kirillvpgames49323 жыл бұрын
там его нет, это баг, он есть во всех версиях до версий 2019 года.
@Sb5-034 жыл бұрын
Классные видео, продолжай снимать!
@kitkyte71265 жыл бұрын
Привет.Помоги пожайлуста у меня проблема,хотя я написал всё идеально!!!У меня кароч когда я запускаю игру он прыгает определенное кол-во раз а потом хоть пробел прожми стоит как вкопаный почему??
@badler61455 жыл бұрын
чел у меня такая же проблема капец
@badler61455 жыл бұрын
не пойму че делать мне
@kitkyte71265 жыл бұрын
@@badler6145 кинь скрипт я посмотрю и скажу.
@kitkyte71265 жыл бұрын
И я кста давно все исправил.
@zuxccc4 жыл бұрын
А ты точно на платформе кказал слой ground?
@shirnick4 жыл бұрын
у меня ошибку выдаёт 'Input' does not contain a definition for 'GetCeyDown', что делать!
@graphicaldesign27764 жыл бұрын
Написать правильно... Не существует GetCeyDown, существует GetKeyDown
@dimitriilldman3 жыл бұрын
О, невнимательность: у меня было GetkeyDown
@DmitrySufrai5 жыл бұрын
У меня код идентичный, но игрок разгоняется слишком долго до максимальной скорости, с использованием GetAxisRaw все происхожит слишком резко, при использовании не скорости, а просто изменении позиции игрок при столкновении со стеной начинает "пытаться" в нее входить и его начинает дергать. С материалом тоже не все ясно, поставил два коллайдера, на тело и ноги, на теле материал без трения, чтобы он не цеплялся за стены, а на ногах трение 3, чтобы он тормозил быстрее, чем ускорялся, пытался через Linear Drag, но от него страдает прыжок, при прыжке на другую платформу, нижний коллайдер задевает платформу и из-за материала остается там. Вопрос - как это исправить? Заранее извини за беспокойство и спасибо
@vianodex35594 жыл бұрын
А что делать если в риджид боди нет материала? Только в бокс коллайдере
@tronka12224 жыл бұрын
Я всё написал , но void update объявлен но не используется , и через это видимо у меня и не прыгает , как это решить?)))
@merck87434 жыл бұрын
а есть такой же урок только с анимацией?
@Дмитрий-о7э1б5 жыл бұрын
Почему то иногда после прыжка проваливается сквозь платформу? Что посоветуете?
@graphicaldesign27765 жыл бұрын
Сделать у платформы boxcolider чуть побольше
@dembith64652 жыл бұрын
а почему у меня всегда Is Grounded = true
@bosbogdan5 жыл бұрын
Топ урок
@Темик-Развлечения4 жыл бұрын
Подскажите пожалуйста. У меня jump не работает, а в функции ExtraJumpValue я могу указать сколько всего прыжков может совершить герой, как решить проблему подскажите пожалуйста
@graphicaldesign27764 жыл бұрын
Как именно не работает? Что пишет консоль? Как проверял работу проекта?
@Темик-Развлечения4 жыл бұрын
@@graphicaldesign2776, нет, все работает просто если я установлю jump 10, a ExtraJumpValue 0, то он не будет прыгать. Примерный вид Speed 10 Jump 10 ...... .... ExtraJumpValue 0 Он не прыгает,но если я напишу Speed 10 Jump 10 .... ..... ExtraJumpValue 1 То персонаж прыгает 1 раз
@badler61455 жыл бұрын
что делать у меня человечек улетает
@graphicaldesign27765 жыл бұрын
главное, не грустить
@badler61455 жыл бұрын
а все исправил
@badler61455 жыл бұрын
просто когда вы так быстро говорите очень трудно успеть написать уследить и понять конечно я все видео смотрел на скорости 0.5 а так очень познавательное видео получилось и обьясняете сразу что к чему
@yuhhin4 жыл бұрын
@@badler6145 а как исправил?
@ДмитрийКирюшкин-п1е2 жыл бұрын
Здравствуйте. Есть один вопрос, а как сделать движение персонажа в одну сторону бесконечно ?
@rezofds33952 жыл бұрын
в void update писать transform.Translate(0,0,0); - где нули подставляете значение , конечно ответ через 7 месяцев по идеи не нужен , но всё же
@enot355 жыл бұрын
У меня во время первого прыжка он отнимает единицу от extraJumps, не успев оторваться от земли (как я думаю) тут же прибавляет единицу к extraJumps, в итоге он прыгает два раза в воздухе. Кто нибудь знает как это пофиксить?
@graphicaldesign27765 жыл бұрын
значит какая-то ошибка в скрипте
@gamespace91644 жыл бұрын
В чем проблема? У ьуня ошибка компиляции кога я сую этот скрипт в перса скрипт таков using System.Collections; using System.Collections.Generic; using UnityEngine; public class NewBehaviorScript : MonoBehaviour { public float speed; public float jumpForse; private float moveInput; private Rigidbody2D rb; private bool facingRight = true; private bool isGrounded; public Transform groundCheck; public float checkRadius; public LayerMask whatIsGround; private int extraJumps; public int extraJumpsValue; private void Start() { extraJumps = extraJumpsValue; rb = GetComponent(); } private void FixedUpdate() { isGrounded = Physics2D.OverlapCircle(groundCheck.position, checkRadius, whatIsGround); moveInput = Input.GetAxis("Horizontal"); rb.velocity = new Vector2(moveInput * speed, rb.velocity.y); if (facingRight == true && moveInput > 0) { Flip(); } else if (facingRight == false && moveInput < 0) { Flip(); } } private void Update() { if (isGrounded == true) { extraJumps = extraJumpsValue; } if (Input.GetKeyDown(KeyCode.UpArrow) && extraJumps > 0) { rb.velocity = Vector2.up * jumpForse; extraJumps--; } else if (Input.GetKeyDown(KeyCode.UpArrow) && extraJumps == 0 && isGrounded == true) { rb.velocity = Vector2.up * jumpForse; } } void Flip() { facingRight = !facingRight; Vector3 Scaler = transform.localScale; Scaler.x *= -1; transform.localScale = Scaler; } }
@ztolik772 жыл бұрын
Бро, помоги пожалуйста у меня почему то персонаж имеет бесконечные прыжки вот код: using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerControler : MonoBehaviour { public float speed = 0.1f; public float jumpForse; public bool isGrouded; public Transform groundCheck; public float cheakRadius; public LayerMask whatIsGround; private Rigidbody2D rb; private int extraJumps; public int extraJumpsValue; private void Start() { extraJumps = extraJumpsValue; rb = GetComponent(); } private void FixedUpdate() { isGrouded = Physics2D.OverlapCircle(groundCheck.position, cheakRadius, whatIsGround); } private void Update() { if(isGrouded == true) { extraJumps = extraJumpsValue; } transform.position += new Vector3(speed, 0, 0) * Input.GetAxis("Horizontal"); if (Input.GetKeyDown(KeyCode.Space)) { rb.velocity = Vector2.up * jumpForse; extraJumps--; }else if (Input.GetKeyDown(KeyCode.Space) && extraJumps == 0 && isGrouded == true) { rb.velocity = Vector2.up * jumpForse; } } }
@onlymymint4 жыл бұрын
Visual Studio выдает ошибку мол, FindPlayer не известен в данном контексте и тоже самое с playerisLeft как это чиниться?
@shirnick4 жыл бұрын
проверь название скрипта и название в скрипте
@Wen1x133 жыл бұрын
а как сделать так чтоб он не крутился?
@Wen1x133 жыл бұрын
а уже не надо) я в инете нашёл
@3D-shnik4 жыл бұрын
if(facingRight == false && moveInput > 0) { Flip(); }else(facingRight == true && moveInput < 0) { Flip(); } почему у меня просит поставить в конце ";" в - else(facingRight == true && moveInput < 0)
@graphicaldesign27764 жыл бұрын
по этому куску непонятно
@3D-shnik4 жыл бұрын
@@graphicaldesign2776 я уже разобрался, но все равно спасибо
@channelofmaks95054 жыл бұрын
у меня нет в отделе Nothing нет Ground что делать видио сто раз пересмотрел не нашел ошибку вот код: using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerController : MonoBehaviour { public float speed; public float jumpForse; private float moveInput; private Rigidbody2D rb; private bool facingRight = true; private bool isGrounded; public Transform groundCheck; public float checkRadius; public LeyerMask whatIsGround; private void Start() { rb = GetComponent(); } private void FixedUpdate() { isGrounded = Phisics2D.OverlapCircle(groundCheck.position, checkRadius, whatIsGround); moveInput = Input.GetAxis("Horizontal"); rb.velocity = new Vector2 (moveInput * speed, rb.velocity.y); if(facingRight == false && moveInput > 0) { Flip(); } else if (facingRight == true && moveInput < 0) { Flip(); } } void Flip() { facingRight = !facingRight; Vector3 Scaler = transform.localScale; Scaler.x *= -1; transform.localScale = Scaler; } }
@channelofmaks95054 жыл бұрын
кто помогите
@graphicaldesign27764 жыл бұрын
Так при чем тут скрипт... Слой надо создать Ground.
@channelofmaks95054 жыл бұрын
@@graphicaldesign2776 Спасибо
@channelofmaks95054 жыл бұрын
попробую
@channelofmaks95054 жыл бұрын
@@graphicaldesign2776 я сделал как вы говорили, но у меня все равно не запускается и в скрипте не появились новые вкладки что делать? Мне кажется ошибка в коде потому что в консоле пишется ошибка, вот сам код если можете и есть время проверьте пожалуйста, код: using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerController : MonoBehaviour { public float speed; public float jumpForce; private float moveInput; private Rigidbody2D rb; private bool facingRight = true; private bool isGrounded; public Transform groundCheck; public float checkRadius; public LayerMask whatIsGround; private int extraJumps; public int extraJumpsValue; private void Start() { extraJumps = extraJumpsValue; rb = GetComponent(); } private void FixedUpdate() { isGrounded = Phisics2D.OverlapCircle(groundCheck.position, checkRadius, whatIsGround); moveInput = Input.GetAxis("Horizontal"); rb.velocity = new Vector2(moveInput * speed rb.velocity.y); if (facingRight == false && moveInput > 0) { Flip(); } else if (facingRight == true && moveInput < 0) { Flip(); } } private void Update() { if (isGrounded == true) { extraJumps == extraJumpsValue; } if (Input.GetKeyDown(KeyCode.UpAroow) && extraJumps > 0) { rb.velocity == Vector2.up * jumpForce; extraJumps--; }else if (Input.GetKeyDown(KeyCode.UpAroow) && extraJumps == 0 && isGrounded == true) { rb.velocity = Vector2.up * jumpForce; } } void Flip() { facingRight = !facingRight; Vector3 Scaler = transform.localScale; Scaler.x *= -1; transform.localScale=Scaler; } } перепровирял три четыри раза не смог найти ошибки, или я просто невнимателен:(
@bonickd90955 жыл бұрын
Подскажите что уже только не пробовал. Суть в том что у персонажа бесконечные прыжки. Код идентичен (проверял многократно) всё вроде по видео сделал. Может есть варианты в чём может быть проблема!?
@graphicaldesign27765 жыл бұрын
так тут же не только код важен Надо чтоб земля была на слое ground Чтоб groundcheck был внизу персонажа чтоб радиус был достаточный для считывания информации
@bonickd90955 жыл бұрын
@@graphicaldesign2776 Я понимаю я же говорю что всё сделал по видео но уже битые 2 часа не могу осознать проблему
@graphicaldesign27765 жыл бұрын
грустно
@bonickd90955 жыл бұрын
@@graphicaldesign2776 очень
@bonickd90955 жыл бұрын
@@graphicaldesign2776 разве что у меня не просто спрайт с колайдером а (Tilemap) с (TilemapColider 2d)
@GrandBreuil5 жыл бұрын
Огромное тебе спасибо. ООООЧЕНЬ ПОМОГ😊😊😊
@sender53612 жыл бұрын
всем привет делаю под копирку как на видео но мне дает ошибку в rb и moveInput! я хз че делать бесит, все зделал также но визде ошибки
@sender53612 жыл бұрын
кароче я хер знает, но я снес полностью проект, создал новый залил заново все спрайты переписал скрипт и все заработало я не знаю в чем проблема была!
@ImkuliN4 жыл бұрын
Помогитеееее пж, короче я всеее сделал как надо прям всё! А он во первых не падает ну типо где его ставишь там и остается в воздухе во вторых он не идет направо или налево а если я нажму вверх(прыжок) он просто взлетает наверх и летит без конца! помогиииииииииииите!
@shirnick4 жыл бұрын
на нём есть Rigidbody2D?
@muiwols67094 жыл бұрын
1. как импортировать в юнити В принципе любую картинку? Я когда пытаюсь пихнуть она просто не пихается...
@tsukuri59323 жыл бұрын
попробуй через кнопку импорт либо напрямую в асетах папку создай и туда уже
@maaaaaruch4 жыл бұрын
Assets\hero.cs(51,13): error CS0103: The name 'Flip' does not exist in the current context
@graphicaldesign27764 жыл бұрын
Исправляйте.
@vitek81374 жыл бұрын
Что делать если персонаж круглый и GroundCheck приклеплённый к нему тоже крутится?
@zuxccc4 жыл бұрын
на персонаже в rigidbody2d нажми на constrains и выбери пункт на Freeze Rotation. А если хочешь чтоб персонаж крутился это надо просто сделать анимацию и настроить
@vitek81374 жыл бұрын
@@zuxccc Спасибо уже решил проблему.Прикрепил GroudCheck и персонажа к другому объекту не соединяя их и сделал так чтобы GroudCheck двигался за персонажем
@icuteenderyt5 жыл бұрын
Слушайте, а как добавить анимацию к кубу который прыгает?
@paranoazip5 жыл бұрын
На его канале уже есть тема по поводу анимации. Но там не куб а просто как сделать анимацию
@konstantinkrishtapov54884 жыл бұрын
Привет, можешь подсказать как в этом случае сделать так чтобы персонаж резко останавливался
@_lemb_3 жыл бұрын
Спасибо , тебе хорошо объяснил я даже все понял!
@SetIn0005 жыл бұрын
После приземления счётчик прыжков не обнуляется.. Что делать?
@graphicaldesign27765 жыл бұрын
Проверить код на ошибки
@SetIn0005 жыл бұрын
Проверил не получилось решил с помощью OnCollision2D Enter при наступлении на тег Ground выставлять isGround true
@graphicaldesign27765 жыл бұрын
если сделать все как в видео, то все должно работать
@Dunai_Perjaslawsky5 жыл бұрын
@@graphicaldesign2776 и тем не менее не работает.
@graphicaldesign27765 жыл бұрын
значит что-то делаете не так
@NRodriges4 жыл бұрын
Помогите пожалуйста. С помощью этого видео я хотел сделать ограничение в количестве прыжков у персонажа. Всё написал, включаю игру, прыгаю. Всё классно, но есть проблема, персонаж прыгает, а дальше отказывается. Что не так?
@graphicaldesign27764 жыл бұрын
А мне как знать, что не так? Не видя проекта, нереально сказать. Накосячить мог где угодно.
@NRodriges4 жыл бұрын
Graphical Design уже починил просто все переписав с начала
@семёнНенастоящий-п9я3 жыл бұрын
у меня не видит клавишу Space
@zellan59145 жыл бұрын
Красава!
@moondrey3 жыл бұрын
У меня ничего не работает, почему?
@fourx89704 жыл бұрын
Что делать? Я написал код прыжка, и при старте он улетает вверх.Я при этом даже не нажимал ничего.Подскажите пожалуйста
@graphicaldesign27764 жыл бұрын
Исправлять ошибку. Видимо проблема с подбрасыванием персонажа.
@yuhhin4 жыл бұрын
@@graphicaldesign2776 у меня такая же проблема, ставлю JumpForce на 5(или вообще любое число) и начинает улетать в небо, соответственно ни какая кнопка не помогает. Может подскажите где код с подбрасыванием персонажа?
@слава-морозов5 жыл бұрын
Интересно, просто и информативно! 😁
@sergeevich.035 жыл бұрын
Отличный видеоурок, спасибо! Лично я делаю игру под андроид, с сенсорными кнопками. У тебя под ПК код выглядит так: if (Input.GetKeyDown(KeyCode.Space) && extraJumps > 0) { RigBud.velocity = Vector2.up * jumpheight; extraJumps--; } else if (Input.GetKeyDown(KeyCode.Space) && extraJumps == 0 && isGrounded == true) { } А я под андроид переделал вот так: if (jump && extraJumps > 0) { RigBud.velocity = Vector2.up * jumpheight; extraJumps--; jump = false; } else if (jump && extraJumps == 0 && isGrounded == true) { } Когда нажимаю свыше двух раз на прыжок, то персонаж в небе прыгает дважды, а после приземления на землю ещё раз подпрыгивает и останавливается, в чём может быть причина? Спасибо!
@Naskwi5 жыл бұрын
Есть проблема мне пишет что jumpForse нету в текущем контексте. Что делать?
@izmirdj89284 жыл бұрын
потому что jumpForce
@user-leshij_1566 жыл бұрын
У Вас есть уроки , в которых описано как сделать мобильное управление?
@graphicaldesign27766 жыл бұрын
Не, пока еще такого контента к сожалению нет
@shirnick4 жыл бұрын
@@graphicaldesign2776 будем ждать
@drakoronus4 жыл бұрын
Наверное, никто не ответит, но всё равно опишу здесь свою проблему. Всё получилось вроде, только не возобновляется количество доступных прыжков. Инструкции следовал на 100%, код идеально совпадает, я проверял. В чём может быть дело?
@drakoronus4 жыл бұрын
Я понял в чём ошибка. Просто не поместил нужные объекты в whatisground
@graphicaldesign27764 жыл бұрын
@@drakoronus Отлично)
@channelofmaks95054 жыл бұрын
Огромное спасибо за видио, и за наводку по поводу ошибок, ваши видио мне ни раз уже помогают