Создавать маленькие кубики на плоскости? - PullRequest
0 голосов
/ 30 апреля 2019

У меня есть скрипт, где с помощью мыши и перетаскивания, он генерирует маленькие кубики в виде сцены. Однако у меня есть плоскость, и я хочу сгенерировать эти кубы точно поверх этой плоскости. Есть ли способ, которым я могу достичь этого?

public class SmallCubes : MonoBehaviour
{
    Ray ray;
    RaycastHit hit;
    public GameObject prefab;

    // Use this for initialization
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {
        ray = Camera.main.ScreenPointToRay(Input.mousePosition);

        if (Physics.Raycast(ray, out hit))
        {
            if (Input.GetMouseButton(0))
            {
                GameObject obj = Instantiate(prefab, new Vector3(hit.point.x, hit.point.y, hit.point.z), Quaternion.identity) as GameObject;
            }
        }
    }
}

1 Ответ

1 голос
/ 30 апреля 2019

Просто используйте y-позицию самолета для создания экземпляра вместо точки попадания.

GameObject plane = GameObject.Find("plane");

GameObject obj = Instantiate(prefab, new Vector3(hit.point.x, plane.transform.position.y + cubesize/2, hit.point.z), Quaternion.identity) as GameObject;

Хотя я с другими комментаторами, похоже, что этот код будет делать именно то, что вы уже хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...