Как связать кнопку GUI Texture к сценарию в Unity3d

? user3244633 @ | Original: StackOverFlow
---

Мне нужна помощь, чтобы сделать кнопку с графическим интерфейсом текстура, запустить скрипт на 3d объекта при его прикосновении в Unity3d для Android.

У меня есть кнопка с графическим интерфейсом вращения 3D модели на нажатия . Следующий (C #) сценарий, я получил работает Годится когдакнопка создается progrmaticaly :

using UnityEngine;
using System.Collections;

public class RotateButtonBheaviour : MonoBehaviour {

private bool mIsRotated = false;
private bool mMustRotate = false;
private GameObject Cube;

// Use this for initialization
void Start () {
    Cube = GameObject.Find ("MarkerObject");
}

// Update is called once per frame
void Update () {
    if (mMustRotate && !mIsRotated) {
        //Rotate all models 45 degrees around X
        if (Cube != null) {
            GameObject modelUnderChipsTrackable = Cube.transform.GetChild(0).gameObject;
            modelUnderChipsTrackable.transform.RotateAround(new Vector3(1,0,0), Mathf.PI/3);

        }
        mIsRotated = true;
        mMustRotate = false;
    }


public Texture btnTexture1;

void OnGUI() {
    if (!btnTexture1) {
        Debug.LogError("Please assign a texture on the inspector");
        return;
    }
    if (GUI.Button(new Rect(10, 10, 120, 30), btnTexture1))
        if (!mIsRotated) {
            mMustRotate = true;
        }

Я хочу вместо кнопки в коде, чтобы добавить мои пользовательские кнопки GUI Texture (названный OrbitBtn ), так и на ощупь, чтобы начать 3d модель вращающегося вокруг своей оси.

Пожалуйста, дайте мне несколько советов о том, как достичь этой функциональности. Спасибо всем заранее за ваши ответы .

---

Top 5 ответ

1Karthik @

Просто измените текстуру btnTexture1, или вы можете нажать и файлы изображений перетаскивания, чтобы ваши скрипты, так как вы заявили btnTexture1 как общественности.

Или, если вы хотите сделатьто же самое в JavaScript здесьобразец кода.

if(GUI.Button(Rect(Screen.width*.85,Screen.height*0,width,width),Resources.Load("pause") as Texture))
{

//Button press action
}

Таким образом, в этом примере кода, я загрузке изображения (пауза . *) На кнопке. Убедитесь, что у вас есть изображение внутри папки под названием "Ресурсы" в папке активов.