我想在 Unity 中使用具有不同道路或平台颜色的重复场景,并在场景 1 中使用相同的预制件,但是当我从重复场景颜色更改材质颜色时,在以前的场景中也发生了变化,我也为此制作了重复的预制件,但对我没有任何用?
制作具有不同场景的锯齿形游戏
要在 Unity 中复制场景,请遵循此方法
单击"项目"面板中的场景名称
单击顶部菜单栏中的编辑菜单
选择复制
然后你必须这样做..
单击一次您刚刚在项目面板中创建的"新建"场景项。(它 应该是亮蓝色)你必须重命名它。要重命名,只需单击 在键盘上"返回",看看会发生什么。
就是这样!
不要忘记你必须绘制新场景(和所有场景) 到您的构建 -- 选择文件 -> 构建设置
或
- 打开场景
- 在层次结构中,右键单击场景顶部,然后单击"将场景另存为"并使用所需的名称保存。这将立即在 Unity 中打开这一场景。
现在你有一个重复的场景,两者都使用相同的材质。如果更改材质的属性,则两个场景中都会发生修改。
最简单的方法是复制材质,这样你就有两个材质,每个场景一个。转到新场景中使用旧材质的位置,然后更改为新材质。然后修改新材质。
有关完整的项目,请参阅下面的链接
我不知道是否有更合法的方式。
但这是我通常所做的:
- 创建新场景
- 省省吧
- 转到旧场景
- 选择所有对象 (CTRL+A)
- 复制所有对象 (Ctrl+C)
- 转到新创建的场景
- 粘贴所有内容 (CTRL+V)
瞧。
它将复制所有内容,带有转换,脚本中的值,所有内容
根据derHugo的意见,我打开 Unity 并尝试复制整个场景,但下拉菜单或任何地方都没有复制项,然后我尝试 CTRL+C 和 CTRL+V,这也不起作用。
但是我找到了另一种方法,我单击了在资源管理器中显示并在文件管理器中复制粘贴场景,它奏效了。
如果要在不同的场景中使用不同的颜色,请创建不同的材质。现在创建一个脚本Util
,在此处列出所有这些脚本(如果是静态的更好)。现在创建另一个脚本Assigner
。现在使用SceneManagement.Scene.name
获取场景名称,然后从该列表中分配颜色/材质OnAwake
。如果该列表不是静态的,则必须创建一个instance
。
完整的项目在这里