GlandFalangus
@GlandFalangus

Почему объект проходит сквозь другие объекты, ведет непонятно?

Вместо того чтобы объект крутился вокруг своей оси на 360 сохраняя компонент Physics Material 2D(при этом кручение воспроизводится touch screen) он улетает вверх, проходит сквозь пол, вместо того чтобы крутиться вокруг своей оси.
5fe73a36eb11e937579737.png
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class SwipeRotate : MonoBehaviour
{
    public float speed;
    Vector2 pos;
    private void Start()
    {
        speed = 2;
    }
    private void Update()
    {

        if (Input.touchCount > 0)
        {
            Touch touch = Input.GetTouch(0);
            Vector2 posInScreen = touch.position;

            if (touch.phase == TouchPhase.Moved)
            {
                pos = (posInScreen);
            }
            float Xposition = pos.x;
            transform.rotation = Quaternion.Euler(0, 0, Xposition * speed);



        }
    }
}
  • Вопрос задан
  • 47 просмотров
Пригласить эксперта
Ответы на вопрос 1
DanceM
@DanceM Куратор тега Unity
Кто хочет -ищет способ, кто не хочет -ищет причину
Могу только угадывать, т.к. вам видней, что происходит, ваша сцена ведь. На будущее видео не помешает приложить.

  • может включена гравитация и колайдеры
  • может на вращение при этом огромное число приходит
  • вращение то не правильно реализовано, без учета физики. Надо Rigidbody крутить в FixedUpdate() а не transform
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
23 янв. 2021, в 18:06
5000 руб./за проект
23 янв. 2021, в 17:51
150000 руб./за проект