教你如何在Unity2D中实现生成游戏对象
📝 前言
在Unity游戏开发中,动态生成游戏对象是非常常见的需求。比如生成子弹、敌人或者道具等。今天我们就用最简单的代码,实现在指定位置创建一个预制体。
🎯 最终效果
在游戏开始时,自动在坐标 (-3, 0) 的位置生成一个指定的游戏对象。
📦 准备工作
-
创建一个2D项目
-
准备一个预制体(可以是任何2D精灵)

-
建脚本文件
💻 代码实现
第一步:创建脚本
新建一个C#脚本,命名为 Spawner,输入以下代码:
cs
using UnityEngine;
public class Spawner : MonoBehaviour
{
// 公共变量,可以在Unity编辑器中赋值
public GameObject prefab;
void Start()
{
// 在指定位置创建预制体实例
Instantiate(prefab, new Vector3(-3f, 0f, 0f), Quaternion.identity);
}
}
代码解析:
-
public GameObject prefab- 用来存放我们要生成的预制体 -
Start()- 游戏开始时自动执行 -
Instantiate()- Unity的实例化方法,用来复制对象 -
new Vector3(-3f, 0f, 0f)- 设置生成位置为X=-3, Y=0 -
Quaternion.identity- 表示无旋转(默认角度)
第二步:设置场景
-
在Hierarchy窗口中创建一个空物体,命名为 "SpawnManager"
-
将
Spawner脚本拖拽到空物体上 -
在Inspector面板中,将你的预制体拖拽到 "Prefab" 字段

🎮 运行测试
点击运行按钮,你会看到预制体出现在X=-3的位置!
