Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.99/103: Рейтинг темы: голосов - 103, средняя оценка - 4.99
0 / 0 / 0
Регистрация: 31.07.2017
Сообщений: 4

Как сделать плавный прыжок в 2d платформере?

31.07.2017, 21:45. Показов 19262. Ответов 10

Студворк — интернет-сервис помощи студентам
Я создал персонажа на основе этого урока и при прыжке он резко перемещается в верхнюю точку.
Использовался такой способ
C#
1
2
rb = GetComponent<Rigidbody2D>(); 
rb.AddForce (new Vector2(0f,JumpForce ));
и такой
C#
1
rb.AddForce(Vector2.up * JumpForce ,ForceMode2D.Impulse);
Также пытался с помощью velocity
C#
1
rb.velocity=new Vector2(0,JumpForce );
но при этом странно поднимается рывками, да и то только если покрутить колёсиком мыши в зоне инспектора.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
31.07.2017, 21:45
Ответы с готовыми решениями:

Как сделать плавный прыжок?
Как сделать плавный прыжок не используя RigitBody?Сейчас персонаж просто телепортируется вверх. using System.Collections; using...

Прыжок в 2d платформере
Помогите пожалуйста, реализовал движения спрайта по поверхности влево и вправо, а вот с прыжком проблема, я так понимаю не правильно...

Как сделать плавный прыжок?
Нужно,чтобы персонаж только поднимался и опускался. Я попробовал сделать так: if (key=VK_UP) then up.enabled:=true; Это если...

10
0 / 0 / 0
Регистрация: 31.07.2017
Сообщений: 4
03.08.2017, 17:54  [ТС]
Не знаю из-за чего, но у меня стал прыгать нормально

Добавлено через 22 часа 28 минут
Я понял из за чего это происходит! Кому интересно вот причина:
Это код, который находился в Update и отвечал за горизонтальное передвижение
C#
1
2
moveX = Input.GetAxis ("Horizontal");
rb.MovePosition (rb.position + Vector2.right * moveX * speed * Time.deltaTime);
Он выполнялся всегда, даже когда персонаж был в воздухе и из-за него он медленно опускался и резко подскакивал вверх. Теперь придётся искать другой способ контролировать его горизонтальное положение в воздухе.
0
 Аватар для Prog_maker
459 / 403 / 153
Регистрация: 23.01.2011
Сообщений: 1,054
05.08.2017, 03:53
Вы напишите весь код скрипта, тогда вам помогут. А так по отрывкам трудно понимать, что там происходит.
0
0 / 0 / 0
Регистрация: 31.07.2017
Сообщений: 4
05.08.2017, 13:12  [ТС]
Уже разобрался, не надо
0
0 / 0 / 0
Регистрация: 07.11.2017
Сообщений: 4
07.11.2017, 19:31
Можешь поделиться как пофиксил? Так же начинаю изучать юнити и столкнулся с такой же роблемой. Буду очень благодарен
0
0 / 0 / 0
Регистрация: 11.04.2020
Сообщений: 2
11.04.2020, 22:35
Я наконец то понял!!
Передвижения вправо и в лево нужно програмировать вот так:
rb.velocity = new Vector2(X*Horisontalspeed,rb.velocity.y) ;
И потом прыжки будут в норме!!!
Horisontalspeed - єто скорость, rb - єто Rigidbody2D
0
 Аватар для MrFelix
75 / 53 / 25
Регистрация: 08.03.2020
Сообщений: 243
11.04.2020, 22:55
Тебе потребовалось 3 года, чтобы это понять ?
3
0 / 0 / 0
Регистрация: 11.04.2020
Сообщений: 2
22.04.2020, 20:28
Нет 3 пива, молитва богу))
0
22.04.2020, 20:37

Не по теме:

Цитата Сообщение от _Serhij_ Посмотреть сообщение
молитва богу))
Это часто помогает)

0
55 / 3 / 0
Регистрация: 21.04.2020
Сообщений: 15
17.11.2020, 10:19
А что такое "X" в параметре вектора?
0
22 / 14 / 8
Регистрация: 10.05.2020
Сообщений: 184
17.11.2020, 11:41
xxxAgnosticKxxx, X это ввод игрока.
C#
1
X=Input.GetAxis("Horizontal");
Добавлено через 1 минуту
Если персонаж будет зеркально бегать, например нажимаешь в право а он бежит в лево, просто умнож результат на -1
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.11.2020, 11:41
Помогаю со студенческими работами здесь

Прыжок персонажа в 2D платформере
Здравствуйте, пишу 2D платформер на C#, про XNA и MonoGame знаю, интересует именно WinForms. В прошлой теме помогли с плавным перемещением,...

Плавный прыжок
uses GraphABC; uses Timers; var Player : array of Picture; var ForFon : array of Picture; var Tim : integer; var x, y : integer; ...

Как сделать смерть персонажа в 2D платформере?
В моём платформере есть отдельно канвас с панелью жизней. Всё работает хорошо, сердечки уменьшаются при попадании в персонажа снаряда, но...

Как сделать прыжок
Всем привет, как сделать плавный прыжок, чтобы персонаж плавно прыгал?)

Как сделать прыжок
Как сделать прыжок спрайта в python в модуле pygame. Заранее спасибо import pygame __author__ = &quot;rikki team&quot; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru