2D прыжок / двойной прыжок для платформера - Unity легко

  Рет қаралды 71,229

Graphical Design

Graphical Design

Күн бұрын

Пікірлер: 504
@ГенералФанта-Гиро
@ГенералФанта-Гиро 4 жыл бұрын
Какой же автор ты молодец! У меня стало все получаться, когда я поняла, что нужно выполнять твои уроки последовательно - от первого ко второму и так далее, так будет проще
@uragan_27
@uragan_27 6 жыл бұрын
Смотрел ваши уроки по 3D моделированию, и теперь дошёл до игровых движков, спасибо вам за ваши уроки!
@GGamess
@GGamess 2 жыл бұрын
и к чему пришли?
@uragan_27
@uragan_27 2 жыл бұрын
@@GGamess моделю )
@tima3dmax
@tima3dmax 6 жыл бұрын
спасибо за ваши уроки. всё доступно и понятно. начал с вашего курса 3дмакса. уже подхожу к концу и когда-нибудь доберусь и до этого урока :) поражают ваши познания в программировании и моделировании и стиль вашего изложения! всё очень круто, спасибо!
@channelofmaks9505
@channelofmaks9505 4 жыл бұрын
у меня нет в отделе 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; } }
@tixonochek
@tixonochek 4 жыл бұрын
@@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; } }
@TochkaAlla
@TochkaAlla 2 ай бұрын
Спасибо за уроки, самый удачно обучающий курс уроков, именно обучающий , а не транслирующий...Подписка+ лайки...
@antoniobohachuk573
@antoniobohachuk573 5 жыл бұрын
Спасибо тебе бро!) Я умел делать прыжки, но только так выходило, что перс мог прыгать бесконечно много, но ничё теперь он не такой наглый))
@channelofmaks9505
@channelofmaks9505 4 жыл бұрын
у меня нет в отделе 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; } }
@kelni
@kelni 4 жыл бұрын
@@channelofmaks9505 public LeyerMask whatIsGround; isGrounded = Phisics2D.OverlapCircle(groundCheck.position, checkRadius, whatIsGround); тут и тут неправильно написал слова
@channelofmaks9505
@channelofmaks9505 4 жыл бұрын
@@kelni спс
@lemon2617
@lemon2617 4 жыл бұрын
Спасибо
@cubicworld01
@cubicworld01 2 жыл бұрын
Как бы я жил без вас
@Жмых-х1к
@Жмых-х1к 5 жыл бұрын
Спасибо большое за видео урок. Я три дня по пару часов мучался,чтобы он прыгал опред количество раз,но по видео androidhelpera у меня получалось или бесконечное количество раз или вообще как столб прибит к земле,но с твоим видосом я наконец то смог заставить мой кубик прыгать,а не летать. Еще раз ОГРОМНОЕ спасибо, удачи по жизни.
@mrashees6630
@mrashees6630 2 жыл бұрын
Бро, спасибо за видос, я изломал всю голову как совместить проверку земли, количество прыжков и нажатие на кнопку. Я не знаю что я делал бы без твоего видоса.
@cubicworld01
@cubicworld01 2 жыл бұрын
Интересный факт: Maxter учился создавать игры у него
@paustaev
@paustaev 4 жыл бұрын
Спасибо тебе, всё очень грамотно объясняешь, при этом не растягивая видео на час. Очень сильно помогли твои видосы)
@appleuser9130
@appleuser9130 4 жыл бұрын
Реально спасибо тебе больше,очень помог с этим. Сейчас задали проектную работу сделать(игру) и не знал как код написать. Благодаря тебе больше узнал! Весьма благодарен,пошёл дальше смотреть твои видео! Лайк == подписка. Удачи тебе в будущих проектах
@джастдолбоёбина
@джастдолбоёбина 3 жыл бұрын
СПАСИБО ПРОСТО ОГРОМНОЕ СПАСИБО Это единственное видео, которое мне помогло сделать прыжок, я вам бесконечно благодарна, словами не передать насколько.
@VepsianGameDesigner
@VepsianGameDesigner 4 жыл бұрын
Наконец-то нашел адекватного учителя, излагающего четко и последовательно свою мысль. Огромная благодарность!
@ВадимУткин-у5е
@ВадимУткин-у5е 6 жыл бұрын
Спасибо огромное. Очень долго искал тутор по тому, как сделать что б персонаж бесконечно не прыгал в воздухе. Ваш тутор очень помог c:
@terrarisCheese
@terrarisCheese 2 жыл бұрын
Помогите пожалуйста сделать ограничение прыжков с Tilemap. Я не понимаю как надо делать что бы все работало. Потому что если поставить Tilemap слой нужный то персонаж все равно прыгает везде где хочет.
@ellieearth3975
@ellieearth3975 5 жыл бұрын
Спасибо автору канала! Отличная подача информации.
@ИльяИванов-й8о2э
@ИльяИванов-й8о2э 4 жыл бұрын
Крассаучег! Продолжай в том же духе!) от русскоязычных лучшие уроки!)
@damirgaleev4059
@damirgaleev4059 4 жыл бұрын
БРО СПАСИБО ТЕБЕ БОЛЬШОЕ ТЫ ТАК МНЕ СИЛЬНО ПОМОГ!!!!!
@КиллограмКартошки
@КиллограмКартошки 4 жыл бұрын
Огромное тебе спасибо! Я уже перепробовал несколько вариантов, и только твой сработал! Просто и понятно! Спасибо
@mezeus4614
@mezeus4614 5 жыл бұрын
Крутой урок. Всё оч интересно и доступным языком рассказано для нубов :)
@ДанилИванов-я2я
@ДанилИванов-я2я 5 жыл бұрын
Ты просто лучший,очень сильно помог,лайк однозначно
@flexnise6572
@flexnise6572 4 жыл бұрын
Незнаю почему, смотрю уже 12 урок и не получается сделать прыжок(((
@FXUNDPLXGG
@FXUNDPLXGG 4 жыл бұрын
Там нет ничего сложного
@flexnise6572
@flexnise6572 4 жыл бұрын
@@FXUNDPLXGG Давно задавался этим вопросом, я уже давно все сам решил)
@keyk7994
@keyk7994 4 жыл бұрын
@@flexnise6572 если получилось, не мог бы скинуть скрипт для прыжка?)
@flexnise6572
@flexnise6572 4 жыл бұрын
@@keyk7994 Сори, но не могу( делал 4 месяца назад, а проект уже давно удалил, вместе со скриптами
@unity3dsimplesolutions309
@unity3dsimplesolutions309 4 жыл бұрын
@@flexnise6572 зря
@Fyrrlasho
@Fyrrlasho 3 жыл бұрын
Что делать если персонаж не видит ground? Добивил все в слои и просто не прыгает
@qwendamned69
@qwendamned69 4 жыл бұрын
Спасибо!!! Долго не понимал как поворачивать игрока в сторону ходьбы, ТЫ ТОП!!!
@zellan5914
@zellan5914 5 жыл бұрын
Приятная картинка!)
@СергейНикитин-щ7ю
@СергейНикитин-щ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; } }
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
В скрипте вроде ошибок нет. Надо искать проблему не здесь.
@СергейНикитин-щ7ю
@СергейНикитин-щ7ю 4 жыл бұрын
@@graphicaldesign2776 Но это действие зависит только от скрипта, что еще может влиять на это ?
@СергейНикитин-щ7ю
@СергейНикитин-щ7ю 4 жыл бұрын
@@graphicaldesign2776 Извиняюсь возможно выложил слишком длинный вопрос( я про код).Укоротил его.
@stevemonalola5395
@stevemonalola5395 4 жыл бұрын
Попробуй заменить метод 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); }
@forgestudio6576
@forgestudio6576 4 жыл бұрын
Привет! У меня небольшой вопрос.У меня есть летающая платформа в игре на обычных стенах я просто изменял Слой но как сделать с платформой если я уберу с них слой то игрок не сможет отпрыгнуть от края, что делать? Пытался использовать OnDrawGizmosSelected, но почему то круг при старте переносится в середину игрока, как его перенести обратно к ногам я не знаю да и не думаю что это поможет.Что делать?!
@artvideos5309
@artvideos5309 4 жыл бұрын
Автор красаучег! спасибо большое)
@dzh1999
@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; } }
@MrHoyshchik
@MrHoyshchik 4 ай бұрын
где extrajump- напиши два минуса
@Rashpak
@Rashpak 4 жыл бұрын
Благодарю за очень очень полезный урок!!! Я начинающий совсем, всё повторил со своими оригинальными спрайтами, получилось отменно! Поклонидзе до пупа!
@бебранюх-и3р
@бебранюх-и3р 4 жыл бұрын
Спасибо тебе большое, очень сильно помог. Все понятно объяснил, ничего лишнего.
@3reich1212
@3reich1212 3 жыл бұрын
Пжжж если есть такое видео то скажи его название, как сделать чтобы если игрок соприкасается с шипами или в него стреляет вражеский объект, то он не моментально снимал ему всё хп а была задержка между нанесением урона
@СергейОбразцов-ъ8ф
@СергейОбразцов-ъ8ф Жыл бұрын
Ты лучший! Спасибо
@tablet1ch
@tablet1ch 4 жыл бұрын
у меня возникла проблема, персонаж при движении не отзеркаливается. в чём проблема?
@ddrgs60
@ddrgs60 3 жыл бұрын
этот код уже старый и не работает, проще говоря говнокод, ищи другой способ.
@tablet1ch
@tablet1ch 3 жыл бұрын
@@ddrgs60 ок, спс
@igorkhmelevskyi8060
@igorkhmelevskyi8060 4 жыл бұрын
Очень понятный и годный ролик, спасибо!
@retby8175
@retby8175 3 жыл бұрын
8:28 а что делать если нету ground check???
@plusplus2383
@plusplus2383 3 жыл бұрын
У меня при изменении Scaler с 1 на -1 также меняется Position на отрицательное значение, из-за этого персонажа перемещает в противоположную сторону экрана, кто может помочь?
@zuxccc
@zuxccc 4 жыл бұрын
Мне конечно Вряд-ли ответят но что мне делать? Мне выдаётся ошибка CS0117 Physics2d does not contain a definition for OverLapCircle
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
Тут же написано, что не существует Physics2d Потому что есть Physics2D
@zuxccc
@zuxccc 4 жыл бұрын
@@graphicaldesign2776 ну у меня так и написано, просто я с телефона забыл в d больше сделать, но в скрипте все равно ошибка
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
@@zuxccc Грустно. Нужно смотреть сам скрипт. Не научился еще ванговать.
@zuxccc
@zuxccc 4 жыл бұрын
@@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 '
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
@@zuxccc Вполне ожидаемо, потому что как разобраться с "чужим" проектом, не видя этот проект.
@LonelyNull
@LonelyNull 3 жыл бұрын
Всё полностью рабочее!!! Если у кого то ошибка смотрите внимательнее видео!!!
@ashkramer9670
@ashkramer9670 3 жыл бұрын
Автор, подскажите пожалуйста, вот вы делаете передвижение на статику +-1. А как его сделать более инертным, что бы было ускорение и торможение.
@Uzakov84
@Uzakov84 4 жыл бұрын
Спасибо все доходчиво и понятно!!!!
@yanchikteam1585
@yanchikteam1585 3 жыл бұрын
а что делать если я когда вожу Rigidbody2D у меня не становиться шрифт зельоным цветом? это н ормально?
@yanchikteam1585
@yanchikteam1585 3 жыл бұрын
или так должно быть?
@Котдобрый-р4д
@Котдобрый-р4д 4 жыл бұрын
using System.Collections; using System.Collections.Generic; using UnityEngine; public class hero : MonoBehaviour { public bool Grounded = false; public Transform GroundCheck; public float GroundRadius = 0.3f; public LayerMask wtfIsGround; Rigidbody2D rb; Animator anim; private bool facingRight = true; void Start() { rb = GetComponent (); anim = GetComponent (); } void Update() { if(Input.GetKeyDown(KeyCode.Space) && Grounded) { pipirka (); Grounded = Physics2D.OverlapCircle(GroundCheck.position, GroundRadius, wtfIsGround); } if(Input.GetAxis("Horisontal") == 0) { anim.SetInteger ("Lis", 1); } else { Flip (); anim.SetInteger ("Lis", 2); } } void Flip(){ if (Input.GetAxis ("Horizontal") < 0) transform.localRotation = Quaternion.Euler (0, 0, 0); if (Input.GetAxis ("Horizontal") > 0) transform.localRotation = Quaternion.Euler (0, 180, 0); facingRight = !facingRight; Vector3 Scaler = transform. localScale; Scaler.x *= -1; transform.localScale = Scaler; } void FixedUpdate(){ rb.velocity = new Vector2 (Input.GetAxis ("Horizontal") * 8f, rb.velocity.y); } void pipirka(){ rb.AddForce (transform.up * 20f, ForceMode2D.Impulse); if (facingRight == false && moveInput > 0) { Flip(); } else if (facingRight == true && moveInput < 0) { Flip(); } }
@stroyMelldom
@stroyMelldom 2 жыл бұрын
спасибо!
@thewizard2024
@thewizard2024 4 жыл бұрын
Не понимаю почему такой офигенный канал имеет столько подписчиков?😟 Спасибо тебе большое за то, что делаешь такие видеоуроки 👍👍👍 Благодаря им мой персонаж теперь может двигаться😂 но я делал все как на видео, но он не прыгает, только движется на право и налево. Не подскажешь пожалуйста как это исправить?
@Malso228
@Malso228 3 жыл бұрын
Привет, я зделал платформу через которую я могу запрыгнуть с низу но я не могу сам прыгать на этой платформе, не подскажешь как это исправить ?
@GreedGylg
@GreedGylg 2 жыл бұрын
А какая разница между FixedUpdate() и Update()?
@kain4400
@kain4400 2 жыл бұрын
FixedUpdate() используется для физики. Так лучше делать для логики игры.
@Гыгы
@Гыгы Жыл бұрын
Update зависит от производительности устройства игрока. FixedUpdate не зависит. С ним легче работать, если тебе нужно прописать что-то, связанное с действием по времени, чтобы на всех устройствах с разной мощностью работало одинаково.
@MalenkayaPlomba
@MalenkayaPlomba 3 жыл бұрын
Блин, ребят, объясните пожалуйста кому не впадлу, зачем нам нужно условие на 11:24? Минут 15 сижу и не могу понять что оно проверяет... То есть, когда у нас заканчиваются дополнительные прыжки (первый if пропускается, т.к. extraJumps становится меньше 1) мы заходим в else и проверяем: если мы нажимаем стрелку вверх и количество дополнительных прыжков равно 0 и мы на земле, то опять прыгаем. Зачем? То есть мы находимся на земле, у нас закончились прыжки, но они же опять добавятся в следующем вызове Update(), и зачем нам сейчас прыгать? Я туплю, ноо... объясните пожалуйста.
@romulluss
@romulluss 4 жыл бұрын
Можете помочь, я прописываю всё точно так но перс не прыгает а если прописать в Extra Jumps Value значение прыгает столько же. (
@СоюзГеймДэв
@СоюзГеймДэв 4 жыл бұрын
Такая же фигня. Число прыжков не ограничено...
@Vlad2Ray
@Vlad2Ray 3 жыл бұрын
скорее всего у тебя платформа не на слое Ground, или граунд чек на находиться в персонаже
@ddrgs60
@ddrgs60 3 жыл бұрын
@@Vlad2Ray код уже устарел , искать только другой.
@ЯДобрыЙ-п8д
@ЯДобрыЙ-п8д 4 жыл бұрын
самые лучшие рус. уроки) англ очень сложно смотреть, так чтобы и субтитры читать и успевать кодить, а не ставить на паузу каждые 5 сек) спасибо тебе, с меня лайк и подписка
@meha-engineer
@meha-engineer 5 жыл бұрын
Спасибо за объяснение
@skovorodka1867
@skovorodka1867 4 жыл бұрын
Можешь сказать пожалуйста какая у тебя версия visual studio? Я скачал 2019 с офф сайта, а она какая-то странная. И если не сложно ещё как ты сделал чёрным фон.
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
Работаю на официальной 2019.
@stevemonalola5395
@stevemonalola5395 4 жыл бұрын
Если ты про подсказки, то нужно зайти Edit -> Preferences - > External Tools -> Externel Script Editor (это нужно делать в юнити) потом перезапустить код (появятся в течение минуты после запуск кода). А что-бы зделать тёмную тему нужно зайти в Средаства -> Параметры -> Окружение -> Общие -> Цветовая тема.
@skovorodka1867
@skovorodka1867 4 жыл бұрын
@@stevemonalola5395 спасибо, но оказывается системный visual studio, который скачивается вместе с юнити у меня не запускался потому что я не выбрал его как редактор, поэтому скачал новый (херовый). И ещё раз спасибо, про темную тему я не знал, выглядит салидно:) .
@Triplevex08
@Triplevex08 4 жыл бұрын
Помогите у меня ошибка Assets\Scripts\Contrl.cs(27,26): error CS0117: 'Physics2D' does not contain a definition for 'OverLapCircle' . пожалуйста подскажите .
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
Чем помочь то и что подсказать?
@Triplevex08
@Triplevex08 4 жыл бұрын
@@graphicaldesign2776 у меня эта ошибка как её можно исправить , пересматривал много раз ваше видео и делал по нему .
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
А черт его знает. По строке ошибке ничего не известно.
@Triplevex08
@Triplevex08 4 жыл бұрын
@@graphicaldesign2776 кажется нужно было написать OverlapCircle а не OverLapCircle . Но это не точно)
@aj4x600
@aj4x600 4 жыл бұрын
интересно) а как эту систему на кнопки под андроид закинуть?
@___WaVe___
@___WaVe___ 3 жыл бұрын
Как в 3d сделать чтоб персонаж не цеплялся за обьекты в прыжке?
@mark2st160
@mark2st160 2 жыл бұрын
У меня ужасный интернет, и не видно текста , можете пожалуйста дать готовый код?Очень буду благодарен!))
@RussianMonty
@RussianMonty 4 жыл бұрын
Здравствуйте, отличные ролики ! Назрел вопрос, private и public , это модификаторы доступа. Где-то я читал , что если не ставить модификатор то он автоматически private, тогда зачем вы вручную ставите?) ( "private float moveInput", "private void Start", и т.п.)
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
Чтоб зритель это видел.
@МоиРаботы-ю3ж
@МоиРаботы-ю3ж 4 жыл бұрын
Как сделать так что бы персонажа не крутило как у вас в конце видео? 12:54
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
В Rigidbody зафризить вращение по Z
@kirillvpgames4932
@kirillvpgames4932 3 жыл бұрын
объекта physics material 2d не существует. где его найти в ассетах и create у меня только physics material
@kitgunmi9631
@kitgunmi9631 3 жыл бұрын
Create>2D>physics material 2d
@kirillvpgames4932
@kirillvpgames4932 3 жыл бұрын
там его нет, это баг, он есть во всех версиях до версий 2019 года.
@Sb5-03
@Sb5-03 4 жыл бұрын
Классные видео, продолжай снимать!
@kitkyte7126
@kitkyte7126 5 жыл бұрын
Привет.Помоги пожайлуста у меня проблема,хотя я написал всё идеально!!!У меня кароч когда я запускаю игру он прыгает определенное кол-во раз а потом хоть пробел прожми стоит как вкопаный почему??
@badler6145
@badler6145 5 жыл бұрын
чел у меня такая же проблема капец
@badler6145
@badler6145 5 жыл бұрын
не пойму че делать мне
@kitkyte7126
@kitkyte7126 5 жыл бұрын
@@badler6145 кинь скрипт я посмотрю и скажу.
@kitkyte7126
@kitkyte7126 5 жыл бұрын
И я кста давно все исправил.
@zuxccc
@zuxccc 4 жыл бұрын
А ты точно на платформе кказал слой ground?
@shirnick
@shirnick 4 жыл бұрын
у меня ошибку выдаёт 'Input' does not contain a definition for 'GetCeyDown', что делать!
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
Написать правильно... Не существует GetCeyDown, существует GetKeyDown
@dimitriilldman
@dimitriilldman 3 жыл бұрын
О, невнимательность: у меня было GetkeyDown
@DmitrySufrai
@DmitrySufrai 5 жыл бұрын
У меня код идентичный, но игрок разгоняется слишком долго до максимальной скорости, с использованием GetAxisRaw все происхожит слишком резко, при использовании не скорости, а просто изменении позиции игрок при столкновении со стеной начинает "пытаться" в нее входить и его начинает дергать. С материалом тоже не все ясно, поставил два коллайдера, на тело и ноги, на теле материал без трения, чтобы он не цеплялся за стены, а на ногах трение 3, чтобы он тормозил быстрее, чем ускорялся, пытался через Linear Drag, но от него страдает прыжок, при прыжке на другую платформу, нижний коллайдер задевает платформу и из-за материала остается там. Вопрос - как это исправить? Заранее извини за беспокойство и спасибо
@vianodex3559
@vianodex3559 4 жыл бұрын
А что делать если в риджид боди нет материала? Только в бокс коллайдере
@tronka1222
@tronka1222 4 жыл бұрын
Я всё написал , но void update объявлен но не используется , и через это видимо у меня и не прыгает , как это решить?)))
@merck8743
@merck8743 4 жыл бұрын
а есть такой же урок только с анимацией?
@Дмитрий-о7э1б
@Дмитрий-о7э1б 5 жыл бұрын
Почему то иногда после прыжка проваливается сквозь платформу? Что посоветуете?
@graphicaldesign2776
@graphicaldesign2776 5 жыл бұрын
Сделать у платформы boxcolider чуть побольше
@dembith6465
@dembith6465 2 жыл бұрын
а почему у меня всегда Is Grounded = true
@bosbogdan
@bosbogdan 5 жыл бұрын
Топ урок
@Темик-Развлечения
@Темик-Развлечения 4 жыл бұрын
Подскажите пожалуйста. У меня jump не работает, а в функции ExtraJumpValue я могу указать сколько всего прыжков может совершить герой, как решить проблему подскажите пожалуйста
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
Как именно не работает? Что пишет консоль? Как проверял работу проекта?
@Темик-Развлечения
@Темик-Развлечения 4 жыл бұрын
@@graphicaldesign2776, нет, все работает просто если я установлю jump 10, a ExtraJumpValue 0, то он не будет прыгать. Примерный вид Speed 10 Jump 10 ...... .... ExtraJumpValue 0 Он не прыгает,но если я напишу Speed 10 Jump 10 .... ..... ExtraJumpValue 1 То персонаж прыгает 1 раз
@badler6145
@badler6145 5 жыл бұрын
что делать у меня человечек улетает
@graphicaldesign2776
@graphicaldesign2776 5 жыл бұрын
главное, не грустить
@badler6145
@badler6145 5 жыл бұрын
а все исправил
@badler6145
@badler6145 5 жыл бұрын
просто когда вы так быстро говорите очень трудно успеть написать уследить и понять конечно я все видео смотрел на скорости 0.5 а так очень познавательное видео получилось и обьясняете сразу что к чему
@yuhhin
@yuhhin 4 жыл бұрын
@@badler6145 а как исправил?
@ДмитрийКирюшкин-п1е
@ДмитрийКирюшкин-п1е 2 жыл бұрын
Здравствуйте. Есть один вопрос, а как сделать движение персонажа в одну сторону бесконечно ?
@rezofds3395
@rezofds3395 2 жыл бұрын
в void update писать transform.Translate(0,0,0); - где нули подставляете значение , конечно ответ через 7 месяцев по идеи не нужен , но всё же
@enot35
@enot35 5 жыл бұрын
У меня во время первого прыжка он отнимает единицу от extraJumps, не успев оторваться от земли (как я думаю) тут же прибавляет единицу к extraJumps, в итоге он прыгает два раза в воздухе. Кто нибудь знает как это пофиксить?
@graphicaldesign2776
@graphicaldesign2776 5 жыл бұрын
значит какая-то ошибка в скрипте
@gamespace9164
@gamespace9164 4 жыл бұрын
В чем проблема? У ьуня ошибка компиляции кога я сую этот скрипт в перса скрипт таков 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; } }
@ztolik77
@ztolik77 2 жыл бұрын
Бро, помоги пожалуйста у меня почему то персонаж имеет бесконечные прыжки вот код: 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; } } }
@onlymymint
@onlymymint 4 жыл бұрын
Visual Studio выдает ошибку мол, FindPlayer не известен в данном контексте и тоже самое с playerisLeft как это чиниться?
@shirnick
@shirnick 4 жыл бұрын
проверь название скрипта и название в скрипте
@Wen1x13
@Wen1x13 3 жыл бұрын
а как сделать так чтоб он не крутился?
@Wen1x13
@Wen1x13 3 жыл бұрын
а уже не надо) я в инете нашёл
@3D-shnik
@3D-shnik 4 жыл бұрын
if(facingRight == false && moveInput > 0) { Flip(); }else(facingRight == true && moveInput < 0) { Flip(); } почему у меня просит поставить в конце ";" в - else(facingRight == true && moveInput < 0)
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
по этому куску непонятно
@3D-shnik
@3D-shnik 4 жыл бұрын
@@graphicaldesign2776 я уже разобрался, но все равно спасибо
@channelofmaks9505
@channelofmaks9505 4 жыл бұрын
у меня нет в отделе 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; } }
@channelofmaks9505
@channelofmaks9505 4 жыл бұрын
кто помогите
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
Так при чем тут скрипт... Слой надо создать Ground.
@channelofmaks9505
@channelofmaks9505 4 жыл бұрын
@@graphicaldesign2776 Спасибо
@channelofmaks9505
@channelofmaks9505 4 жыл бұрын
попробую
@channelofmaks9505
@channelofmaks9505 4 жыл бұрын
@@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; } } перепровирял три четыри раза не смог найти ошибки, или я просто невнимателен:(
@bonickd9095
@bonickd9095 5 жыл бұрын
Подскажите что уже только не пробовал. Суть в том что у персонажа бесконечные прыжки. Код идентичен (проверял многократно) всё вроде по видео сделал. Может есть варианты в чём может быть проблема!?
@graphicaldesign2776
@graphicaldesign2776 5 жыл бұрын
так тут же не только код важен Надо чтоб земля была на слое ground Чтоб groundcheck был внизу персонажа чтоб радиус был достаточный для считывания информации
@bonickd9095
@bonickd9095 5 жыл бұрын
@@graphicaldesign2776 Я понимаю я же говорю что всё сделал по видео но уже битые 2 часа не могу осознать проблему
@graphicaldesign2776
@graphicaldesign2776 5 жыл бұрын
грустно
@bonickd9095
@bonickd9095 5 жыл бұрын
@@graphicaldesign2776 очень
@bonickd9095
@bonickd9095 5 жыл бұрын
@@graphicaldesign2776 разве что у меня не просто спрайт с колайдером а (Tilemap) с (TilemapColider 2d)
@GrandBreuil
@GrandBreuil 5 жыл бұрын
Огромное тебе спасибо. ООООЧЕНЬ ПОМОГ😊😊😊
@sender5361
@sender5361 2 жыл бұрын
всем привет делаю под копирку как на видео но мне дает ошибку в rb и moveInput! я хз че делать бесит, все зделал также но визде ошибки
@sender5361
@sender5361 2 жыл бұрын
кароче я хер знает, но я снес полностью проект, создал новый залил заново все спрайты переписал скрипт и все заработало я не знаю в чем проблема была!
@ImkuliN
@ImkuliN 4 жыл бұрын
Помогитеееее пж, короче я всеее сделал как надо прям всё! А он во первых не падает ну типо где его ставишь там и остается в воздухе во вторых он не идет направо или налево а если я нажму вверх(прыжок) он просто взлетает наверх и летит без конца! помогиииииииииииите!
@shirnick
@shirnick 4 жыл бұрын
на нём есть Rigidbody2D?
@muiwols6709
@muiwols6709 4 жыл бұрын
1. как импортировать в юнити В принципе любую картинку? Я когда пытаюсь пихнуть она просто не пихается...
@tsukuri5932
@tsukuri5932 3 жыл бұрын
попробуй через кнопку импорт либо напрямую в асетах папку создай и туда уже
@maaaaaruch
@maaaaaruch 4 жыл бұрын
Assets\hero.cs(51,13): error CS0103: The name 'Flip' does not exist in the current context
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
Исправляйте.
@vitek8137
@vitek8137 4 жыл бұрын
Что делать если персонаж круглый и GroundCheck приклеплённый к нему тоже крутится?
@zuxccc
@zuxccc 4 жыл бұрын
на персонаже в rigidbody2d нажми на constrains и выбери пункт на Freeze Rotation. А если хочешь чтоб персонаж крутился это надо просто сделать анимацию и настроить
@vitek8137
@vitek8137 4 жыл бұрын
@@zuxccc Спасибо уже решил проблему.Прикрепил GroudCheck и персонажа к другому объекту не соединяя их и сделал так чтобы GroudCheck двигался за персонажем
@icuteenderyt
@icuteenderyt 5 жыл бұрын
Слушайте, а как добавить анимацию к кубу который прыгает?
@paranoazip
@paranoazip 5 жыл бұрын
На его канале уже есть тема по поводу анимации. Но там не куб а просто как сделать анимацию
@konstantinkrishtapov5488
@konstantinkrishtapov5488 4 жыл бұрын
Привет, можешь подсказать как в этом случае сделать так чтобы персонаж резко останавливался
@_lemb_
@_lemb_ 3 жыл бұрын
Спасибо , тебе хорошо объяснил я даже все понял!
@SetIn000
@SetIn000 5 жыл бұрын
После приземления счётчик прыжков не обнуляется.. Что делать?
@graphicaldesign2776
@graphicaldesign2776 5 жыл бұрын
Проверить код на ошибки
@SetIn000
@SetIn000 5 жыл бұрын
Проверил не получилось решил с помощью OnCollision2D Enter при наступлении на тег Ground выставлять isGround true
@graphicaldesign2776
@graphicaldesign2776 5 жыл бұрын
если сделать все как в видео, то все должно работать
@Dunai_Perjaslawsky
@Dunai_Perjaslawsky 5 жыл бұрын
@@graphicaldesign2776 и тем не менее не работает.
@graphicaldesign2776
@graphicaldesign2776 5 жыл бұрын
значит что-то делаете не так
@NRodriges
@NRodriges 4 жыл бұрын
Помогите пожалуйста. С помощью этого видео я хотел сделать ограничение в количестве прыжков у персонажа. Всё написал, включаю игру, прыгаю. Всё классно, но есть проблема, персонаж прыгает, а дальше отказывается. Что не так?
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
А мне как знать, что не так? Не видя проекта, нереально сказать. Накосячить мог где угодно.
@NRodriges
@NRodriges 4 жыл бұрын
Graphical Design уже починил просто все переписав с начала
@семёнНенастоящий-п9я
@семёнНенастоящий-п9я 3 жыл бұрын
у меня не видит клавишу Space
@zellan5914
@zellan5914 5 жыл бұрын
Красава!
@moondrey
@moondrey 3 жыл бұрын
У меня ничего не работает, почему?
@fourx8970
@fourx8970 4 жыл бұрын
Что делать? Я написал код прыжка, и при старте он улетает вверх.Я при этом даже не нажимал ничего.Подскажите пожалуйста
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
Исправлять ошибку. Видимо проблема с подбрасыванием персонажа.
@yuhhin
@yuhhin 4 жыл бұрын
@@graphicaldesign2776 у меня такая же проблема, ставлю JumpForce на 5(или вообще любое число) и начинает улетать в небо, соответственно ни какая кнопка не помогает. Может подскажите где код с подбрасыванием персонажа?
@слава-морозов
@слава-морозов 5 жыл бұрын
Интересно, просто и информативно! 😁
@sergeevich.03
@sergeevich.03 5 жыл бұрын
Отличный видеоурок, спасибо! Лично я делаю игру под андроид, с сенсорными кнопками. У тебя под ПК код выглядит так: 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) { } Когда нажимаю свыше двух раз на прыжок, то персонаж в небе прыгает дважды, а после приземления на землю ещё раз подпрыгивает и останавливается, в чём может быть причина? Спасибо!
@Naskwi
@Naskwi 5 жыл бұрын
Есть проблема мне пишет что jumpForse нету в текущем контексте. Что делать?
@izmirdj8928
@izmirdj8928 4 жыл бұрын
потому что jumpForce
@user-leshij_156
@user-leshij_156 6 жыл бұрын
У Вас есть уроки , в которых описано как сделать мобильное управление?
@graphicaldesign2776
@graphicaldesign2776 6 жыл бұрын
Не, пока еще такого контента к сожалению нет
@shirnick
@shirnick 4 жыл бұрын
@@graphicaldesign2776 будем ждать
@drakoronus
@drakoronus 4 жыл бұрын
Наверное, никто не ответит, но всё равно опишу здесь свою проблему. Всё получилось вроде, только не возобновляется количество доступных прыжков. Инструкции следовал на 100%, код идеально совпадает, я проверял. В чём может быть дело?
@drakoronus
@drakoronus 4 жыл бұрын
Я понял в чём ошибка. Просто не поместил нужные объекты в whatisground
@graphicaldesign2776
@graphicaldesign2776 4 жыл бұрын
@@drakoronus Отлично)
@channelofmaks9505
@channelofmaks9505 4 жыл бұрын
Огромное спасибо за видио, и за наводку по поводу ошибок, ваши видио мне ни раз уже помогают
2D свет в Unity - простой способ
3:44
Graphical Design
Рет қаралды 13 М.
ИИ врага "Страж" / AI Enemy - Unity легко
17:54
Graphical Design
Рет қаралды 49 М.
小丑女COCO的审判。#天使 #小丑 #超人不会飞
00:53
超人不会飞
Рет қаралды 16 МЛН
Леон киллер и Оля Полякова 😹
00:42
Канал Смеха
Рет қаралды 4,7 МЛН
крутой ПРЫЖОК в Unity за 7 МИНУТ. Создание персонажа (ч.4)
7:21
Яковлев Илья - IT и игры
Рет қаралды 8 М.
Прыжок в Юнити | Прыжок 2D Персонажа | Двойной Прыжок
6:07
Dev Hub Разработка Игр
Рет қаралды 9 М.
Преследующий враг в области видимости Construct 3
21:01
Александр Жадан
Рет қаралды 12 М.
Начальная кат сцена / Cut scene - Unity легко
14:22
Как подобрать/бросить предмет в Unity 2d
17:57