Unity Center Screen

Рейтинг: 0Ответов: 0Опубликовано: 16.06.2023

Работаю на макбуке air 2020 сделал скрипт райкаста из центра экрана, но точка находиться в левом верхем углу, пробовал находить центр через camera.scale и screen результат индентичен. Вот полный код (Рессурсов ноута для проверок было не жалко :) ):

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class RicastMenuOpen : MonoBehaviour
{
[SerializeField] GameObject laser;
private GameObject laserClone;
[SerializeField] Camera cameraPlayer;
[SerializeField] float distance = 5f;
private Vector2 centerScreen;
private Ray rayCamera;



private void Update() 
{
    centerScreen = new Vector3(Screen.height / 2, Screen.width / 2, 0);
    rayCamera = cameraPlayer.ScreenPointToRay(centerScreen);
    Debug.DrawRay(transform.position, transform.forward * distance);
    Physics.Raycast(rayCamera, out RaycastHit hitInfo, distance);
    Debug.Log(hitInfo.point);
    laserClone = Instantiate(laser, hitInfo.point, transform.rotation);
    Destroy(laserClone, 0.01f);



}


}

Ответы

Ответов пока нет.