我是Unity新手,我可以用一只手。我想做的事是:Unity 3d - 通过点击更改纹理
在我的“渲染”我将有:
例如,3D金字塔,每个面拥有差异材料/ ID。 而我有6个纹理,6个按钮。
我想要做的是, 通过点击其中一个按钮来选择一个纹理,并将实际金字塔纹理交换/绘制到按钮纹理。我想这样做,我想要多少次。就像一本让孩子们画画的彩色书。但他们首先选择颜色,然后选择颜色。
如果我不够清楚,请提问。 感谢您的支持!
我是Unity新手,我可以用一只手。我想做的事是:Unity 3d - 通过点击更改纹理
在我的“渲染”我将有:
例如,3D金字塔,每个面拥有差异材料/ ID。 而我有6个纹理,6个按钮。
我想要做的是, 通过点击其中一个按钮来选择一个纹理,并将实际金字塔纹理交换/绘制到按钮纹理。我想这样做,我想要多少次。就像一本让孩子们画画的彩色书。但他们首先选择颜色,然后选择颜色。
如果我不够清楚,请提问。 感谢您的支持!
首先,你必须存储材料的阵列 -
public Material[] materials
然后,在任何按钮保存其指数从材料阵列访问材料的点击。例如,buttonIndex = 2
。
现在可以使用其上所选择的材料需要施加金字塔工作面MeshRenderer部件 -
GameObject pyramidFace1;
...
pyramidFace1.GetComponent<MeshRenderer>().material = materials[buttonIndex];
...
首先,感谢您的帮助。但是另一个问题来了。我仍然不知道“点击”部分是如何工作的。正如我所说,即时新的统一。 @Mukesh Saini –
是有一些代码可以共享,提供了一个[最小的,完整verifable示例](HTTPS:/ /stackoverflow.com/help/mcve)? – spacepickle
不,没有。我只能通过点击一个按钮来进行纹理交换。 但这不是我想要的。 @spacepickle –
我想我看到了 - 你在问如何构建用户界面以选择金字塔的一个面? – spacepickle