Files
Obsidian_Unity/项目学习/王国之梦制作/2.创建房间的Prefab.md
T
2026-05-03 14:06:26 +08:00

1.3 KiB
Raw Blame History

疑问点

  • 为什么RoomPrefab需要创建一个子物体sprite,在sprite上创建sprite Renderer,而不是直接在roomprefab上创建sprite Renderer
  • 为什么调整图片大小,不调整父物体的scale,而是调整sprite的scale
  • 为什么碰撞体要添加在父物体身上?
  • 获取组件在哪个生命周期函数中获得?这些生命周期函数有什么不同?
  • 为什么在assets中创建了一个脚本Enums,里面专门写各种各样的枚举类型,别的脚本可以直接使用这些枚举类型
  • 我们的枚举类型声明时候没有特定指出生命在了哪个命名空间当中
  • 这是我们第一次使用SO文件作为参数配置,他的头文件每个参数代表的含义是什么?

过程

本质上是创建房间的prefab,以便于随机地图生成时直接实例化预制体,所以我们要创建一个房间的prefab,它上面需要挂载一个Room的脚本,里面包含了他自己的坐标位置X,Y,他的房间类型,他的房间状态。 我们的房间状态,房间类型都是枚举类型,所以我们要写两个枚举类型。 房间的类型,他需要有他自己的icon,有自己的类型,以及自己需要加载的场景,这是每一个房间都会有的,所以我们写为SO文件,以便于性能上的优化。