1

ランタイムゲームオブジェクトの下にランタイムボタンを作成する方法はありますか?UIToolkitからすべてのコンポーネント/マテリアルを継承したランタイムゲームオブジェクトを実行できました。

ここに私のコードがあります:

    public class loadImage : MonoBehaviour
{

    public UIToolkit duplicate_kit;
    public Material material;
    public UIButton b1, b2;
    public MeshFilter meshFilter;
    public MeshRenderer meshRenderer;
    public Mesh _mesh;


    void initKit()
    {

        Material duplicateMaterial = new Material (material.shader);
        duplicateMaterial.CopyPropertiesFromMaterial(material);
        material = duplicateMaterial;

        GameObject loadImageToolkit = new GameObject("duplicate_toolkit");
        loadImageToolkit.transform.parent = GameObject.Find("UI").transform;
        loadImageToolkit.layer = LayerMask.NameToLayer("UILayer");


        duplicate_kit = loadImageToolkit.AddComponent<UIToolkit>() ;
        duplicate_kit.texturePackerConfigName = "friendsImageSheet";
        duplicate_kit.material = duplicateMaterial;

        meshRenderer = loadImageToolkit.AddComponent<MeshRenderer>();
        meshRenderer.renderer.material = duplicateMaterial;

        meshFilter = loadImageToolkit.AddComponent<MeshFilter>();
        _mesh = meshFilter.mesh;


    }

    void Start()
    {
         initKit();

//       b1 = UIButton.create( duplicate_kit, "FriendsAvatar.png","FriendsAvatar.png",0,0); 
//       b1.pixelsFromTopLeft ( 60, 0 );
//       StartCoroutine(getImage(b1));


         b2 = UIButton.create( duplicate_kit, "FriendsAvatar.png", "FriendsAvatar.png" , 0,0 );
         b2.pixelsFromTopLeft( 120, 0 );
         StartCoroutine(getImage(b2));


         b1 = UIButton.create( (UIToolkit)GameObject.Find("duplicate_toolkit").GetComponent(typeof(UIToolkit)), "FriendsAvatar.png","FriendsAvatar.png",0,0);   
         b1.pixelsFromTopLeft ( 120, 0 );
         StartCoroutine(getImage(b1));

    }

    IEnumerator getImage(UIButton uib)
    {      
        WWW imageRequest = new WWW("https://graph.facebook.com/xxxxxxxxx/picture?type=small"); 
        yield return imageRequest;
        Texture tex = imageRequest.texture;

        uib.manager.renderer.material.mainTextureScale = new Vector2(18.0f,20.05f);
        uib.manager.renderer.material.mainTexture = tex;
    }

}

主な目標は、b2ボタンをduplicate_toolkit(ゲームオブジェクト)の下に表示することです。

そのような:

duplicate_toolkit

UIButton

ここに画像の説明を入力してください

4

1 に答える 1

0

私はUITookitを使用していませんが、通常、UnityでTransformコンポーネントを接続してこれを実行します。

b2.transform.parent = duplicate_toolkit.transform;
于 2012-10-18T07:45:49.230 に答える