From 43e23fea4779e731e86c871f3fa8f42129f16e5f Mon Sep 17 00:00:00 2001 From: Lynix Date: Wed, 4 Jan 2017 14:00:58 +0100 Subject: [PATCH] Renderer/GlslWriter: Add comment sections --- include/Nazara/Renderer/GlslWriter.hpp | 1 + src/Nazara/Renderer/GlslWriter.cpp | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/include/Nazara/Renderer/GlslWriter.hpp b/include/Nazara/Renderer/GlslWriter.hpp index 59bfd11e5..0258d0c57 100644 --- a/include/Nazara/Renderer/GlslWriter.hpp +++ b/include/Nazara/Renderer/GlslWriter.hpp @@ -46,6 +46,7 @@ namespace Nz void Append(ShaderAst::ExpressionType type); void Append(const String& txt); + void AppendCommentSection(const String& section); void AppendFunction(Function& func); void AppendLine(const Nz::String& txt = Nz::String()); diff --git a/src/Nazara/Renderer/GlslWriter.cpp b/src/Nazara/Renderer/GlslWriter.cpp index 69e76422a..94349fec0 100644 --- a/src/Nazara/Renderer/GlslWriter.cpp +++ b/src/Nazara/Renderer/GlslWriter.cpp @@ -34,6 +34,9 @@ namespace Nz // Uniforms if (!state.m_uniforms.empty()) { + AppendCommentSection("Uniforms"); + AppendLine(); + for (const auto& pair : state.m_uniforms) { Append("uniform "); @@ -258,6 +261,15 @@ namespace Nz m_currentState->stream << txt; } + void GlslWriter::AppendCommentSection(const String& section) + { + NazaraAssert(m_currentState, "This function should only be called while processing an AST"); + + String stars((section.GetSize() < 33) ? (36 - section.GetSize()) / 2 : 3, '*'); + m_currentState->stream << "/*" << stars << ' ' << section << ' ' << stars << "*/"; + AppendLine(); + } + void GlslWriter::AppendFunction(Function& func) { NazaraAssert(!m_currentFunction, "A function is already being processed");