public interface IEffectSourceProviderRaven a module compiles out of a project's assets, for the editor's own effect compilation.
Remarks
#1300's seam. The editor compiles the shader library together with every Raven source a project contributes, so a material naming a shader graph resolves. It used to fetch the graphs by calling ShaderGraphSources.All, which put the shader graph's compiler in the application's reference closure through the import pipeline. A module that turns an asset format into Raven publishes one of these with Publish``1, and the editor asks it on every effect rebuild — so an unloaded module stops contributing.
⚠ One per editor, because PluginServices holds one service per type. The shader graph is the only format that compiles to Raven today; a second would need this to become a registry contribution.
Methods (1)
void Collect(string assets, ICollection<(string Path, string Text)> sources, ICollection<string> refusals)Adds the sources a project's assets compile to, and what those that would not had to say.
Used by (4)
- AssetEditorsModuleVixen.Editor.AssetEditors
- EditorApplicationVixen.Editor.App
- EditorEffectsVixen.Editor.App
- ShaderGraphEffectSourcesVixen.Editor.AssetEditors