Shader: Many fixes

This commit is contained in:
Jérôme Leclercq
2022-03-04 18:23:01 +01:00
parent 1919bd3302
commit a2f4f3c802
13 changed files with 161 additions and 84 deletions

View File

@@ -333,7 +333,7 @@ namespace Nz::ShaderAst
{
m_stream << s_magicNumber << s_currentVersion;
m_stream << module.shaderLangVersion;
m_stream << module.metadata->shaderLangVersion;
Serialize(*module.rootNode);
m_stream.FlushBits();
@@ -531,7 +531,10 @@ namespace Nz::ShaderAst
ModulePtr module = std::make_shared<Module>();
m_stream >> module->shaderLangVersion;
std::shared_ptr<Module::Metadata> metadata = std::make_shared<Module::Metadata>();
m_stream >> metadata->shaderLangVersion;
module->metadata = std::move(metadata);
module->rootNode = ShaderBuilder::MultiStatement();
ShaderSerializerVisitor visitor(*this);

View File

@@ -115,7 +115,7 @@ namespace Nz::ShaderAst
ModulePtr SanitizeVisitor::Sanitize(const Module& module, const Options& options, std::string* error)
{
ModulePtr clone = std::make_shared<Module>();
clone->shaderLangVersion = module.shaderLangVersion;
clone->metadata = module.metadata;
Context currentContext;
currentContext.options = options;