编辑器热更新方案

主要是脚本和shader,脚本热更在 Python 脚本系统一节已讲述。

shader 热更新考虑几种方案选择:

  1. 编辑器中选中一个shader点击热更按钮(例如右键->reload) 可以每个shader保存一份路径,给一个reload的方法: https://github.com/dtrajko/MoravaEngine/blob/master/MoravaEngine/src/H2M/Renderer/ShaderH2M.h

  2. 直接编辑器下按f5热更,把需要热更的文件注册进去,这样适用于一般的文件,检测文件是否修改。或者编辑器单独给一个热更的按钮。参考: https://github.com/mateeeeeee/Adria-DX12/blob/master/Adria/Utilities/FileWatcher.h

  3. 开一个线程,同2需要把文件注册进去,然后每次文件保存的时候自动更新

Last updated