Unity 3D-动态“切片”背景图像

时间:2019-05-10 09:51:01

标签: image unity3d background slice mask

我是Unity的新手,不太确定如何处理此问题。

我有两张图像,一张上有云(白天),一张上有星星(夜晚)。我想做的是在场景的顶部显示云,在底部显示星星。屏幕中间有一个地面对象,玩家将在上面行走,这应该是两个图像之间的分界线。但是,地面不是一条直线,而是可以有高度差的。

我想出的“解决方案”是使用地面对象对图像进行切片,以便将其用作分隔线。但是不确定这是否可能。也许我可以用2台不同的相机做某事,或者以某种方式掩盖图像。(也请在这里提出自己的想法)我将在这两者之间摸索,并尝试使主题与我的主题保持最新。尝试过的。

我希望(使它)更加清晰。

问候, 鲁基

附件:https://imgur.com/a/lblJXPi

1 个答案:

答案 0 :(得分:0)

我想到的第一个解决方案是准备一个图块。如果您不想每次都设计不同的部分。因此,如果您不打算进行计算机设计。您可以自己调整大小。

您还可以动态生成地面对象的-y轴的恒星和+ y轴的云。您可以使用实例化功能

示例:

public GameObject clouds;
public GameObject stars;
// Start is called before the first frame update
private void Awake()
{
    Instantiate(clouds, new Vector3(this.transform.position.x, this.transform.position.y + 3.625f, this.transform.position.z), Quaternion.identity);
    Instantiate(stars, new Vector3(this.transform.position.x, this.transform.position.y  - 3.625f, this.transform.position.z), Quaternion.identity);
}

当然,您将在此处使用的背景设计必须是可持续的。

Dynamic Background