Unity3D - Mesh Collider в импортированной сетке блендера не работает - PullRequest
0 голосов
/ 16 мая 2018

Я пытаюсь применить скрипт, который меняет цвет материала, когда курсор находится над объектом. Вот сценарий:

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

public class ChangeColor : MonoBehaviour {

    public Color startColor;
    public Color mouseOverColor;
    bool mouseOver = false;

    void OnMouseEnter(){
        Debug.Log("START");
        mouseOver = true;
        GetComponent<Renderer>().material.SetColor("_Color",mouseOverColor);
        Debug.Log("TESTE");
    }

    void OnMouseExit(){
        mouseOver = false;
        GetComponent<Renderer>().material.SetColor("_Color", startColor);
    }

}

Объект представляет собой простой треугольник:

enter image description here

Сценарий работает только тогда, когда у объекта есть Sphere Collider (что я ищу, так это использование Mesh Collider).

Может кто-нибудь помочь мне понять, как использовать его с Mesh Collider?

Спасибо

1 Ответ

0 голосов
/ 16 мая 2018

Согласно документации Unity, функция OnMouseEnter() работает только тогда, когда ваш коллайдер помечен как триггер.

Попробуйте активировать это свойство и проверьте документацию тоже.

https://docs.unity3d.com/ScriptReference/MonoBehaviour.OnMouseEnter.html

...