首页/ 第 17 章 · 发布与进阶修炼/ 第 292 课
LESSON 292 · 发布与进阶修炼

进阶修炼:数据驱动开发

数据驱动完成。下一课学算法与数学基础。

⏱ 约 15 分钟📊 难度:入门🗂 第 17 章 · 发布与进阶修炼📍 第 292 / 300 课
课程进度
292 / 300

🎯本节学习目标

  • 理解数据驱动
  • 掌握 ScriptableObject
  • 掌握外部数据

🚀课程导读

“改数值不用改代码”——数据驱动是团队协作关键。本课掌握配置化开发。

数据驱动思想

“代码和数据分开”。

  1. 【思想】把“数值/配置”从代码里拿出来,放数据文件,改数据不改代码。
  2. 【好处】策划能自己调数值、发布后热修、代码更干净。
  3. 【数据形态】
  4. Inspector 字段(小配置)。
  5. ScriptableObject(对象配置)。
  6. JSON/Excel(批量数据)。
  7. 【原则】“会变的”都该数据化:数值、掉落表、关卡配置。
  8. 【示例】技能 CD 别写死在代码,放数据。
  9. 【完成】“思想”通了。
  10. 【注意】别过度:一次性的数据不必数据化。
💡
数据驱动 = “会变的进数据”。代码管“怎么用”,数据管“用多少”。

ScriptableObject 实战

Unity 专属“数据资产”。

  1. 【创建】定义数据类:
  2. [CreateAssetMenu(fileName = "Item", menuName = "Game/Item")]
  3. public class ItemData : ScriptableObject {
  4. public string itemName;
  5. public Sprite icon;
  6. public int price;
  7. public string description;
  8. }
  9. 【生成资产】Project 右键 → Create → Game → Item,生成 .asset 资产,Inspector 填数据。
  10. 【使用】脚本里引用 ItemData:
  11. public ItemData item;
  12. Debug.Log(item.itemName + " 价格 " + item.price);
  13. 【多实例】一份数据类生成多份资产(不同道具各自配置)。
  14. 【优势】可视化编辑、可复用、改数据不用改代码。
  15. 【应用】道具、敌人、技能、关卡(第 165/249 课)。
  16. 【JSON】批量数据用 JSON 文件读取(第 246 课)。
  17. 【表格】策划用 Excel → 转 JSON/CSV 导入(进阶)。
  18. 【完成】“数据资产”用了!
  19. 【推荐】所有“内容”类都用 ScriptableObject。
ScriptableObject = 可视化数据资产:Create 生成、Inspector 编辑、代码引用。内容神器。

常见错误与排查

错误:ScriptableObject 数据改了没生效?
原因:资产没保存或引用错了
解决:确认修改后 Ctrl+S 保存;脚本引用的是对的资产实例。

动手练习

课后小任务(做出来才算真的学会)

  • 用 ScriptableObject 定义道具数据
  • 生成多个道具资产
  • 用数据驱动做背包

本节小结

数据驱动完成。下一课学算法与数学基础。

完成打卡后,主站会实时更新你的学习进度 🎯

← 上一课进阶修炼:设计模式入门