Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/25: Рейтинг темы: голосов - 25, средняя оценка - 4.64
i'm no jedi
 Аватар для legaju
16 / 10 / 6
Регистрация: 24.02.2019
Сообщений: 161

2D Персонаж передвигается с фризами

11.04.2019, 14:17. Показов 5346. Ответов 6

Студворк — интернет-сервис помощи студентам
На персонаже висит коллайдер и RigidBody с выставленной нулевой гравитацией.
Кроме того, висит скрипт CharacterController, который прикреплю ниже.
Проблема в том, что персонаж, почему-то, передвигается с фризами. Очень дёргается при движении. Как это исправить? Чтобы сохранить при этом неизменную скорость, не зависящую от мощности компуктера.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
public class CharacterController : MonoBehaviour
{
    public bool canMove;
    public float horizontalSpeed;
    float speedY;
    float speedX;
    public float verticalSpeed;
    Rigidbody2D rb;
 
    void Start()
    {
        rb = GetComponent<Rigidbody2D> ();
    }
        
    void FixedUpdate()
    {
        if (!canMove) {
            return;
        }
 
        if (Input.GetKey (KeyCode.A)) {
            speedX = -horizontalSpeed;
        } 
        else if (Input.GetKey (KeyCode.D)) 
        {
            speedX = horizontalSpeed;
        }
        if (Input.GetKey (KeyCode.W)) {
            speedY = verticalSpeed;
        } 
        else if (Input.GetKey (KeyCode.S)) 
        {
            speedY = -verticalSpeed;
        }
 
        if (Input.GetKeyDown (KeyCode.Escape)) {
            Application.Quit();
 
        }
        transform.Translate (speedX, 0, 0);
        speedX = 0;
        transform.Translate (0, speedY, 0);
        speedY = 0;
    }
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.04.2019, 14:17
Ответы с готовыми решениями:

Проблемма с фризами
Доброго времени суток. Прошу помощи в решении следующей проблемы - часты фризы системы. При различных действиях система бывает...

Проблема с фризами в играх
Процессор:Intel Core I5 6500 3.20 Гц, забущен до 3.60 Материнская плата: Asus H110m-C Видеокарта:GTX 1060 3gb ОЗУ 16гб 2x8 Жесткий...

Почему Fallout 4 на ноутбуке идёт с фризами?
Собственно вопрос к знатокам. Сразу хочу сказать,что ответы типа ; - Да у тебя комп дерьмо - Купи пк,ноутбуки дерьмо и прочая...

6
250 / 186 / 68
Регистрация: 04.03.2019
Сообщений: 1,010
11.04.2019, 15:12
Цитата Сообщение от legaju Посмотреть сообщение
transform.Translate
если вы двигаете так то не нужно выполнять в FixedUpdate, достаточно в Update
но нужно будет добавить Time.deltaTime для одинковой скорости на всех компьютерах;

Цитата Сообщение от legaju Посмотреть сообщение
transform.Translate (speedX, 0, 0);
* * * * speedX = 0;
* * * * transform.Translate (0, speedY, 0);
* * * * speedY = 0;
почему смещаете не вектором? а просто изменением по оси х и оси у отдельно
C#
1
transform.Translate (speedX, speedY, 0);
Добавлено через 2 минуты
Цитата Сообщение от legaju Посмотреть сообщение
RigidBody с выставленной нулевой гравитацией.
поставьте кинематик режим RigidBody
0
i'm no jedi
 Аватар для legaju
16 / 10 / 6
Регистрация: 24.02.2019
Сообщений: 161
11.04.2019, 15:20  [ТС]
Нет, не помогло. Почему-то всё равно передвигается какими-то микро-телепортами... Как через Play, так и в собранном виде.
У меня, честно говоря, даже идей нет, с чем это может быть связано. Я ещё совсем зелёный в делах unity
Может, подскажете какой-нибудь проверенный скрипт? Авось, дело в том, что у меня кривой чем-то получился.
0
250 / 186 / 68
Регистрация: 04.03.2019
Сообщений: 1,010
11.04.2019, 16:10
Цитата Сообщение от legaju Посмотреть сообщение
Почему-то всё равно передвигается какими-то микро-телепортами
потому что изменение непосредственно transform и есть телепорт.
Цитата Сообщение от legaju Посмотреть сообщение
CharacterController
ну так двигайте через этот контроллер
а если вам нужна физика то двигайте через RigidBody
0
i'm no jedi
 Аватар для legaju
16 / 10 / 6
Регистрация: 24.02.2019
Сообщений: 161
11.04.2019, 16:32  [ТС]
Не понял.. А какие могут быть варианты кроме метода transform?
0
250 / 186 / 68
Регистрация: 04.03.2019
Сообщений: 1,010
11.04.2019, 16:49
RigidBody.velocity
RigidBody.addforce
1
i'm no jedi
 Аватар для legaju
16 / 10 / 6
Регистрация: 24.02.2019
Сообщений: 161
11.04.2019, 17:15  [ТС]
Спасибо за помощь, буду пробовать
Рано или поздно что-нибудь да получится)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.04.2019, 17:15
Помогаю со студенческими работами здесь

Во время сьемки очень сильно садится ФПС, из 100 падает до уровня 5 с фризами на пол секунды каждый кадр
Доброй ночи. Есть проблема. Делаю захват видео в играх на 1920х1080 с помощью Fraps. Во время сьемки очень сильно садится ФПС, из 100...

Не передвигается рисунок
господа вот программа , но не как не пойму , что не так ? #include &lt;windows.h&gt; /* Declare Windows procedure */ LRESULT CALLBACK...

Не передвигается меню на сайте
Добрый день! Я учусь верёстке и мне нужна ваша помощь. Пытаюсь сверстать меню и что-то не выходит... Нужно вот так: А получается...

Не передвигается npc(NavMesh)
Хочу написать ии с помощю NavMesh, посмотрел много уроков по этой теме, пробывал много примеров но постоянно выбрасывает ошибку на методе...

Не передвигается меню на сайте
Добрый день! Я учусь верёстке и мне нужна ваша помощь. Пытаюсь сверстать меню и что-то не выходит... Нужно вот так: А получается...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки 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
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru