Raycast ударил игровой объект в единстве
Я создал трехмерное главное меню в единстве, каждая кнопка - куб. Я позволил пользователю нажимать на кнопку при нажатии raycast, проблема в том, что я хочу изменить цвет куба, когда raycast находится на кубе, и преобразовать его обратно в исходный цвет, когда raycast выйдет из куба. Я использую C#, и я читал о "OnMouseEnter" и "OnMouseExit" - я не использую мышь, но использую игровой контроллер (Razer Hydra). Как я могу имитировать OnMouseEnter и OnMouseExit в raycast?
1 ответ
Решение
Из того, что я понимаю, вы хотите сделать лучевую трансляцию на кубе, изменить ее цвет и изменить его обратно, когда курсор или лучи не попадают в него, я бы предложил использовать эту логику без mouseEnter и mouseExit.
RaycastHit ударил;
void Update () {
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if (Physics.Raycast(ray, out hit)) {
if (hit.collider.tag == "cube"){
//Change color here
}
}else {
// Change back to prvious color.
}}