如何在运行时更改预制实例的颜色?

Cal*_*vin -1 c# unity-game-engine augmented-reality vuforia

我在运行时更改预制对象的颜色有问题。

问题在于,预制件由GameObject组成,并且在其内部是立方体。因此,当您从运行时实例化该对象时,不允许您更改颜色。如何识别创建的对象并更改其颜色或其他属性?

这里是错误的图片:

失误

这是我的项目存储库(分支开发):https : //github.com/emicalvacho/MapaMentalAR

der*_*ugo 6

因此,当您从运行时实例化对象时,不允许您更改颜色

是的..只需在实例化时存储引用即可。从控制台中的异常中,您可以看到您(偶然?)正在尝试更改预制件本身的颜色-而不是刚刚创建的实例。

var instance = Instantiate(prefab, position, rotation);
var objRenderer = instance.GetComponentInChildren<Renderer>(true);
objRenderer.material.color = Color.blue;
Run Code Online (Sandbox Code Playgroud)

似乎在您的脚本中,您引用的是预制件,而不是实例化的对象。