Unity WebPlayer для проблем сборки Android

Я новичок в Unity, поэтому хороший ответ будет неплохим. Я пытаюсь сделать ролик для игры в кости на платформе Android. Я следовал этому очень хорошо составленному учебнику http://games.ucla.edu/resource/unity-1-beginner-tutorial-dice-making-pt-1/ (есть и вторая часть)

Проблема в том, что это было сделано для веб-плеера. Если я пытаюсь создать его для Android, я получаю две конкретные ошибки.

У меня есть два простых сценария с одной ошибкой, связанной с каждым.

SideTrigger.js - ошибка: BCE0019: "currentValue" не является членом "UnityEngine.Component".

public var faceValue = 0;
function OnTriggerEnter( other : Collider ) {
    var dieGameObject = GameObject.Find("SixSidedDie");

    var dieValueComponent = dieGameObject.GetComponent("DieValue");
    dieValueComponent.currentValue = faceValue; //ERROR HERE
    Debug.Log("Die1: " + faceValue);
}

DieValue.js - Ошибка: BCE0019: "текст" не является членом "UnityEngine.Component".

public var currentValue = 0;

function Update () {
    var dieTextGameObject = GameObject.Find("DieText");
    var textMeshComponent = dieTextGameObject.GetComponent("TextMesh");
    textMeshComponent.text = currentValue.ToString(); //ERROR HERE
}

Я предполагаю, что это чисто синтаксическая проблема, но я не могу найти решение.

1 ответ

Решение

GetComponent использование строки не рекомендуется из соображений производительности, здесь это задокументировано.

Лучше использовать это:

var dieValueComponent : DieValue = dieGameObject.GetComponent(DieValue)

Или это:

var dieValueComponent : DieValue = dieGameObject.GetComponent.<DieValue>()

Посмотри, работает ли это.

Другие вопросы по тегам