unity运行时保存预制物

预制物体在运行是给子级添加物体后进行保存,下次运行添加的物体依然存在

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

public class savePrefab : MonoBehaviour
{
    

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.A))
        {
            Go();
        }
    }

    void Go()
    {
        string localPath = "Assets/Resources/prefab/" + this.gameObject.name + ".prefab";
         PrefabUtility.SaveAsPrefabAsset(this.gameObject, localPath);
    }
    

}

将脚本挂在预制物体上,路径自己选择。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Unity中,你可以通过以下步骤实现每次运行时随机出现多个预制体: 1. 首先,创建多个预制体对象。你可以在Unity编辑器中创建多个游戏对象,然后将它们保存预制体。确保这些预制体对象具有不同的位置、旋转或其他属性。 2. 在场景中创建一个空的游戏对象,作为容器来存放随机生成的预制体。 3. 在脚本中,使用Random类来生成一个随机数,用于选择要实例化的预制体。你可以使用Random.Range()方法来生成一个范围内的随机整数。 4. 在脚本的Start()或Awake()方法中,使用Instantiate()方法来实例化随机选择的预制体。将其添加到之前创建的容器游戏对象中。 以下是一个示例代码: ```c# public class RandomPrefabSpawner : MonoBehaviour { public GameObject[] prefabs; // 存放多个预制体 public int minIndex = 0; // 随机数的最小值 public int maxIndex = 0; // 随机数的最大值 void Start() { // 随机生成一个整数,用于选择预制体 int randomIndex = Random.Range(minIndex, maxIndex + 1); // 实例化随机选择的预制体,并将其添加到容器游戏对象中 Instantiate(prefabs[randomIndex], transform.position, transform.rotation, transform); } } ``` 将上述脚本附加到一个空的游戏对象上,然后在Inspector面板中设置预制体数组和随机数范围。每次运行游戏时,将会随机选择一个预制体进行实例化,并放置在容器游戏对象下。 注意:确保将要实例化的预制体对象添加到prefabs数组中,并设置合适的随机数范围。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值