Я использую этот код, но, к сожалению, я получаю эту ошибку:Получение GameObject от RaycastHit
CS1061: Type
UnityEngine.RaycastHit' does not contain a definition for
gameObject' and no extension methodgameObject' of type
UnityEngine.RaycastHit' could be found (are you missing a using directive or an assembly reference?
public float Selected;
public GameObject[] handler;
public float[] prices;
public GameObject Tile;
private Money mon;
// Use this for initialization
void Start() {
mon = GameObject.Find ("Gamelogic").GetComponent<Money>();
}
// Update is called once per frame
void Update() {
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
if(Physics.Raycast (ray,out hit, 20))
{
if(hit.transform.tag == "tiles")
{
Tile = hit.gameObject;
}
else
{
Tile = null;
}
}
if(Input.GetMouseButtonDown(0) && Tile != null)
{
}
}
}
Сообщение об ошибке ясно: в строке 'Tile = hit.gameObject' тип объекта' hit' ('RaycastHit') не содержат поля, свойства или метода с именем 'gameObject'. Пожалуйста, проверьте документацию, чтобы просмотреть доступных публичных членов класса. – Mephy
Я проверил его, но я ничего не могу найти по этому поводу. – Frank6
Я думаю, вам нужно 'hit.transform.gameObject' вместо' hit.gameObject'. – FalconUA