Люблю решать проблемы(и чужие и свои),спрашиваю только в сложных случаях.Статьи по unity читаю.В основном пишу игры на C#.


Понимаю код(а как же без этого).


Моделирую в 3д.Хорошо разбираюсь в Blender.Немного занимаюсь 3д-скульптингом.
Контакты

Наибольший вклад в теги

Все теги (3)

Лучшие ответы пользователя

Все ответы (5)
  • Как в unity сделать плавный поворот дочернего объекта?

    StrannikY
    @StrannikY Автор вопроса
    Программирую на C#, часто загораюсь идеями,учусь.
    Спасибо Lapita12 за ответ:
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    
    public class BroomController : MonoBehaviour 
    {
        private GameObject broom;
        private bool InHand = true;
    
        
        void Start() 
        {
            broom = GameObject.Find("Broom");
            Cursor.visible = false;
        }
    
        
        void Update() 
        {
            GameObject parent = broom.transform.parent.gameObject;
            float targetAngle = 0f;
    
            if (Input.GetKey("q") || Input.GetKey("e")) 
            {
                if (Input.GetKey("q")) 
                {
                    targetAngle = 20f;
                }
    
                if (Input.GetKey("e")) 
                {
                    targetAngle = -20f;
                }
                
                Quaternion parentRotation = parent.transform.rotation;
                Quaternion targetRotation = Quaternion.Euler(0, 0, targetAngle);
                Quaternion broomTargetRotation = parentRotation * targetRotation;
                broom.transform.rotation = Quaternion.RotateTowards( broom.transform.rotation, broomTargetRotation, Time.deltaTime * 180f);
            }
        }
    }
    Ответ написан
    Комментировать