标签: gameobject

在Unity3d中动态添加gameobject到场景

我正在创建一个场景,我想在其中显示优惠列表.为了展示报价,我创建了一个带有占位符的预制件,用于我将在运行时获得的报价详细信息.我在场景中创建了一个占位符,将预制件添加到场景中,但它没有在UI上显示.OfferHolderClass:

using UnityEngine;
using System.Collections;

public class OfferHolder : MonoBehaviour {

    public GameObject localOffer;
    // Use this for initialization
    void Start () {
        GameObject offer = Instantiate(localOffer) as GameObject;
        offer.GetComponent<Offer>().Text = "Testing";
        offer.transform.parent = this.transform;
    }

    // Update is called once per frame
    void Update () {

    }
}
Run Code Online (Sandbox Code Playgroud)

我是Unity的新手,我不确定我在这里缺少什么.

c# unity-game-engine ngui gameobject

19
推荐指数
2
解决办法
6万
查看次数

我怎样才能找到儿童游戏对象?

我想说些像......

Gameobject.find(child gameobject of specific parent Gameobject)
Run Code Online (Sandbox Code Playgroud)

谁能帮我.谢谢!

unity-game-engine gameobject

13
推荐指数
4
解决办法
6万
查看次数

GameObject.FindObjectOfType <>()vs GetComponent <>()

我一直在关注几个教程系列,并且已经看到这两个系列以非常相似的方式使用,并且希望有人可以解释它们之间的区别,如果可能的话,还可以举例说明何时使用一个而不是另一个(假设它们实际上是相似的) !).

private LevelManager levelManager;

void Start () {
    levelManager = GameObject.FindObjectOfType<LevelManager>();
}
Run Code Online (Sandbox Code Playgroud)

private LevelManager levelManager;

void Start () {
    levelManager = GetComponent<LevelManager>();
}
Run Code Online (Sandbox Code Playgroud)

c# unity-game-engine gameobject

10
推荐指数
2
解决办法
2万
查看次数

Unity将孩子添加到孩子身上,但最重要的是

我正在尝试将子对象添加到子集合中,但我想确保最新的将是第一个.

这是我想要做的:

GameObject
- (My new object here)
- GameObject
- GameObject
- GameObject
Run Code Online (Sandbox Code Playgroud)

这是我用来实例化我的预制件的代码:

GameObject messageObj = Instantiate(storyPrefab) as GameObject;
messageObj.name = "Story";
messageObj.transform.parent = wallGrid.transform;
messageObj.transform.localScale = new Vector3(1,1,1);
Run Code Online (Sandbox Code Playgroud)

希望这是有道理的.

任何帮助是apreciated和提前感谢:-)

c# parent-child unity-game-engine gameobject

10
推荐指数
2
解决办法
8840
查看次数

克隆/复制现有的 GameObject 及其子项

Unity 中是否有 C# 方式来复制现有的 GameObject 及其所有子项?就我而言,我有一个空的 GameObject,其中有许多 Text 对象作为子对象,我想为它们创建一个副本,包括相对位置、文本值、字体、颜色等......

预制件不会轻易工作,因为我想复制对象,包括其当前状态。

c# copy unity-game-engine gameobject unity5

9
推荐指数
1
解决办法
2万
查看次数

将着色器添加到游戏对象

如何为游戏对象添加着色器?a在此处定义着色器:

(我正在尝试做同样的事情并遇到一些问题):http://answers.unity3d.com/questions/175692/getpixelsetpixels-or-stencil-eraser-brush.html

和2个texture2D在代码中定义并通过Resource.Load加载,分配给游戏对象.如何将着色器应用于我的游戏对象并与两个纹理进行通信?

如您所见,我在着色器中有此代码

        _MainTex("Main Texture (rgb)", 2D) = "white" {}
        _Color ("Main Color", Color) = (1,1,1,1)
       _Stencil("Stencil Texture (a)", 2D) = "white" {}
Run Code Online (Sandbox Code Playgroud)

我怎么能告诉着色器谁是主要纹理和模板纹理?

unity-game-engine gameobject

8
推荐指数
1
解决办法
2万
查看次数

使用GetComponent使用字符串获取脚本

使用以下代码,我可以从"SMG"获取脚本并将其应用于weaponObject:

weaponObject = GameObject.FindGameObjectWithTag(SMG).GetComponent<SMGScript>();
Run Code Online (Sandbox Code Playgroud)

有可能采取类似下面的行动,如果是这样,怎么样?

string variable = "SMG";

weaponObject = GameObject.FindGameObjectWithTag(variable).GetComponent<variable>();
Run Code Online (Sandbox Code Playgroud)

我希望有一些脚本可以应用于依赖于变量的weaponObject.

c# unity-game-engine gameobject

5
推荐指数
1
解决办法
6715
查看次数

在场景之间共享游戏对象

假设我有一个游戏对象“玩家”和两个场景 A 和 B。如果我在两个场景上添加这个游戏对象“玩家”,然后进行一些更改(例如在场景 A 中添加脚本),我可以以某种方式实现游戏对象“ A 和 B 中的 Player' 保持不变?或者我是否必须手动更新两个场景中的游戏对象?

我找不到方便的方法来实现这一目标。

unity-game-engine gameobject

5
推荐指数
1
解决办法
3056
查看次数

实例化GameObject会导致所述对象的Transform被破坏?

Unity和C#的新手

这实际上只是一个我很好奇的小问题......我在调试这个代码的过程中遇到了这个问题(尝试使其失效).我一直试图让这段代码工作几个小时.

无论如何,当执行此代码时,只有一个错误,但它出现3次.它说"不能破坏'Pillar1'的变换组件.如果你想破坏游戏对象,请在游戏对象上调用'Destroy'.不允许销毁变换组件."

我第一次得到那个.

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

public class PlatformGenerator : MonoBehaviour {

public GameObject Single;
private GameObject NewPillar;

private int PillarCount;
private bool run;

private int px;
private int py;
private int pz;

void Start () {

    px = 0;
    py = 0;
    pz = 0;

    bool run = true;
    PlatformCreate ();
}

void Update () {
    if (run) {
        PlatformCreate ();
        if (PillarCount == 3) {
            run = false;
        }
    }
}

void PlatformCreate () …
Run Code Online (Sandbox Code Playgroud)

c# instantiation unity-game-engine gameobject

5
推荐指数
1
解决办法
443
查看次数

为什么 Unity 在某些函数(例如 GetChild())中使用 Transform 而不是 GameObject?

Unity 使用transform.GetChild(childNum)gameObject.GetChild(childNum).

我知道 Unity 中的每个 GameObject 都有一个 Transform 组件,并且该函数返回子项的 Transform,但是使用 GameObject 类获取子项不是更合逻辑吗,因为它引用场景或项目中的实际 GameObject而不仅仅是一个组件?为什么使用 Transform 来查找分层信息?

c# transform parent-child unity-game-engine gameobject

5
推荐指数
1
解决办法
1208
查看次数