Я новичок в Unity. Так что просто для эксперимента я хочу создать канон, прикрепив прямоугольник к кругу, и когда нажата клавиша со стрелкой вверх, канон меняет угол стрельбы. Итак, у меня есть объект прямоугольника, который является подобъектом круга. И тогда я создал скрипт на C # для объекта круга.
![enter image description here](https://i.stack.imgur.com/pqBYs.png)
Вот коды, которые у меня есть:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerController : MonoBehaviour
{
private float rotation = 0f;
private float timeValue = 0.0f;
public GameObject wheele;
private float xMin = -1.0f, xMax = 1.0f;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
if (Input.GetKeyDown(KeyCode.UpArrow))
{
if (rotation >= -90)
transform.Rotate(new Vector3(0.0f, 0.0f, rotation));
rotation -= 2;
Mathf.Clamp(rotation, -90.0f, 0);
}
if(Input.GetKeyDown(KeyCode.DownArrow))
{
if (rotation >= -90)
transform.RotateAround(wheele.transform.position, Vector3.up,20);
rotation += 2;
Mathf.Clamp(rotation, -90.0f, 0);
}
}
}
Я пробовал оба преобразования. Метод поворота, но он вращается вокруг центра прямоугольника. Но нам нужно, чтобы прямоугольник вращался вместе с осью, центром круга.